(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-389c5b8b"],{"0226":function(t,e,s){t.exports=s.p+"img/bo.ffb2d870.png"},2883:function(t,e,s){t.exports=s.p+"img/l_logo2.96c359c4.png"},"49b5":function(t,e,s){"use strict";s("5d45")},"5d45":function(t,e,s){},8038:function(t,e){t.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAdpJREFUOE+t0k9IFGEYx/Hvs87gtgi1EMiCYIeigjoEgXnSgxdPkgQVtGSxhELiBqWBFiKFaR2WKCVtYYJg6yJ2sFssUdChwwbuoUMQkdChDoJksvM6T+7s5J9ZO0jNaRje5/M+z/Mb4R8f2a5+sFMbFYZQTgjsU/ikwttVGBufkYXNNVXAtTN6GsUBouWDAisavAOLKpy790zm/iBbgL6LehDDBykXeMx6LjfuP5dib6c21MToQ0irYIzNoYdZ+RJcsNFQT0rzAq3A04nHkgyPdzmlox5cR5idmJaTW4Czl3RvncU3/6MhMTUlP8JAV5dG7RhLa/sxZpmE48ji+gjJK3o8Au9Rik8ycvRv4ZxP6zzCkZLL4dwD+bhtCjtJ1gdah9XaA3U1HgVRGjyhe2ZEsmHo1E0dQLkjQvF7hGOA5QMdt3XQdZmzLQpBkfNiSC6EgY5bmi/fF+wpvmox4APtd/WNKdFr2RVg7edxXvZXA+3jG8CvZeK7YhR8oC2j80ZJWpEKoIrzKl0NtGU0j1Q6MB5xS/jsAy2TmnM9xuwAAJzXPdVAy+SmEVaIay05H2ia1vqlEj93R/0O9qN0v0vJo/AOmrM6ClwFFmq/cqCUoPH/xLiT3MNnfwNWhKQirXoP4wAAAABJRU5ErkJggg=="},"96b4":function(t,e){t.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAbtJREFUOE9jZKAQMGLTP2fpXvm/v3/X/P/HYMHAwKDAyMhwh4GR4cjP3/8681K9niDrwTBgxryd4YyM/xcwMDBwQBX+QGJ/YGBkiElP8NgKMwTFgGlzt6szMzFegGrY8O/vn9rMFJ8rk2Zvk2FjZcxn+MdYwMjI8IeZjVUjJdr5IcgQFANmzN+xn5GBweH///9LMpI8Y9G9N3P+9nYGBsYKBgaGDemJHoEoBvTM3CzCw8r6HCz4+7dkerrvG3QDGubP55D4L/kZ5IpvDN8lCxMDP8BdMGPuVhNGJubT//8zXMlI8tDFFTkz5u24zMjIoPPr12/N3HTfG1hjgZSYBRvQ0NDAwi+vz8PJwHGe4T+jDAPT/4yMBM+56AbNmL+jnJGBoQPkyhePThgyyMuzgA2YvmBn9b9ff7aysDKfB/H/MzAsyEj0SMRiADiQQeLfGL4LcjFwgAxkYJgxb/vhv3/+5ZJqAMjFUAN2XP77528sqQZwMXDeh3hh/vbl/37/6yTDgOVgA2Yv2yP+6/27ryycfOcZGBlUGP7/z0hP8pyJLSH9/89YwsDI8OTFwxOqkgpm8tSJRlLiHV0tAGHqtbKhT0DtAAAAAElFTkSuQmCC"},"9c42":function(t,e){t.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAAAXNSR0IArs4c6QAAARtJREFUOE+tlC9PQlEYxn/PZXYjUZrR4kbQZoDkdbPYxMnEGdRv4QewkPgCFhsfwGBwsxrYJBgMBgIbunF53MVdVIYXjuNsTzg773573n9HLOloSRx+gZqt9iOwkQPvDZOPzbPj3c50zDTI8xxGJq4fVW4XA9kvSDdZsHFZqJzeA0F0JK6/QVRgrEBQTn5BjozvDQcZL0LnwEXmKIm8hbWP6Q802L6s7fX+Kva74TUDCVb50ji1RMSCw/Q+wqXTWrU7E2TTl5i02LgoVPwHyA/JcFTPHBVWCieCRjAob5aCUgOesK4mQDkGUoXVCPsN6e6Hs3UgVSBozhwt3LXcfbMbjthROkez2t9stZ+BtXlLO/1u3G3UqqWl/UefbjGwE1IyuF8AAAAASUVORK5CYII="},"9dad":function(t,e){t.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAAAXNSR0IArs4c6QAAAaRJREFUOE+t1LFLG2EYx/Hvc/EPcHT0toxdBIXqUAp2cHgFFapDq1hNoUXtIkUHcYqDtNQOdbFOouCgTh0zCM0gdO0QaAaHDg5CHYy9vI+8b5IzOWJuycHD8XLHh9/93pcTunRJlxxaoDWjv4AnHfDrqmUgfyal5Dst0OqUqoLXH7sjmK0jOe0IfZjxjkMuxXIcvxwwCH5QxXw6SIHez9YhoYTwtQGJ8gI3tbTmy/cUKLdQgzpdKpjd3RRo/l0MFaOIlw2wJ8MSwrJfBxi1PEWYAG6q/xje35frlrJfrdQh4Rblb1OyXsCN68+IYFBeu3VFCQ8/S7kFml6NE92gxFusQp9AXx02gBsP2UobaHI9hi7o4U0jkVZZFCXnEwUY0YdE/yPCk3wi0fhmetkoxhUu9URqCU82EtBYXtWfRPgdKPlGIhv4BMbtvXUduXEdCUS3hD+S0Oh2nOhKA87jsi1Zgaxf14qOO6rcERY+JhI920n/NLUYyTx0ZCPCwkoCGvmWDlWVXCA8F/w54k4Ji2+boKE9/QP0p53sNs/LP+ck7Nr/6B4zDqUTBeVW+wAAAABJRU5ErkJggg=="},d9e3:function(t,e,s){t.exports=s.p+"img/l_bg.b4766c7f.png"},db2b:function(t,e,s){t.exports=s.p+"img/l_logo.b9b7edb3.png"},dc3f:function(t,e,s){"use strict";s.r(e);var o=function(){var t=this,e=t._self._c;return e("div",{staticClass:"login-page"},[e("div",{staticClass:"login-shell"},[e("div",{staticClass:"brand-corner"},[e("img",{staticClass:"brand-corner-logo",attrs:{src:t.pageLogo,alt:"COG"}})]),e("div",{staticClass:"login-stage"},[e("div",{staticClass:"stage-visual"},[e("img",{staticClass:"stage-visual-img",attrs:{src:t.stageImage,alt:"登录主视觉"}})]),e("section",{staticClass:"login-card"},[e("img",{staticClass:"login-card-logo",attrs:{src:t.cardLogo,alt:"COG"}}),e("div",{staticClass:"login-tabs"},[e("button",{class:["login-tab",{active:"org"===t.activeType}],attrs:{type:"button"},on:{click:function(e){return t.switchLoginType("org")}}},[e("img",{staticClass:"login-tab-icon",attrs:{src:"org"===t.activeType?t.orgTabIconActive:t.orgTabIcon,alt:"MCN机构"}}),e("span",[t._v("MCN机构")])]),e("button",{class:["login-tab",{active:"personal"===t.activeType}],attrs:{type:"button"},on:{click:function(e){return t.switchLoginType("personal")}}},[e("img",{staticClass:"login-tab-icon",attrs:{src:"personal"===t.activeType?t.personalTabIconActive:t.personalTabIcon,alt:"个人主播"}}),e("span",[t._v("个人主播")])])]),e("el-form",{ref:"loginForm",staticClass:"login-form",attrs:{model:t.loginForm},nativeOn:{submit:function(t){t.preventDefault()}}},["org"===t.activeType?e("div",{staticClass:"form-block"},[e("div",{staticClass:"field-label"},[t._v("企业名称")]),e("el-input",{staticClass:"field-input",attrs:{placeholder:"请输入企业完整名称"},model:{value:t.loginForm.companyName,callback:function(e){t.$set(t.loginForm,"companyName","string"===typeof e?e.trim():e)},expression:"loginForm.companyName"}})],1):t._e(),e("div",{staticClass:"form-block"},[e("div",{staticClass:"field-label"},[t._v("手机号")]),e("el-input",{staticClass:"field-input",attrs:{maxlength:"11",placeholder:"请输入手机号"},model:{value:t.loginForm.mobile,callback:function(e){t.$set(t.loginForm,"mobile","string"===typeof e?e.trim():e)},expression:"loginForm.mobile"}})],1),e("div",{staticClass:"form-block"},[e("div",{staticClass:"field-label"},[t._v("验证码")]),e("div",{staticClass:"inline-row"},[e("el-input",{staticClass:"field-input flex-1",attrs:{maxlength:"6",placeholder:"请输入验证码"},model:{value:t.loginForm.smsCode,callback:function(e){t.$set(t.loginForm,"smsCode","string"===typeof e?e.trim():e)},expression:"loginForm.smsCode"}}),e("button",{staticClass:"code-btn",attrs:{type:"button",disabled:t.smsLoading||t.countdown>0},on:{click:t.handleSendSmsCode}},[t._v(" "+t._s(t.countdown>0?t.countdown+"s后重试":"获取验证码")+" ")])],1)]),e("div",{staticClass:"form-block"},[e("div",{staticClass:"field-label"},[t._v("图形验证码 "),e("span",{staticClass:"required"},[t._v("*")])]),e("div",{staticClass:"inline-row2"},[e("el-input",{staticClass:"field-input flex-1",attrs:{maxlength:"6",placeholder:"请输入验证码"},model:{value:t.loginForm.imageCode,callback:function(e){t.$set(t.loginForm,"imageCode","string"===typeof e?e.trim():e)},expression:"loginForm.imageCode"}}),e("button",{staticClass:"captcha-box",attrs:{type:"button",title:"点击刷新验证码"},on:{click:t.refreshCaptcha}},[t.captchaImage?e("img",{staticClass:"captcha-image",attrs:{src:t.captchaImage,alt:"图形验证码"}}):e("span",[t._v("加载中")])])],1)]),e("button",{staticClass:"submit-btn",attrs:{type:"button",disabled:t.submitting},on:{click:t.handleSubmitLogin}},[t._v(" "+t._s(t.submitting?"登录中...":"登录")+" ")])]),e("div",{staticClass:"login-footer"},[e("span",[t._v("未有账号?")]),e("button",{staticClass:"register-link",attrs:{type:"button"},on:{click:t.goRegister}},[t._v("立即注册")])])],1)])])])},i=[],a=(s("d9e2"),s("14d9"),s("0643"),s("4e3e"),{name:"login",data(){return{activeType:"org",smsLoading:!1,submitting:!1,countdown:0,countdownTimer:null,captchaText:"",captchaImage:"",pageLogo:s("2883"),cardLogo:s("db2b"),pageBackground:s("d9e3"),stageImage:s("0226"),orgTabIcon:s("9c42"),orgTabIconActive:s("9dad"),personalTabIcon:s("96b4"),personalTabIconActive:s("8038"),loginForm:{companyName:"",mobile:"",smsCode:"",imageCode:""}}},computed:{pageStyle(){return{backgroundImage:`url(${this.pageBackground})`}}},mounted(){this.refreshCaptcha()},beforeDestroy(){this.countdownTimer&&(clearInterval(this.countdownTimer),this.countdownTimer=null)},methods:{switchLoginType(t){this.activeType=t,this.loginForm.smsCode="",this.loginForm.imageCode=""},goRegister(){this.$router.push({path:"/register"})},refreshCaptcha(){const t=this.generateCaptchaText();this.captchaText=t,this.captchaImage=this.createCaptchaDataUrl(t)},generateCaptchaText(){const t="23456789ABCDEFGHJKLMNPQRSTUVWXYZ";let e="";for(let s=0;s<4;s+=1)e+=t.charAt(Math.floor(Math.random()*t.length));return e},createCaptchaDataUrl(t){const e=document.createElement("canvas");e.width=132,e.height=42;const s=e.getContext("2d");s.fillStyle="#F1F6D9",s.fillRect(0,0,e.width,e.height),s.strokeStyle="#D8E2B7",s.lineWidth=1,s.strokeRect(.5,.5,e.width-1,e.height-1),s.font="700 24px Georgia",s.textBaseline="middle",s.fillStyle="#2E2D72",t.split("").forEach((t,e)=>{const o=14+28*e,i=22+(e%2===0?-1:1);s.save(),s.translate(o,i),s.rotate(18*(Math.random()-.5)*Math.PI/180),s.fillText(t,0,0),s.restore()});for(let o=0;o<3;o+=1)s.beginPath(),s.strokeStyle=["#8AA4FF","#C18BFF","#ADC75D"][o%3],s.moveTo(8,10+10*o),s.lineTo(124,18+8*o),s.stroke();return e.toDataURL("image/png")},validateBaseFields(){return"org"!==this.activeType||this.loginForm.companyName?/^1\d{10}$/.test(this.loginForm.mobile)?this.loginForm.imageCode?this.loginForm.imageCode.toUpperCase()===this.captchaText||(this.$message.warning("图形验证码错误"),this.refreshCaptcha(),this.loginForm.imageCode="",!1):(this.$message.warning("请输入图形验证码"),!1):(this.$message.warning("请输入正确的手机号"),!1):(this.$message.warning("请输入企业名称"),!1)},startSmsCountdown(){this.countdown=60,this.countdownTimer&&clearInterval(this.countdownTimer),this.countdownTimer=setInterval(()=>{this.countdown-=1,this.countdown<=0&&(clearInterval(this.countdownTimer),this.countdownTimer=null)},1e3)},async handleSendSmsCode(){if(this.validateBaseFields()){this.smsLoading=!0;try{"org"===this.activeType?await this.requestOrgSmsCode():await this.requestPersonalSmsCode(),this.$message.success("验证码已发送"),this.startSmsCountdown()}catch(t){this.$message.warning(t&&t.message?t.message:"验证码发送失败")}finally{this.smsLoading=!1}}},async handleSubmitLogin(){if(this.validateBaseFields())if(this.loginForm.smsCode){this.submitting=!0;try{const t="org"===this.activeType?await this.loginAsOrg():await this.loginAsPersonal();this.handleLoginSuccess(t)}catch(t){this.$message.warning(t&&t.message?t.message:"登录失败")}finally{this.submitting=!1}}else this.$message.warning("请输入短信验证码")},async requestOrgSmsCode(){this.loginForm.companyName,this.loginForm.mobile,this.loginForm.imageCode;return Promise.resolve({code:0})},async requestPersonalSmsCode(){this.loginForm.mobile,this.loginForm.imageCode;return Promise.resolve({code:0})},async loginAsOrg(){this.loginForm.companyName,this.loginForm.mobile,this.loginForm.smsCode,this.loginForm.imageCode;return Promise.resolve({code:0,data:{token:"org-demo-token",loginType:"org"}})},async loginAsPersonal(){this.loginForm.mobile,this.loginForm.smsCode,this.loginForm.imageCode;return Promise.resolve({code:0,data:{token:"personal-demo-token",loginType:"personal"}})},handleLoginSuccess(t){if(!t||0!==t.code||!t.data||!t.data.token)throw new Error("登录返回数据不完整");localStorage.setItem("token",t.data.token),localStorage.setItem("loginType",t.data.loginType||this.activeType),this.$message.success("登录成功"),this.$router.push({path:"/"})}}}),n=a,l=(s("49b5"),s("2877")),r=Object(l["a"])(n,o,i,!1,null,"3d232fce",null);e["default"]=r.exports}}]); //# sourceMappingURL=chunk-389c5b8b.04f210ec.js.map