|
|
|
@ -13,12 +13,12 @@ |
|
|
|
</div> |
|
|
|
<el-form-item prop="authType"> |
|
|
|
<el-radio-group v-model="loginForm.authType"> |
|
|
|
<el-radio label="password_display_userid">账户密码登录</el-radio> |
|
|
|
<el-radio label="password_display_userid">账户密码</el-radio> |
|
|
|
<el-radio label="sms">短信验证码快速登录</el-radio> |
|
|
|
</el-radio-group> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item prop="displayUserid" v-show="loginForm.authType=='password_display_userid'"> |
|
|
|
<el-input name="displayUserid" type="text" v-model="loginForm.displayUserid" autoComplete="on" placeholder="用户编号" > |
|
|
|
<el-form-item prop="userloginid" v-show="loginForm.authType=='password_display_userid'"> |
|
|
|
<el-input title="登陆账号" name="userloginid" type="text" v-model="loginForm.userloginid" autoComplete="on" placeholder="用户编号" > |
|
|
|
<template slot="prepend">账号</template> |
|
|
|
</el-input> |
|
|
|
</el-form-item> |
|
|
|
@ -34,8 +34,13 @@ |
|
|
|
<el-form-item prop="phoneno" v-show="loginForm.authType=='sms'"> |
|
|
|
<el-input name="phoneno" type="text" v-model="loginForm.phoneno" autoComplete="on" placeholder="手机号码"> |
|
|
|
<template slot="prepend">手机号码 </template> |
|
|
|
<el-button slot="append" @click.prevent="sendPhonenoSmsCode">发送验证码</el-button> |
|
|
|
<el-button slot="append" @click.prevent="sendPhonenoSmsCode" v-loading="load.sendSmsCode">发送验证码</el-button> |
|
|
|
</el-input> |
|
|
|
|
|
|
|
<span v-if="users!=null && users.length>0"> 该手机号有{{users.length}}个账户,请选择需要登录的账户<font color="blue"></font> |
|
|
|
<br> |
|
|
|
<el-tag v-if="selectUser && selectUser.userid">已选择:{{selectUser.username}}</el-tag> <el-button type="text" @click="phonenoUsersVisible=true">选择账户</el-button> |
|
|
|
</span> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item prop="smsCode" v-show="loginForm.authType=='sms'"> |
|
|
|
<el-input name="smsCode" type="text" v-model="loginForm.smsCode" autoComplete="on" placeholder="短信验证码"> |
|
|
|
@ -87,6 +92,27 @@ |
|
|
|
<el-dialog title="新增机构" :visible.sync="addBranchFormVisible" width="50%" :close-on-click-modal="false" append-to-body> |
|
|
|
<branch-add :visible="addBranchFormVisible" @cancel="addBranchFormVisible=false" @submit="afterAddBranchSubmit"></branch-add> |
|
|
|
</el-dialog> |
|
|
|
|
|
|
|
<el-dialog |
|
|
|
title="查看已有账户" |
|
|
|
:visible.sync="phonenoUsersVisible" |
|
|
|
width="600" append-to-body> |
|
|
|
<el-table :data="users"> |
|
|
|
<el-table-column prop="userid" label="编号"> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column prop="displayUserid" label="登录账号"> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column prop="username" label="姓名"> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column prop="branchName" label="企业"> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column label="操作"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<el-button type="primary" @click="onUserSelect(scope.row)">选中</el-button> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
</el-table> |
|
|
|
</el-dialog> |
|
|
|
</div> |
|
|
|
</template> |
|
|
|
|
|
|
|
@ -96,6 +122,7 @@ import LangSelect from '@/components/LangSelect'; |
|
|
|
import SocialSign from './socialsignin'; |
|
|
|
import Register from './register'; |
|
|
|
import ResetPassword from './resetPassword'; |
|
|
|
import { queryByUserloginid } from '@/api/login'; |
|
|
|
|
|
|
|
import BranchAdd from './BranchAdd'; |
|
|
|
import { mapGetters } from 'vuex'; |
|
|
|
@ -151,14 +178,14 @@ export default { |
|
|
|
} |
|
|
|
return { |
|
|
|
loginForm: { |
|
|
|
displayUserid: '', |
|
|
|
userloginid: '', |
|
|
|
password: '', |
|
|
|
authType:'password_display_userid',//password/sms/password_display_userid 分别为账户密码、短信验证码快捷登录 |
|
|
|
phoneno:'',//手机号码 |
|
|
|
smsCode:'',//短信验证码 |
|
|
|
}, |
|
|
|
loginRules: { |
|
|
|
displayUserid: [{ required: true, trigger: 'blur', validator: validateDisplayUserid }], |
|
|
|
userloginid: [{ required: true, trigger: 'blur', validator: validateDisplayUserid }], |
|
|
|
password: [{ required: true, trigger: 'blur', validator: validatePassword }], |
|
|
|
phoneno: [{ required: true, trigger: 'blur', validator: validatePhoneno }], |
|
|
|
smsCode: [{ required: true, trigger: 'blur', validator: validateSmsCode }], |
|
|
|
@ -166,13 +193,16 @@ export default { |
|
|
|
passwordType: 'password', |
|
|
|
|
|
|
|
loading: false, |
|
|
|
load:{sendSmsCode:false,}, |
|
|
|
showResetPasswordDialog:false,//显示忘记密码重置密码窗口 |
|
|
|
showTpLoginDialog: false, //显示第三方登陆对话框 |
|
|
|
showRegisterDialog: false,//显示注册窗口 |
|
|
|
deptSelectVisible:false,//显示选择部门对话框 |
|
|
|
userDeptid:'',//选中的部门编号 |
|
|
|
userBranchId:'',//选中的部门对应的机构号 |
|
|
|
addBranchFormVisible:false, //显示添加机构对话框 |
|
|
|
users:[], |
|
|
|
phonenoUsersVisible:false, |
|
|
|
selectUser:null, |
|
|
|
} |
|
|
|
}, |
|
|
|
methods: { |
|
|
|
@ -184,17 +214,30 @@ export default { |
|
|
|
} |
|
|
|
}, |
|
|
|
sendPhonenoSmsCode(){ |
|
|
|
this.load.sendSmsCode=true; |
|
|
|
this.$refs.loginForm.validateField("phoneno",(err)=>{ |
|
|
|
if(err){ |
|
|
|
this.$message.error(err); |
|
|
|
this.load.sendSmsCode=false; |
|
|
|
return; |
|
|
|
}else{ |
|
|
|
var params={ |
|
|
|
phoneno:this.loginForm.phoneno, |
|
|
|
scene:"login" |
|
|
|
} |
|
|
|
|
|
|
|
sendSmsCode(params).then(res=>{ |
|
|
|
this.load.sendSmsCode=false; |
|
|
|
if(res.data.tips.isOk){ |
|
|
|
this.$message.info(res.data.tips.msg); |
|
|
|
this.$message.success(res.data.tips.msg); |
|
|
|
this.queryByUserloginid(); |
|
|
|
}else{ |
|
|
|
this.$message.error(res.data.tips.msg); |
|
|
|
} |
|
|
|
}) |
|
|
|
}).catch(()=>this.load.sendSmsCode=false) |
|
|
|
} |
|
|
|
}); |
|
|
|
|
|
|
|
}, |
|
|
|
handleLogin() { |
|
|
|
|
|
|
|
@ -202,29 +245,29 @@ export default { |
|
|
|
if (valid) { |
|
|
|
this.loading = true |
|
|
|
let params={ |
|
|
|
displayUserid:this.loginForm.displayUserid, |
|
|
|
userloginid:this.loginForm.userloginid, |
|
|
|
password:md5(this.loginForm.password), |
|
|
|
deptid:this.userDeptid, |
|
|
|
authType:this.loginForm.authType, |
|
|
|
phoneno:this.loginForm.phoneno, |
|
|
|
smsCode:this.loginForm.smsCode, |
|
|
|
branchId:this.userBranchId, |
|
|
|
smsCode:this.loginForm.smsCode |
|
|
|
} |
|
|
|
var loginParams={ } |
|
|
|
if(params.authType=='password_display_userid'){ |
|
|
|
loginParams.userloginid=params.displayUserid |
|
|
|
loginParams.userloginid=params.userloginid |
|
|
|
loginParams.password=params.password |
|
|
|
loginParams.grantType="password" |
|
|
|
loginParams.authType='password_display_userid' |
|
|
|
//loginParams.deptid=params.deptid |
|
|
|
loginParams.branchId=params.branchId |
|
|
|
loginParams.deptid=params.deptid |
|
|
|
}else if(params.authType=='sms'){ |
|
|
|
loginParams.userloginid=params.phoneno |
|
|
|
loginParams.password=params.smsCode |
|
|
|
loginParams.grantType="password" |
|
|
|
loginParams.authType="sms" |
|
|
|
//loginParams.deptid=params.deptid |
|
|
|
loginParams.branchId=params.branchId |
|
|
|
loginParams.deptid=params.deptid |
|
|
|
} |
|
|
|
if(this.selectUser){ |
|
|
|
loginParams.userid=this.selectUser.userid |
|
|
|
} |
|
|
|
this.$store.dispatch("LoginByUserloginid",loginParams).then(res => { |
|
|
|
this.loading = false |
|
|
|
@ -235,11 +278,7 @@ export default { |
|
|
|
//this.userDeptid=res2.data.userInfo.deptid |
|
|
|
this.loading = false |
|
|
|
if(res2.data.tips.isOk==true){ |
|
|
|
if(this.$store.state.user.myBranchs==null ||this.$store.state.user.myBranchs.length==0||this.$store.state.user.myDepts==null || this.$store.state.user.myDepts.length<=0){ |
|
|
|
//if(1==1){ |
|
|
|
//this.$message.error("亲,您不在任何一个公司或者部门中,需要【先创建公司】\n 或者请【管理员加您进入公司】哦"); |
|
|
|
this.addBranchFormVisible=true; |
|
|
|
}else if(this.$store.state.user.myDepts.length>1 ){ |
|
|
|
if(this.$store.state.user.myDepts.length>1 ){ |
|
|
|
//this.$message.info("亲,您在多个部门中任职,我分不清您要登陆哪个部门,请选择一个部门登陆吧"); |
|
|
|
if( !this.userDeptid ){ |
|
|
|
this.userDeptid=res2.data.userInfo.deptid |
|
|
|
@ -283,10 +322,8 @@ export default { |
|
|
|
return |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
if(this.$store.state.user.userInfo.deptid!=this.userDeptid){ |
|
|
|
let depts=this.myDepts.filter(d=>d.deptid==this.userDeptid) |
|
|
|
this.userBranchId=depts[0].branchId |
|
|
|
if(this.$store.state.user.userInfo.deptid!=this.userDeptid){ |
|
|
|
this.handleLogin(); |
|
|
|
return; |
|
|
|
}else{ |
|
|
|
@ -329,6 +366,24 @@ export default { |
|
|
|
// this.$router.push({ path: '/' }) |
|
|
|
// }) |
|
|
|
// } |
|
|
|
}, |
|
|
|
queryByUserloginid(){ |
|
|
|
var params={userloginid:this.loginForm.userloginid} |
|
|
|
if(this.loginForm.authType=='sms'){ |
|
|
|
params.idType="phoneno" |
|
|
|
}else{ |
|
|
|
params.idType='all' |
|
|
|
} |
|
|
|
queryByUserloginid(params).then(res=>{ |
|
|
|
var tips = res.data.tips; |
|
|
|
if(tips.isOk){ |
|
|
|
this.users=res.data.data |
|
|
|
} |
|
|
|
}) |
|
|
|
}, |
|
|
|
onUserSelect(user){ |
|
|
|
this.selectUser=user |
|
|
|
this.phonenoUsersVisible=false; |
|
|
|
} |
|
|
|
}, |
|
|
|
created() { |
|
|
|
|