pages-login-index.72a4a95b.js 14 KB

1
  1. import{K as e,R as a,T as t,o as s,c as i,w as o,a as l,f as n,g as c,l as d,i as r,U as u,t as m,k as h,I as p,S as g,V as f,e as b,r as y,z as M,A as k,n as v}from"./index-3b24b149.js";import{i as I,s as S}from"./captcha.66eca214.js";import{i as C,a as A}from"./verify.bb6c778b.js";import{_ as N}from"./_plugin-vue_export-helper.1b428a4d.js";import{i as B}from"./upload.f2390add.js";import{A as R}from"./index.f29cfa79.js";const x={props:{isParty:{type:Boolean,default:()=>!1},partyData:{type:Object}},data:()=>({code:""}),methods:{async clickPhoneNumber(){this.code=await this.getCode()},async handelMpWeixinMobileLogin({detail:t}){const s=this;"getPhoneNumber:ok"==t.errMsg?"getPhoneNumber:ok"==t.errMsg&&(s.isLoading=!0,e.dispatch("LoginMpWxMobile",{code:s.code,encryptedData:t.encryptedData,iv:t.iv,isParty:s.isParty,partyData:s.partyData}).then((e=>{s.$toast(e.message),uni.$emit("syncRefresh",!0),setTimeout((()=>s.onNavigateBack(1)),2e3)})).catch((e=>{const t=e.result.data;a(t)&&s.$toast(e.result.message),t.isBack&&setTimeout((()=>s.onNavigateBack(1)),2e3)})).finally((()=>s.isLoading=!1))):console.log("微信授权获取手机号失败",t)},getCode:()=>new Promise(((e,a)=>{uni.login({provider:"weixin",success:a=>{console.log("code",a.code),e(a.code)},fail:a})})),onNavigateBack(e=1){t().length>1?uni.navigateBack({delta:Number(e||1)}):this.$navTo("pages/index/index")}}};const w=N({components:{Main:N({components:{MpWeixinMobile:N(x,[["render",function(e,a,t,m,h,p){const g=c,f=d,b=r,y=u;return s(),i(b,{class:"wechat-auth"},{default:o((()=>[l(y,{class:"btn-normal","open-type":"getPhoneNumber",onGetphonenumber:a[0]||(a[0]=e=>p.handelMpWeixinMobileLogin(e)),onClick:p.clickPhoneNumber},{default:o((()=>[l(b,{class:"wechat-auth-container"},{default:o((()=>[l(g,{class:"icon",src:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACIAAAAiCAYAAAA6RwvCAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyFpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNS1jMDE0IDc5LjE1MTQ4MSwgMjAxMy8wMy8xMy0xMjowOToxNSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo5ODg0MTRBQTNDNDkxMUVCQTc3QkEyRERBRTQxMDdERCIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo5ODg0MTRBQjNDNDkxMUVCQTc3QkEyRERBRTQxMDdERCI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjk4ODQxNEE4M0M0OTExRUJBNzdCQTJEREFFNDEwN0REIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjk4ODQxNEE5M0M0OTExRUJBNzdCQTJEREFFNDEwN0REIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+S3My7wAABHpJREFUeNq8mGuIVVUUx9c+d0bHV1rZVPMhZqCwl070UNOQJCsSK6X8EKRUlKAUUh/qS9GHgiACQSKSiCEqI6oPEtUH0VJyHjVQ6mg+UBErcpjGxkeNM3PP6bfX2ffcM87Z99557uG/97777L3W/6y91t7rjJFW8Rfj2sjBSEC9AswBd4JbQB2w453gCGgDvzF/J223PpGUHK+qckQsQmmg3ggeBfVSWekB21j/Pm3LaIlMoX4LAc/T5mTk5QtkvYSc330TghKLF7HwANg4ShK2rEbOUdq1wyWyGuwBDTJ2pQZ8BF7LepiTZ4eMrQJfyviVpep1IrsHe0HLoAi5DfwiE1OeAU0FBzbyU8o6oZymvVImqhgi0MhJ261KnRWbKiTxB+gCA+AycMMoqHyO/oUxpzYlcS31n2UWfQy2MLcV5DWO4kOugfY5euvBrBFY5QHq7bGPGNlM/YJn4gXwCKp3aoyFjkCRSMGitfQ/ob1/mFSaWbPYEpmEgFMM1GaQiFDeSLtfNyLgaA/lL0Z7EgI2xHNsVSDn5KISamHDF5Y6RYeUSG4K3BvUZk7Iy5vSB4lQSdzL70MQ+Cw53iJZAI6DryT2OJFqWcb888O0yoMBCuZ5HoYoeC859gw+ZOR7et/q2w4okU7GvqbdgjVquBBul2kyHcIdw/STe+xdYw+vxzIet0PlLlVa7cgMOB8pnJOhGxN5GCxnbgfjbbpFoczFco8ztrwCKoesMRs9D88NSgMk5ZyzHHrwry55mS0JGX8dS3Qq4UiJtDPexO+5jDcxckcJIjOtRc54wu4iQupQ0J3kI6GzzjTX75OngX3/ramcJZbW5xKBScmLtJcg0xOkAvDSMhllr6rp86ktsf2zivnyr1yDkq1O0YcaZf14SqhSN4kNhQFeJia4KiVliJdYIv+UMNmLLF2S3EV2dj84r+1VelPlk1fZC77BAqH00uuVX/GRbTIb29SofU9BaLtHT2+gaV2pkpNdKHoy8ROTbNNpnp1IZSqbNY3MobJK59krfyV27UpC28hhj5azgcsxyx04C5wPzEPgdTJDN66G31dnBH3RV3JuG3uT1Op6j4YjlsjBMjS6EdrMtryr5o+4LSNaQyQYwvbS1KpatyHeQkvqv+LpSf2Q5xz50aq4HGE2l5zqIWI9YkpmuhihMoeVIrL3QtRMdRbIp5LvfuwYkCpWce1HmRa/O2DiGXUyf5nuzVmNRtYeBN2Xmf0Xzp5q2YeEes/9Yz9BWgtpwFhkZt+BH4iaNiwQ8jdfLRnIO5A6xu86z7qnbC5r5OfEyeydsWLUWVc05GQ66Lzl1gyLnoRofTFVjEPyCqb/LRNZjCzWQNAjKkwus27qJyaQxtu8fLPqDwufE0VTdjgzLh1nEp+CDeW+a3aPMxmb+66p9EvvDbBuXLbD89lZ6tv3A7bsZrBjDAjsR84y2ldG8hEueiHGAlaWOfR8pZX1G4BNR3eUDqBK/1ETl0b6SxhfRP9GMBvMcDMvABv+J5izSxMhozd3Rf+o+V+AAQAKQEmumQtkwAAAAABJRU5ErkJggg=="}),l(f,{class:"title"},{default:o((()=>[n("微信手机号一键登录")])),_:1})])),_:1})])),_:1},8,["onClick"])])),_:1})}],["__scopeId","data-v-f7e128fb"]])},props:{isParty:{type:Boolean,default:()=>!1},partyData:{type:Object},isMpWeixinMobile:{type:Boolean,default:()=>!1}},data:()=>({isLoading:!1,disabled:!1,captcha:{},smsState:!1,times:60,mobile:"",captchaCode:"",smsCode:""}),created(){this.getCaptcha()},methods:{getCaptcha(){const e=this;I().then((a=>e.captcha=a.data))},handelSmsCaptcha(){const e=this;e.isLoading||e.smsState||!e.formValidation(10)||e.sendSmsCaptcha()},formValidation(e=10){const a=this;return!!(10!==e||a.validteMobile(a.mobile)&&a.validteCaptchaCode(a.captchaCode))&&!!(20!==e||a.validteMobile(a.mobile)&&a.validteSmsCode(a.smsCode))},validteMobile(e){return C(e)?(this.$toast("请先输入手机号"),!1):!!A(e)||(this.$toast("请输入正确格式的手机号"),!1)},validteCaptchaCode(e){return!C(e)||(this.$toast("请先输入图形验证码"),!1)},validteSmsCode(e){return!C(e)||(this.$toast("请先输入短信验证码"),!1)},sendSmsCaptcha(){const e=this;e.isLoading=!0,S({form:{captchaKey:e.captcha.key,captchaCode:e.captchaCode,mobile:e.mobile}}).then((a=>{e.$toast(a.message),e.timer()})).catch((()=>e.getCaptcha())).finally((()=>e.isLoading=!1))},timer(){const e=this;e.smsState=!0;const a=setInterval((()=>{e.times=e.times-1,e.times<=0&&(e.smsState=!1,e.times=60,clearInterval(a))}),1e3)},handleLogin(){const e=this;e.isLoading||e.disabled||!e.formValidation(20)||e.submitLogin()},submitLogin(){const a=this;a.isLoading=!0,a.disabled=!0,e.dispatch("Login",{smsCode:a.smsCode,mobile:a.mobile,isParty:a.isParty,partyData:a.partyData}).then((e=>{a.$toast(e.message),uni.$emit("syncRefresh",!0),setTimeout((()=>a.onNavigateBack(1)),2e3)})).catch((e=>{a.disabled=!1,e.result.data.isBack&&setTimeout((()=>a.onNavigateBack(1)),2e3)})).finally((()=>a.isLoading=!1))},onNavigateBack(e=1){t().length>1?uni.navigateBack({delta:Number(e||1)}):this.$navTo("pages/index/index")}}},[["render",function(e,a,t,u,g,f){const b=d,y=r,M=p,k=c;return s(),i(y,{class:"container"},{default:o((()=>[l(y,{class:"header"},{default:o((()=>[l(y,{class:"title"},{default:o((()=>[l(b,null,{default:o((()=>[n("手机号登录")])),_:1})])),_:1}),l(y,{class:"sub-title"},{default:o((()=>[l(b,null,{default:o((()=>[n("未注册的手机号登录后将自动注册")])),_:1})])),_:1})])),_:1}),l(y,{class:"login-form"},{default:o((()=>[l(y,{class:"form-item"},{default:o((()=>[l(M,{class:"form-item--input",type:"number",modelValue:g.mobile,"onUpdate:modelValue":a[0]||(a[0]=e=>g.mobile=e),maxlength:"11",placeholder:"请输入手机号码"},null,8,["modelValue"])])),_:1}),l(y,{class:"form-item"},{default:o((()=>[l(M,{class:"form-item--input",type:"text",modelValue:g.captchaCode,"onUpdate:modelValue":a[1]||(a[1]=e=>g.captchaCode=e),maxlength:"5",placeholder:"请输入图形验证码"},null,8,["modelValue"]),l(y,{class:"form-item--parts"},{default:o((()=>[l(y,{class:"captcha",onClick:a[2]||(a[2]=e=>f.getCaptcha())},{default:o((()=>[l(k,{class:"image",src:g.captcha.base64},null,8,["src"])])),_:1})])),_:1})])),_:1}),l(y,{class:"form-item"},{default:o((()=>[l(M,{class:"form-item--input",type:"number",modelValue:g.smsCode,"onUpdate:modelValue":a[3]||(a[3]=e=>g.smsCode=e),maxlength:"6",placeholder:"请输入短信验证码"},null,8,["modelValue"]),l(y,{class:"form-item--parts"},{default:o((()=>[l(y,{class:"captcha-sms",onClick:a[4]||(a[4]=e=>f.handelSmsCaptcha())},{default:o((()=>[g.smsState?(s(),i(b,{key:1,class:"un-activate"},{default:o((()=>[n("重新发送("+m(g.times)+")秒",1)])),_:1})):(s(),i(b,{key:0,class:"activate"},{default:o((()=>[n("获取验证码")])),_:1}))])),_:1})])),_:1})])),_:1}),l(y,{class:h(["login-button",{disabled:g.disabled}]),onClick:a[5]||(a[5]=e=>f.handleLogin())},{default:o((()=>[l(b,null,{default:o((()=>[n("登录")])),_:1})])),_:1},8,["class"])])),_:1})])),_:1})}],["__scopeId","data-v-4f2349a3"]]),MpWeixin:N({components:{AvatarImage:R},data:()=>({storeInfo:void 0,isPersonal:void 0,code:"",disabled:!1,avatarUrl:"",tempFile:void 0,form:{avatarId:null,nickName:""}}),created(){this.getStoreInfo(),this.getIsPersonal()},methods:{getStoreInfo(){g.storeInfo().then((e=>this.storeInfo=e))},async getIsPersonal(){const e=this;f({code:await e.getCode()}).then((a=>e.isPersonal=a.data.isPersonalMpweixin))},getCode:()=>new Promise(((e,a)=>{uni.login({provider:"weixin",success({code:a}){console.log("code",a),e(a)},fail:a})})),onInputNickName({detail:e}){console.log(e),e.value&&(this.form.nickName=e.value)},onClickAvatar(){this.chooseImage()},onChooseAvatar({detail:e}){},chooseImage(){const e=this;uni.chooseImage({count:1,sizeType:["original","compressed"],sourceType:["album","camera"],success({tempFiles:a}){e.tempFile=a[0],e.avatarUrl=e.tempFile.path}})},uploadFile(){const e=this;return B([e.tempFile],!1).then((a=>(e.form.avatarId=a[0],e.tempFile=null,!0))).catch((()=>!1))},async handleSubmit(){const e=this;if(console.log("handleSubmit",e.form,e.tempFile),!0!==e.disabled)if(void 0===e.tempFile||C(e.form.nickName))e.$toast("请填写头像和昵称~");else{if(e.disabled=!0,!(await e.uploadFile()))return e.$toast("很抱歉,头像上传失败"),void(e.disabled=!1);e.onAuthSuccess({nickName:e.form.nickName,avatarId:e.form.avatarId})}},handleLogin(){this.onAuthSuccess({})},async onAuthSuccess(t){const s=this;e.dispatch("LoginMpWx",{partyData:{code:await s.getCode(),oauth:"MP-WEIXIN",userInfo:t}}).then((e=>{s.$toast(e.message),uni.$emit("syncRefresh",!0),setTimeout((()=>s.onNavigateBack()),2e3)})).catch((e=>{const i=e.result.data;a(i)&&s.$toast(e.result.message),i.isBack&&setTimeout((()=>s.onNavigateBack(1)),2e3),i.isBindMobile&&s.onEmitSuccess(t)}))},async onEmitSuccess(e){this.$emit("success",{oauth:"MP-WEIXIN",code:await this.getCode(),userInfo:e})},handleCancel(){this.onNavigateBack()},onNavigateBack(e=1){t().length>1?uni.navigateBack({delta:Number(e||1)}):this.$navTo("pages/index/index")}}},[["render",function(e,a,t,m,g,f){const M=d,k=r,v=y("avatar-image"),I=u,S=p,C=c;return s(),i(k,{class:"container"},{default:o((()=>[!0===g.isPersonal?(s(),i(k,{key:0,class:"personal"},{default:o((()=>[l(k,{class:"header"},{default:o((()=>[l(k,{class:"title"},{default:o((()=>[l(M,null,{default:o((()=>[n("获取您的昵称、头像")])),_:1})])),_:1}),l(k,{class:"sub-title"},{default:o((()=>[l(M,null,{default:o((()=>[n("填写您的微信头像和昵称,以便获得更好的体验")])),_:1})])),_:1})])),_:1}),l(k,{class:"login-form"},{default:o((()=>[l(k,{class:"form-item"},{default:o((()=>[l(k,{class:"form-item--label"},{default:o((()=>[n("头像")])),_:1}),l(I,{class:"btn-normal","open-type":"chooseAvatar",onClick:a[0]||(a[0]=e=>f.onClickAvatar()),onChooseavatar:f.onChooseAvatar},{default:o((()=>[l(v,{url:g.avatarUrl,width:100},null,8,["url"])])),_:1},8,["onChooseavatar"])])),_:1}),l(k,{class:"form-item"},{default:o((()=>[l(k,{class:"form-item--label"},{default:o((()=>[n("昵称")])),_:1}),l(S,{class:"form-item--input",type:"nickname",modelValue:g.form.nickName,"onUpdate:modelValue":a[1]||(a[1]=e=>g.form.nickName=e),maxlength:"30",placeholder:"请输入微信昵称",onInput:f.onInputNickName,onBlur:f.onInputNickName},null,8,["modelValue","onInput","onBlur"])])),_:1})])),_:1}),l(k,{class:"login-btn"},{default:o((()=>[l(k,{class:h(["button",{disabled:g.disabled}]),onClick:a[2]||(a[2]=e=>f.handleSubmit())},{default:o((()=>[n("确认")])),_:1},8,["class"])])),_:1}),l(k,{class:"no-login-btn"},{default:o((()=>[l(k,{class:"button",onClick:a[3]||(a[3]=e=>f.handleCancel())},{default:o((()=>[n("暂不登录")])),_:1})])),_:1})])),_:1})):b("",!0),!1===g.isPersonal?(s(),i(k,{key:1,class:"authorize"},{default:o((()=>[l(k,{class:"store-info"},{default:o((()=>[l(k,{class:"header"},{default:o((()=>[l(C,{class:"image",src:g.storeInfo&&g.storeInfo.image_url?g.storeInfo.image_url:"/static/default-logo.png"},null,8,["src"])])),_:1})])),_:1}),l(k,{class:"auth-title"},{default:o((()=>[n("申请获取以下权限")])),_:1}),l(k,{class:"auth-subtitle"},{default:o((()=>[n("获得你的公开信息(昵称、头像等)")])),_:1}),l(k,{class:"login-btn"},{default:o((()=>[l(k,{class:h(["button",{disabled:g.disabled}]),onClick:a[4]||(a[4]=e=>f.handleLogin())},{default:o((()=>[n("一键登录")])),_:1},8,["class"])])),_:1}),l(k,{class:"no-login-btn"},{default:o((()=>[l(k,{class:"button",onClick:a[5]||(a[5]=e=>f.handleCancel())},{default:o((()=>[n("暂不登录")])),_:1})])),_:1})])),_:1})):b("",!0)])),_:1})}],["__scopeId","data-v-c6ae814c"]])},data:()=>({isLoad:!1,setting:{},isMpWeixinAuth:!1,isMpWeixinMobile:!1,isParty:!1,partyData:{}}),async onLoad(e){await this.getRegisterSetting(),await this.setShowUserInfo(),this.isLoad=!0},methods:{async getRegisterSetting(){this.setting=await M.item(k.REGISTER.value,!1)},async setShowUserInfo(){const e=this,a="MP-WEIXIN"===e.platform;e.isMpWeixinAuth=a&&Boolean(e.setting.isOauthMpweixin),e.isMpWeixinMobile=a&&Boolean(e.setting.isOauthMobileMpweixin)},onGetUserInfoSuccess(e){this.partyData=e,this.onShowRegister()},onShowRegister(){"MP-WEIXIN"===this.partyData.oauth&&(this.isMpWeixinAuth=!1),this.isParty=!0}}},[["render",function(e,a,t,l,n,c){const d=y("MpWeixin"),u=y("Main"),m=r;return n.isLoad?(s(),i(m,{key:0,class:"login",style:v(e.appThemeStyle)},{default:o((()=>[n.isMpWeixinAuth?(s(),i(d,{key:0,onSuccess:c.onGetUserInfoSuccess},null,8,["onSuccess"])):(s(),i(u,{key:1,isParty:n.isParty,partyData:n.partyData,isMpWeixinMobile:n.isMpWeixinMobile},null,8,["isParty","partyData","isMpWeixinMobile"]))])),_:1},8,["style"])):b("",!0)}]]);export{w as default};