var loginPage = new Vue({ el: "#loginPage", mixins: [cmSysVitaMixins,loginMixins], data: { maxtime:60, loginLoading: false, qrCodeLogin: false, rule:{ account: "(^([\\w-\\.]+)@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.)|(([\\w-]+\\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\\]?)$)|(^\\d{6,12}$)", password: "^[^\\u4e00-\\u9fa5]{6,30}$", phone: '^\\d{6,12}$', code: '^\\d{6}$', mobile:'^1[1-9][0-9]{9}$' }, userData: { account: '', email: '', phone: '', name: '', userName: '', userId: '', spId: '', clubId: '', shopId: '', identity: '', permission: '', token: '' }, applyUse:{ clubId: '', shopId: '', token:'', }, isWeChat: false, text:'', stautsfalse:false, infofalse:false, isSlideFinishState:true, loginTabs:0, mobilCount:0, mobileCodeText:'获取验证码', mobilTime:null, isMobileDisabled:false, slideVerify:null }, computed: { }, methods: { handleTabsClick(index){ const _self = this; this.loginTabs = index; clearAllErrorTxt($('input')); if(index === 1){ this.isSlideFinishState = true this.initSlideVerify() } }, handleHideBg(){ this.stautsfalse=false; }, userUpdataeStatus(response){// 更新登录 const _self = this; _self.loginLoading = false; if(response.code === 0){ _self.userData = { account: response.data.account, email: response.data.email, phone: response.data.bindMobile, name: response.data.name, userName: response.data.userName, userId: response.data.userId, spId: response.data.serviceProviderId, clubId: response.data.clubId, shopId: response.data.shopId, userIdentity: response.data.userIdentity, permission: response.data.userPermission, token: response.data.token, vipFlag: response.data.vipFlag, firstClubType: response.data.firstClubType, listingFee:response.data.listingFee, shopIsOrder:response.data.shopIsOrder }; _self.setStorages( _self.userData); // 登录成功页面跳转 var loginBeforePath = getBaseCookie("loginBeforePath"); if (loginBeforePath && loginBeforePath!=='undefined' && loginBeforePath.indexOf('.html')>0) { delBaseCookie("loginBeforePath"); window.location.href = loginBeforePath; } else if (_self.userData.userIdentity*1 === 3) { location.href = '/supplier/dashboard.html'; } else if (_self.userData.userIdentity*1 === 2 || _self.userData.userIdentity*1 === 4) { location.href = '/user/dashboard.html'; } else { location.href="/index.html"; } } else if(response.code === '-3'){//审核未通过 _self.text =response.msg; _self.stautsfalse = true; _self.infofalse = true; _self.applyUse = { userId: response.data.userId, shopId: response.data.shopId, token: response.data.token }; }else if(response.code === '-2'){ _self.stautsfalse = true; _self.text =response.msg; }else {// 登录失败 CAIMEI.Alert(response.msg,'确定',false); } }, toQrCodeLogin(){//切换微信登录二维码 const _self = this; let timeClock = null; this.qrCodeLogin = true; UserApi.ToWechatLogin({},function(response){ const wxLogin = new WxLogin({ self_redirect: true, id: "qrCodeWrap", appid: response.data.appId, scope: 'snsapi_login', redirect_uri: response.data.redirectUri, state: response.data.state, style: "black", href: "https://www.caimei365.com/css/base/base.pc.css" }); timeClock = setInterval(function(){ _self.maxtime--; if (_self.maxtime === 0) { clearInterval(timeClock); } },1000); _self.getWrchatStatusData({state:response.data.state}) }); }, getWrchatStatusData(params){//轮询查询用户是否扫描过二维码登录 const _self = this; let timer = null; UserApi.ToWechatPolling(params,function(response){ if(response.code === -90){ if(_self.maxtime === 0){ clearInterval(timer); _self.maxtime = 60; $('#qrCodeWrap').append('

二维码已失效,点击刷新

'); $('#qrCodeWrap .model').click(function () { $(this).remove(); _self.toQrCodeLogin(); }) }else{ timer = setTimeout(function(){ _self.getWrchatStatusData(params); },3000) } }else { clearTimeout(timer); //清理定时任务 if(response.code === 0){ _self.userData = { account: response.data.account, email: response.data.email, phone: response.data.bindMobile, name: response.data.name, userName: response.data.userName, userId: response.data.userId, spId: response.data.serviceProviderId, clubId: response.data.clubId, shopId: response.data.shopId, userIdentity: response.data.userIdentity, permission: response.data.userPermission, token: response.data.token, unionId:response.data.unionId, firstClubType:response.data.firstClubType, vipFlag: response.data.vipFlag, listingFee:response.data.listingFee, shopIsOrder:response.data.shopIsOrder }; _self.setStorages( _self.userData); // 登录成功页面跳转 var loginBeforePath = getBaseCookie("loginBeforePath"); if (loginBeforePath && loginBeforePath!=='undefined' && loginBeforePath.indexOf('.html')>0) { delBaseCookie("loginBeforePath"); window.location.href = loginBeforePath; } else if (_self.userData.userIdentity*1 === 3) { location.href = '/supplier/dashboard.html'; } else if (_self.userData.userIdentity*1 === 2 || _self.userData.userIdentity*1 === 4) { location.href = '/user/dashboard.html'; } else { location.href="/index.html"; } }else if(response.code === -4){ _self.userData = { account: response.data.account, email: response.data.email, phone: response.data.bindMobile, name: response.data.name ? response.data.name : response.data.userName, userName: response.data.userName, userId: response.data.userId, spId: response.data.serviceProviderId, clubId: response.data.clubId, shopId: response.data.shopId, userIdentity: response.data.userIdentity, permission: response.data.userPermission, token: response.data.token, unionId:response.data.unionId, listingFee:response.data.listingFee, shopIsOrder:response.data.shopIsOrder }; _self.setStorages( _self.userData); setTimeout(function(){ window.location.href = '/bind.html'; },1000); }else if(response.code === '-3'){//审核未通过 _self.text ='您的供应商账号审核未通过,原因:图片模糊,营业执照错误,审核人员在后台填写的内容'; _self.stautsfalse = true; _self.infofalse = true; _self.applyUse = { userId: response.data.userId, shopId: response.data.shopId, token: response.data.token }; console.log(_self.applyUse); }else if(response.code === '-2'){ _self.stautsfalse = true; _self.text ='您的供应商账号正在加速审核中,审核通过后即可登录'; }else{ CAIMEI.Alert(response.msg,'确定',false); } } }); }, handleWeChatLogin(){ // 微信公众号授权登录 if (this.isWeChat) { // 微信浏览器自动授权登录 var urlForWeChat = 'https://www.caimei365.com/we_chat/redirect_uri.html'; $.get(coreServer+'/user/login/auth/link?mode=2&redirectUri='+urlForWeChat, function(r){ if(r.code===0 && r.data){ setBaseCookie("weChatAutoLogin", 2); window.location.href = r.data; } }); } }, toNormalLogin(){ this.qrCodeLogin = false; }, showPassword(event) { const el = event.currentTarget; const pwdEle = $(el).siblings('input'); if(pwdEle.attr('type') === 'password') { $(el).addClass('on'); pwdEle.attr('type','text'); } else { $(el).removeClass('on'); pwdEle.attr('type','password'); } }, blurHandle(event) { // 失去焦点校验 const el = event.currentTarget; verifyHandle(el); }, SetSoragesInfo(data){ localStorage.setItem('APPLY_INFO',JSON.stringify(data)); }, setStorages(data){//存储本地数据 localStorage.setItem('userInfo',JSON.stringify(data)); }, information(){ window.location.href='/supplier/information.html'; this.SetSoragesInfo( this.applyUse); }, initSlideVerify(){ const _self = this this.$nextTick(function (){ const SlideVerifyPlug = window.slideVerifyPlug; $('#verify-wrap').html('') const slideVerify = new SlideVerifyPlug('#verify-wrap', { wrapWidth: '350',//设置 容器的宽度 ,不设置的话,会设置成100%,需要自己在外层包层div,设置宽度,这是为了适应方便点; initText: '请向右滑动滑块', //设置 初始的 显示文字 sucessText: '验证通过',//设置 验证通过 显示的文字 getSuccessState: function (res) { //当验证完成的时候 会 返回 res 值 true,只留了这个应该够用了 if (slideVerify.slideFinishState) { $('.value').html(slideVerify.slideFinishState) $('#resetBtn').removeClass('prohibit') _self.isSlideFinishState = false; } } }); }) } }, created: function () { const userAgent = navigator.userAgent.toLowerCase(); this.isWeChat = userAgent.match(/MicroMessenger/i); this.initSlideVerify(); }, mounted: function () { const _self = this; $('body').on("focus",'[needverify]:visible',function(){ $(this).siblings('.errTips').removeClass("show").siblings('.checked').removeClass("show"); }); //enter键登录 if(!_self.isSlideFinishState){ $(document).keyup(function (e) { var e = e || event; e.stopPropagation(); if (e.keyCode === 13) { _self.loginSubmit(); } }); } } });