[内网]文化云交易前端H5
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

216 lines
7.4 KiB

$(document).ready(function () {
if (cookieHandler.get("normal_login_token")) {
$(location).prop('href', './Home.html?url=' + new Date().getTime())
}
$("#login_box2").hide();
$("#getPasswod1>span").click(() => {
$("#login_box1").hide();
$("#login_box2").show();
})
$("#getPasswod>span").click(() => {
$("#login_box1").show();
$("#login_box2").hide();
})
codeCountDown = function (endMsRes, data, name) {
let countDownTime = 60
data.attr("disabled", "disabled")
countDownTime = Math.ceil((endMsRes - new Date().getTime()) / 1000); //剩余多少秒
let time = setTimeout(function () {
countDownTime--;
data.text(countDownTime + "秒")
if (countDownTime < 1) {
countDownTime = 60;
data.removeAttr("disabled")
data.text("获取验证码")
localStorage.removeItem(name);
clearTimeout(time);
} else {
codeCountDown(endMsRes, data, name);
}
}, 1000);
}
let myEndTime = localStorage.getItem("Time");
myEndTime && codeCountDown(myEndTime, $("#authbtns"), "Time");
$(".tips").hide();
let verification = function (selector, text1, text2, reg, text3) {
$(selector).bind('change', function (data) {
let domObj = $("#" + data.target.id)
if (domObj.val() === "") {
domObj.css("border", "1px solid #f56c6c")
$("." + data.target.id).text(text1)
$("." + data.target.id).slideDown(100)
state = false
} else {
if (!reg.test(domObj.val())) {
domObj.css("border", "1px solid #f56c6c")
$("." + data.target.id).text(text2)
$("." + data.target.id).slideDown(100)
state = false
} else {
if (text3 && $("#pwd2").val() !== domObj.val()) {
domObj.css("border", "1px solid #f56c6c")
$("." + data.target.id).text(text3)
$("." + data.target.id).slideDown(100)
state = false
} else {
domObj.css("border", "1px solid #d7d7d7")
$("." + data.target.id).text("")
$("." + data.target.id).slideUp(100)
state = true
}
}
}
});
};
verification("input[name='phone']", "手机号不能为空", "手机号格式不对", /^1[3456789]\d{9}$/);
verification("input[name='authcode']", "验证码不能为空", "验证码格式不对", /^[0-9]{6}$/);
verification("input[name='newpwd']", "密码不能为空", "密码不能少于六位字母或数字", /^[0-9A-z\W]{6,}$/);
verification("input[name='newpwd1']", "密码不能为空", "密码不能少于六位字母或数字", /^[0-9A-z\W]{6,}$/, "两次输入的密码不一致");
// 认证类型过滤
function userType_filter(data) {
if (data == "个人") {
return "0"
} else if (data == "企业") {
return "1"
} else if (data == "服务商") {
return "2"
} else {
return data
}
}
// 登录
$("#loginbtn1").bind("click", function () {
$("#phone1").change()
let state1 = state
$("#pwd1").change()
let state2 = state
if (state1 && state2) {
let data = {
loginName: $("#phone1").val(),
loginType: '1',
password: $.md5($("#pwd1").val()).toUpperCase(),
userType: "企业",
}
let postList = new AJAX_OBJ(api + "user/v1/userLogin", postSuccess, onUrlError);
postList.postRequestData(JSON.stringify(data));
function postSuccess(xmlHttp) {
let res = eval('(' + xmlHttp.responseText + ')');
if (res.resultCode === "00000000") {
// 解析token
let userObj = JSON.parse(decodeURIComponent(escape(window.atob(res.data.token
.split(".")[1].replace(/-/g, "+").replace(/_/g, "/")))));
cookieHandler.set("isliCode", userObj.isliCode);
cookieHandler.set("normal_login_token", res.data.token)
cookieHandler.set("accountId", res.data.user.accountId)
cookieHandler.set("cellPhone", res.data.user.cellPhone)
cookieHandler.set("userType", userType_filter(res.data.user.userType))
cookieHandler.set("Merchant_id", "910000198") //商户id
$(location).prop('href', './Home.html?time=' + new Date().getTime())
} else {
Dreamer.error(res.resultMsg);
}
};
}
});
// 找回密码获取验证码
$("#authbtns").bind("click", function () {
$("#phone").change()
if (state) {
let getList = new AJAX_OBJ(api + "userself/v1/account/username/unique-validate/" + $("#phone").val(), getSuccess, onUrlError);
getList.getRequestData();
function getSuccess(xmlHttp) {
let res = eval('(' + xmlHttp.responseText + ')');
if (res.resultCode === "00000000") {
if (res.data != 1) {
$("#phone").css("border", "1px solid #f56c6c")
$(".phone").text("手机号没有被注册")
$(".phone").slideDown(100)
} else {
$("#phone").css("border", "1px solid #d7d7d7")
$(".phone").text("")
$(".phone").slideUp(100)
let getList = new AJAX_OBJ(api + "userself/v1/verify-code?username=" + $("#phone").val() + "&purpose=2", getSuccess1, onUrlError);
getList.getRequestData();
function getSuccess1(xmlHttp) {
let res = eval('(' + xmlHttp.responseText + ')');
if (res.resultCode === "00000000") {
Dreamer.success("发送成功");
let endMsRes = new Date().getTime() +
60000; //当前时间戳加上一分钟的时间戳,相当于当前时间一分钟以后的时间戳
localStorage.setItem("Time", JSON.stringify(endMsRes));
codeCountDown(endMsRes, $("#authbtns"), "Time");
} else {
Dreamer.error(res.resultMsg);
}
}
}
}
}
}
});
// 函数节流
function debounce(fn, change) {
var timerId = null
return function () {
change()
var arg = arguments[0] //获取事件
if (timerId) {
return
}
timerId = setTimeout(function () {
fn(arg) //事件传入函数
timerId = null
}, 1000)
}
}
function change() {
$("#phone").change()
$("#authcode").change()
$("#pwd2").change()
$("#pwd3").change()
}
function reset() {
$("#phone").change()
let state1 = state
$("#authcode").change()
let state2 = state
$("#pwd2").change()
let state3 = state
$("#pwd3").change()
let state4 = state
if (state1 && state2 && state3 && state4) {
let data = {
accountId: $("#phone").val(),
verifyCode: $("#authcode").val(),
password: $.md5($("#pwd2").val()).toUpperCase(),
passMd5ed: true,
st: "2",
}
let postList = new AJAX_OBJ(api + "userself/v1/account/reset-pwd", successGood, onUrlError);
postList.postRequestData(JSON.stringify(data));
function successGood(xmlHttp) {
let res = eval('(' + xmlHttp.responseText + ')');
if (res.resultCode === "00000000") {
Dreamer.success("重置成功");
codeCountDown(0, $("#authbtns"), "Time");
$("#phone").val('')
$("#authcode").val('')
$("#pwd2").val('')
$("#pwd3").val('')
$("#login_box1").show();
$("#login_box2").hide();
} else {
Dreamer.error(res.resultMsg);
}
};
}
};
// 找回密码
$("#loginbtn").click(debounce(reset, change));
})