(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-42bce7aa"],{"1dae":function(e,t,s){"use strict";s.r(t);var a=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"main user-layout-register"},[e._m(0),s("a-form-model",{ref:"form",attrs:{model:e.model,rules:e.validatorRules}},[s("a-form-model-item",{attrs:{prop:"username"}},[s("a-input",{attrs:{size:"large",type:"text",autocomplete:"false",placeholder:"请输入用户名"},model:{value:e.model.username,callback:function(t){e.$set(e.model,"username",t)},expression:"model.username"}})],1),s("a-popover",{attrs:{placement:"rightTop",trigger:"click",visible:e.state.passwordLevelChecked}},[s("template",{slot:"content"},[s("div",{style:{width:"240px"}},[s("div",{class:["user-register",e.passwordLevelClass]},[e._v("强度:"),s("span",[e._v(e._s(e.passwordLevelName))])]),s("a-progress",{attrs:{percent:e.state.percent,showInfo:!1,strokeColor:e.passwordLevelColor}}),s("div",{staticStyle:{"margin-top":"10px"}},[s("span",[e._v("请至少输入 8 个字符。请不要使用容易被猜到的密码。")])])],1)]),s("a-form-model-item",{attrs:{prop:"password"}},[s("a-input",{attrs:{size:"large",type:"password",autocomplete:"false",placeholder:"至少8位密码,区分大小写"},on:{click:e.handlePasswordInputClick},model:{value:e.model.password,callback:function(t){e.$set(e.model,"password",t)},expression:"model.password"}})],1)],2),s("a-form-model-item",{attrs:{prop:"password2"}},[s("a-input",{attrs:{size:"large",type:"password",autocomplete:"false",placeholder:"确认密码"},model:{value:e.model.password2,callback:function(t){e.$set(e.model,"password2",t)},expression:"model.password2"}})],1),s("a-form-model-item",{attrs:{prop:"mobile"}},[s("a-input",{attrs:{size:"large",placeholder:"11 位手机号"},model:{value:e.model.mobile,callback:function(t){e.$set(e.model,"mobile",t)},expression:"model.mobile"}},[s("a-select",{attrs:{slot:"addonBefore",size:"large",defaultValue:"+86"},slot:"addonBefore"},[s("a-select-option",{attrs:{value:"+86"}},[e._v("+86")]),s("a-select-option",{attrs:{value:"+87"}},[e._v("+87")])],1)],1)],1),s("a-row",{attrs:{gutter:16}},[s("a-col",{staticClass:"gutter-row",attrs:{span:16}},[s("a-form-model-item",{attrs:{prop:"captcha"}},[s("a-input",{attrs:{size:"large",type:"text",placeholder:"验证码"},model:{value:e.model.captcha,callback:function(t){e.$set(e.model,"captcha",t)},expression:"model.captcha"}},[s("a-icon",{style:{color:"rgba(0,0,0,.25)"},attrs:{slot:"prefix",type:"mail"},slot:"prefix"})],1)],1)],1),s("a-col",{staticClass:"gutter-row",attrs:{span:8}},[s("a-button",{staticClass:"getCaptcha",attrs:{size:"large",disabled:e.state.smsSendBtn},domProps:{textContent:e._s(e.state.smsSendBtn?e.state.time+" s":"获取验证码")},on:{click:function(t){return t.stopPropagation(),t.preventDefault(),e.getCaptcha(t)}}})],1)],1),s("a-form-model-item",[s("a-button",{staticClass:"register-button",attrs:{size:"large",type:"primary",htmlType:"submit",loading:e.registerBtn,disabled:e.registerBtn},on:{click:function(t){return t.stopPropagation(),t.preventDefault(),e.handleSubmit(t)}}},[e._v("注册\n ")]),s("router-link",{staticClass:"login",attrs:{to:{name:"login"}}},[e._v("使用已有账户登录")])],1)],1)],1)},r=[function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("h3",[s("span",[e._v("注册")])])}],o=s("ac0d"),n=(s("7ded"),s("0fea")),i=s("4ec3");function l(e,t){var s=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),s.push.apply(s,a)}return s}function c(e){for(var t=1;t?,./]).{8,}$/;r.test(t)||s(new Error("密码由8位数字、大小写字母和特殊符号组成!")),/[0-9]/.test(t)&&a++,/[a-zA-Z]/.test(t)&&a++,/[^0-9a-zA-Z_]/.test(t)&&a++,this.state.passwordLevel=a,this.state.percent=30*a,a>=2?(a>=3&&(this.state.percent=100),s()):(0===a&&(this.state.percent=10),s(new Error("密码强度不够")))},handlePasswordCheck:function(e,t,s){var a=this.model["password"];void 0===t&&s(new Error("请输入密码")),t&&a&&t.trim()!==a.trim()&&s(new Error("两次密码不一致")),s()},handleCaptchaCheck:function(e,t,s){t?s():s(new Error("请输入验证码"))},handlePhoneCheck:function(e,t,s){var a=/^1[3456789]\d{9}$/;if(a.test(t)){var r={phone:t};Object(i["i"])(r).then((function(e){e.success?s():s("手机号已存在!")}))}else s(new Error("请输入正确手机号"))},handlePasswordInputClick:function(){this.isMobile()?this.state.passwordLevelChecked=!1:this.state.passwordLevelChecked=!0},handleSubmit:function(){var e=this;this.$refs["form"].validate((function(t){if(1==t){var s=e.model,a={username:s.username,password:s.password,phone:s.mobile,smscode:s.captcha};Object(n["i"])("/sys/user/register",a).then((function(t){t.success?e.$router.push({name:"registerResult",params:c({},s)}):e.registerFailed(t.message)}))}}))},getCaptcha:function(e){var t=this;e.preventDefault();var s=this;this.$refs["form"].validateField(["mobile"],(function(e){if(!e){t.state.smsSendBtn=!0;var a=window.setInterval((function(){s.state.time--<=0&&(s.state.time=60,s.state.smsSendBtn=!1,window.clearInterval(a))}),1e3),r=t.$message.loading("验证码发送中..",3),o={mobile:t.model.mobile,smsmode:"1"};Object(n["i"])("/sys/sms",o).then((function(e){e.success||(t.registerFailed(e.message),setTimeout(r,0)),setTimeout(r,500)})).catch((function(e){setTimeout(r,1),clearInterval(a),s.state.time=60,s.state.smsSendBtn=!1,t.requestFailed(e)}))}}))},registerFailed:function(e){this.$notification["error"]({message:"注册失败",description:e,duration:2})},requestFailed:function(e){this.$notification["error"]({message:"错误",description:((e.response||{}).data||{}).message||"请求出现错误,请稍后再试",duration:4}),this.registerBtn=!1}},watch:{"state.passwordLevel":function(e){}}},h=f,v=(s("7afd"),s("bd23"),s("2877")),w=Object(v["a"])(h,a,r,!1,null,"69c333d7",null);t["default"]=w.exports},"269f":function(e,t,s){},"7afd":function(e,t,s){"use strict";var a=s("e257"),r=s.n(a);r.a},bd23:function(e,t,s){"use strict";var a=s("269f"),r=s.n(a);r.a},e257:function(e,t,s){}}]);