/** * Created by raymondjack on 2018/12/21. */ // var pubInfo = {}; var $toast = $('.toast'); var $mask = $('.status-mask'); var lockBol = false; let urlPrefix = getUrlPrefix() var goToPage = null; // 封装layer消息提醒框 let layerIndex const showLoading = (content = '获取结果中...') => { layer.open({ type: 2, shadeClose: false, content, success (e) { layerIndex = $(e).attr('index') } }) } const hideLoading = (index) => { layer.close(index) } const toastMsg = (content = '操作完成', time = 2) => { layer.open({ content, time, skin: 'msg' }) } $(function () { getInfoFromClient() var browser = checkVersion(); var api = getUrlPrefix(); var timer = null; var env = EnvCheck(); var urlObj = getQueryString(); console.log(urlObj.uid); if (urlObj.uid) { sessionStorage.setItem("uid", urlObj.uid); sessionStorage.setItem("ticket", urlObj.ticket); } if (env == 'test') { var vConsole = new VConsole(); } getInfoFromClient && getInfoFromClient() if (browser.app) { if (browser.android) { let channel = JSON.parse(pubInfo.deviceInfo).channel if (channel.indexOf('toutiao') != -1 || channel.indexOf('kuaishou') != -1) { $('.appName').html('piko') } } } var main = { init: function () { this.getDeviceMsg(); this.eventRegister(); var that = this; setTimeout(function () { that.getData(); }, 1000) }, getDeviceMsg: function () { // if (browser.app) { // if (browser.android) { // pubInfo.uid = parseInt(window.androidJsObj.getUid()); // pubInfo.deviceId = window.androidJsObj.getDeviceId(); // pubInfo.ticket = window.androidJsObj.getTicket(); // } else { // pubInfo.uid = tools.cookieUtils.get("uid"); // if (!pubInfo.uid) { // window.webkit.messageHandlers.getUid.postMessage(null); // } // window.webkit.messageHandlers.getDeviceId.postMessage(null); // window.webkit.messageHandlers.getTicket.postMessage(null); // } // } else { // pubInfo.uid = 922473; // pubInfo.deviceId = "204aa0c983384f1e84a3625b4f04bac1"; // } // setTimeout(function () { // $('.deviceId').val(pubInfo.deviceId); // },200) }, getData: function () { console.log(urlObj, 'urlObj') if (urlObj) { pubInfo.auth = urlObj.auth } else { pubInfo.auth = '' } console.log(pubInfo.auth, 'pubInfo.auth') networkRequest({ type: 'get', url: urlPrefix + '/certification/hasCertify', data: { uid: pubInfo.uid, auth: pubInfo.auth, ticket: pubInfo.ticket, }, success: function (res) { if (res.code == 200) { var checkBol = res.data; var $mask = $('.status-mask'); var bool = !(checkBol.authResult == null || checkBol.authResult == undefined); function successFun () { hideLoading(layerIndex) goToPage = true; $mask.addClass("have-identity"); $mask.find(".text").html("您已通过实名认证"); $mask.find(".tips").html("系统已成功审核您的实名认证"); $mask.find(".goto-change").removeClass('hide'); $mask.show(); } if (bool) { if (checkBol.authResult == false && checkBol.canCertify == true && checkBol.hasCertify == false) { //重复调用 showLoading(); main.getData(); }else if (checkBol.authResult == false && checkBol.canCertify == false && checkBol.hasCertify == true) { //成功 successFun() } else if (checkBol.authResult == true && checkBol.canCertify == false && checkBol.hasCertify == true) { //成功 successFun() } else if (checkBol.authResult == true && checkBol.canCertify == true && checkBol.hasCertify == false) { //失败 goToPage = false; $mask.addClass("failed"); $mask.find(".text").html("您未通过实名认证"); $mask.find(".tips").html("系统审核您的实名认证失败"); $mask.find(".goto-change").removeClass('hide'); $mask.show(); hideLoading(layerIndex) } } else { if (checkBol.canCertify == false && checkBol.hasCertify == true) { //成功 successFun() } else {//(authResult == null || authResult == undefined) && canCertify == true && hasCertify == false; //正在操作 console.log('继续操作'); } hideLoading(layerIndex) } } }, error (err) { console.log(err); } }) }, eventRegister: function () { $('.button-submit').on('click', function () { var name = $('.name').val(); var personId = $('.person-id').val(); var phone = `${$('.phone').val()}`; var identityCode = $('.identity-code').val(); var agree = $('#agree').prop("checked"); if (!agree) { toastShow("请同意直播协议"); return; } if (!name.trim()) { toastShow("名字不能为空"); return; } if (!personId.trim()) { toastShow("身份证号不能为空"); return; } if (!phone.trim()) { toastShow("手机号不能为空"); return; } if (!identityCode.trim()) { toastShow("验证码不能为空"); return; } if (!(/(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/).test(personId.trim())) { toastShow("身份证号不符合规格"); return; } if (!(/^1[3|4|5|6|7|8|9][0-9]\d{8}$/).test(phone.trim())) { toastShow("手机号不符合规格"); return; } if (lockBol) { return; } lockBol = true; var metaInfo = window.getMetaInfo(); var requestParam = { certType: 0, code: identityCode, identityNumber: encryptDes(personId, "1ea53d260ecf11e7b56e00163e046a26"), metaInfo: JSON.stringify(metaInfo), phone: encryptDes( phone, "1ea53d260ecf11e7b56e00163e046a26"), returnUrl: window.location.origin + `/mew/modules/identity/new.html?uid=${pubInfo.uid}&ticket=${pubInfo.ticket}`, uid: pubInfo.uid, username: encryptDes(name, "1ea53d260ecf11e7b56e00163e046a26"), }; networkRequest({ type: 'post', url: urlPrefix + '/certification/initFace', data: requestParam, success: function (res) { if (res.code == 200) { window.location.href = res.data.certifyUrl; } else { $mask.addClass("failed"); $mask.find(".text").html("实名认证失败"); $mask.find(".tips").html(res.message); $mask.show(); lockBol = false; setTimeout(function () { $('.status-mask').hide(); }, 4000); lockBol = false; } }, error (err) { console.log(err); } }) }) $('.button-identity-code').on('click', function () { var phone = $('.phone').val(); if (!phone.trim()) { toastShow("手机号不能为空"); return; } if (!(/^1[3|4|5|6|7|8|9][0-9]\d{8}$/).test(phone.trim())) { toastShow("手机号不符合规格"); return; } if ($(this).hasClass("disable")) { return; } $(this).addClass('disable'); var time = 60; var $that = $(this); $(this).html(time + 's后重新获取'); timer = setInterval(function () { time--; $that.html(time + "s后重新获取"); if (time < 0) { clearInterval(timer); $that.removeClass('disable'); $that.html("获取验证码"); } }, 1000) var requestParam = { phone: encryptDes( phone, "1ea53d260ecf11e7b56e00163e046a26"), uid: pubInfo.uid, ticket: pubInfo.ticket }; if (browser.android) { requestParam.deviceInfo = JSON.stringify({ deviceId: pubInfo.deviceId }); } networkRequest({ type: 'post', url: urlPrefix + '/certification/send/code', data: requestParam, success: function (res) { if (res.code == 200) { toastShow('发送成功'); } else { toastShow(res.message); } }, error (err) { console.log(err); } }) }) // 点击我要修改 $('.goto-change').on('click', function () { $mask.hide(); $('.layer-box-2').show(); }) // 点击关闭弹层 $('.layer-2-close').on('click', function () { $('.layer-box-2').hide(); $mask.show(); }) // 点击跳转手机验证 $('.goto-change-layer').on('click', function () { window.location.href = 'mobile.html'; }) } }; main.init(); }); function toastShow (text) { $toast.html(text); $toast.show(); setTimeout(function () { $toast.hide(); }, 2000); } function getMessage (key, value) { pubInfo[key] = value; } function renderByStatus (status) { $mask.attr('class', 'status-mask'); console.log("开始回调," + "状态为" + status); networkRequest({ type: 'post', url: urlPrefix + '/certification/notify', data: { uid: pubInfo.uid, ticket: pubInfo.ticket, token: pubInfo.token, statusCode: status }, success: function (res) { console.log(res); lockBol = false; if (res.code == 200) { console.log("success"); if (status == 2) { $mask.addClass("success"); $mask.find(".text").html("认证成功"); $mask.find('.tips').html(''); $mask.show(); } else { if (status == -2) { $mask.addClass("failed"); $mask.find(".text").html("认证失败"); $mask.find(".tips").html("网络不通或者网络异常"); } else if (status == 1) { $mask.addClass("failed"); $mask.find(".text").html("认证失败"); $mask.find(".tips").html("审核失败"); } else { console.log('存在异常,status=' + status); // window.location.reload(); return; } $mask.show(); setTimeout(function () { $mask.hide(); }, 4000); } } }, error (err) { console.log(err); } }) console.log('status', status); } //DES加密 const encryptDes = (message, key) => { var keyHex = CryptoJS.enc.Utf8.parse(key); var encrypted = CryptoJS.DES.encrypt(message, keyHex, { mode: CryptoJS.mode.ECB, padding: CryptoJS.pad.Pkcs7 }); return encrypted.toString(); } $('.status-mask').click(function () { if (goToPage) { // window.location.href = urlPrefix + '/mew/modules/identity/new.html' } else { $('.status-mask').hide(); } })