|
|
@ -107,36 +107,35 @@ |
|
|
|
<el-form-item label="管理员名称" prop="nickName"> |
|
|
|
<el-input v-model="editForm.nickName" style="width: 336px" /> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="管理员角色" prop="roles"> |
|
|
|
<el-input v-model="editForm.roles" disabled style="width: 336px" /> |
|
|
|
<el-form-item label="管理员角色" prop="rolesName"> |
|
|
|
<el-input v-model="editForm.rolesName" disabled style="width: 336px" /> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="机构名称" prop="orgName"> |
|
|
|
<el-input v-model="editForm.orgName" disabled style="width: 336px" /> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item |
|
|
|
<!-- <el-form-item |
|
|
|
label="管理员状态" |
|
|
|
prop="enabled" |
|
|
|
> |
|
|
|
<el-select v-model="editForm.enabled" placeholder="请选择管理员状态" style="width: 336px"> |
|
|
|
<el-select v-model="editForm.enabled" placeholder="请选择管理员状态" @change="selectEnabled"> |
|
|
|
<el-option label="启用" value="true" /> |
|
|
|
<el-option label="关闭" value="false" /> |
|
|
|
</el-select> |
|
|
|
</el-form-item> --> |
|
|
|
<el-form-item label="管理员状态" prop="enabledName"> |
|
|
|
<el-select v-model="editForm.enabledName" style="width: 336px" @change="selectEnabled"> |
|
|
|
<el-option v-for="item in enabledData" :key="item.key" :label="item.name" :value="item" /> |
|
|
|
</el-select> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="更改手机号" prop="phone"> |
|
|
|
<el-input v-model.number="editForm.phone" style="width: 336px" /> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="验证码" prop="code" class="auth_code"> |
|
|
|
<el-input v-model.number="editForm.code" style="width: 336px" /> |
|
|
|
<div class="login-code"> |
|
|
|
<span @click="countdown()">{{ verification }}</span> |
|
|
|
</div> |
|
|
|
<el-form-item label="登录账号" prop="phone"> |
|
|
|
<el-input v-model.number="editForm.phone" disabled style="width: 336px" /> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="登录密码" prop="password"> |
|
|
|
<el-input v-model="editForm.password" style="width: 336px" /> |
|
|
|
</el-form-item> |
|
|
|
</el-form> |
|
|
|
<div slot="footer" class="dialog-footer"> |
|
|
|
<el-button type="primary" round>保存</el-button> |
|
|
|
<el-button type="primary" round @click="editUser('editForm')">保存</el-button> |
|
|
|
<el-button round @click="resetForm('editForm')">关闭</el-button> |
|
|
|
</div> |
|
|
|
</el-dialog> |
|
|
@ -200,9 +199,9 @@ |
|
|
|
</template> |
|
|
|
|
|
|
|
<script> |
|
|
|
import { FetchUserList, FetchAddUser, FetchDeleteUser } from '@/api/system/user' |
|
|
|
import { FetchUserList, FetchAddUser, FetchDeleteUser, FetchEditUser } from '@/api/system/user' |
|
|
|
import { FetchDropDownList } from '@/api/system/role' |
|
|
|
import { FetchCodeMsg } from '@/api/login' |
|
|
|
// import { FetchCodeMsg } from '@/api/login' |
|
|
|
import { isvalidPhone } from '@/utils/validate' |
|
|
|
import { parseTime } from '@/utils/index.js' |
|
|
|
import { mapGetters } from 'vuex' |
|
|
@ -253,18 +252,19 @@ export default { |
|
|
|
// 编辑 |
|
|
|
editDialogVisible: false, |
|
|
|
editForm: { |
|
|
|
id: null, |
|
|
|
nickName: '', |
|
|
|
roles: '', |
|
|
|
orgName: '', |
|
|
|
roles: [], |
|
|
|
rolesName: '', |
|
|
|
org: '', |
|
|
|
orgName: null, |
|
|
|
username: null, |
|
|
|
phone: '', |
|
|
|
code: '', |
|
|
|
password: '', |
|
|
|
enabled: null |
|
|
|
enabled: null, |
|
|
|
enabledName: null |
|
|
|
}, |
|
|
|
// 编辑 - 手机号验证 |
|
|
|
disabledSendCode: false, |
|
|
|
verification: '获取验证码', |
|
|
|
countNum: 60, |
|
|
|
enabledData: [{ key: 'true', name: '开启' }, { key: 'false', name: '关闭' }], |
|
|
|
// 表单验证 |
|
|
|
rules: { |
|
|
|
nickName: [ |
|
|
@ -288,6 +288,12 @@ export default { |
|
|
|
], |
|
|
|
enabled: [ |
|
|
|
{ required: true, trigger: 'change', message: '请选择管理员状态' } |
|
|
|
], |
|
|
|
enabledName: [ |
|
|
|
{ required: true, trigger: 'change', message: '请选择管理员状态' } |
|
|
|
], |
|
|
|
orgName: [ |
|
|
|
{ required: true, trigger: 'blur', message: '请输入机构名称' } |
|
|
|
] |
|
|
|
} |
|
|
|
} |
|
|
@ -339,7 +345,7 @@ export default { |
|
|
|
}) |
|
|
|
}, |
|
|
|
// 添加用户 |
|
|
|
addUser(formName) { |
|
|
|
addEditUser(formName) { |
|
|
|
this.$refs[formName].validate(valid => { |
|
|
|
if (valid) { |
|
|
|
if (this.user) { |
|
|
@ -350,8 +356,6 @@ export default { |
|
|
|
} |
|
|
|
const param = this.form |
|
|
|
delete param.rolesName |
|
|
|
console.log(param) |
|
|
|
console.log('param') |
|
|
|
FetchAddUser(param).then(res => { |
|
|
|
if (res.code == 200) { |
|
|
|
this.$message.success('用户创建成功') |
|
|
@ -398,63 +402,100 @@ export default { |
|
|
|
this.form.rolesName = obj.name |
|
|
|
this.form.roles.push(obj) |
|
|
|
}, |
|
|
|
// 选择设备方向处理 |
|
|
|
selectEnabled(selVal) { |
|
|
|
this.editForm.enabled = selVal.key |
|
|
|
this.editForm.enabledName = selVal.name |
|
|
|
}, |
|
|
|
// 当前用户项不可选中 |
|
|
|
checkboxT(row, rowIndex) { |
|
|
|
return row.id !== this.user.id |
|
|
|
}, |
|
|
|
// 编辑 |
|
|
|
editFormData(index, row) { |
|
|
|
console.log(row) |
|
|
|
this.editDialogVisible = true |
|
|
|
this.editForm.nickName = row.nickName |
|
|
|
this.editForm.id = row.id |
|
|
|
if (row.roles) { |
|
|
|
row.roles.forEach(item => { |
|
|
|
this.editForm.roles = item.name |
|
|
|
this.editForm.rolesName = item.name |
|
|
|
item.description = '全部' |
|
|
|
this.editForm.roles.push(item) |
|
|
|
}) |
|
|
|
} |
|
|
|
if (row.org) { |
|
|
|
this.editForm.orgName = row.org.name |
|
|
|
this.editForm.org = row.org |
|
|
|
} |
|
|
|
this.editForm.phone = row.phone |
|
|
|
this.editForm.enabled = row.enabled ? '开启' : '关闭' |
|
|
|
this.editForm.username = row.username |
|
|
|
this.editForm.enabledName = row.enabled ? '开启' : '关闭' |
|
|
|
this.editForm.enabled = row.enabled |
|
|
|
}, |
|
|
|
// 获取验证码 |
|
|
|
getAuthCode() { |
|
|
|
const param = { |
|
|
|
phone: this.editForm.phone |
|
|
|
} |
|
|
|
FetchCodeMsg(param).then(res => { |
|
|
|
if (res.code == 200) { |
|
|
|
this.countdown() |
|
|
|
// 编辑用户 - 提交 |
|
|
|
editUser(formName) { |
|
|
|
this.$refs[formName].validate(valid => { |
|
|
|
if (valid) { |
|
|
|
const param = this.editForm |
|
|
|
delete param.rolesName |
|
|
|
delete param.enabledName |
|
|
|
delete param.orgName |
|
|
|
console.log(param) |
|
|
|
console.log('param') |
|
|
|
FetchEditUser(param).then(res => { |
|
|
|
if (res.code == 200) { |
|
|
|
this.$message.success('该用户编辑成功') |
|
|
|
this.editDialogVisible = false |
|
|
|
this.getUserList(this.page) |
|
|
|
} else { |
|
|
|
this.$message.error(res.msg) |
|
|
|
} |
|
|
|
}) |
|
|
|
} else { |
|
|
|
this.$message.error(res.msg) |
|
|
|
console.log('error submit!!') |
|
|
|
return false |
|
|
|
} |
|
|
|
}).catch(res => { |
|
|
|
console.log(res) |
|
|
|
}) |
|
|
|
}, |
|
|
|
// 短信验证码倒计时 |
|
|
|
countdown() { |
|
|
|
if (this.disabledSendCode) { |
|
|
|
return |
|
|
|
} |
|
|
|
if (!/^1\d{10}$/.test(this.editForm.phone)) { |
|
|
|
this.$message.error('手机号错误,请重新输入') |
|
|
|
return |
|
|
|
} |
|
|
|
this.getAuthCode() |
|
|
|
this.disabledSendCode = true |
|
|
|
this.countNum = 60 |
|
|
|
const timer = setInterval(() => { |
|
|
|
this.verification = this.countNum + '重新获取' |
|
|
|
this.countNum -= 1 |
|
|
|
if (this.countNum < 1) { |
|
|
|
clearInterval(timer) |
|
|
|
this.verification = '重新获取' |
|
|
|
this.disabledSendCode = false |
|
|
|
console.log('倒计时结束') |
|
|
|
} |
|
|
|
}, 1000) |
|
|
|
}, |
|
|
|
// // 获取验证码 |
|
|
|
// getAuthCode() { |
|
|
|
// const param = { |
|
|
|
// phone: this.editForm.phone |
|
|
|
// } |
|
|
|
// FetchCodeMsg(param).then(res => { |
|
|
|
// if (res.code == 200) { |
|
|
|
// this.countdown() |
|
|
|
// } else { |
|
|
|
// this.$message.error(res.msg) |
|
|
|
// } |
|
|
|
// }).catch(res => { |
|
|
|
// console.log(res) |
|
|
|
// }) |
|
|
|
// }, |
|
|
|
// // 短信验证码倒计时 |
|
|
|
// countdown() { |
|
|
|
// if (this.disabledSendCode) { |
|
|
|
// return |
|
|
|
// } |
|
|
|
// if (!/^1\d{10}$/.test(this.editForm.phone)) { |
|
|
|
// this.$message.error('手机号错误,请重新输入') |
|
|
|
// return |
|
|
|
// } |
|
|
|
// this.getAuthCode() |
|
|
|
// this.disabledSendCode = true |
|
|
|
// this.countNum = 60 |
|
|
|
// const timer = setInterval(() => { |
|
|
|
// this.verification = this.countNum + '重新获取' |
|
|
|
// this.countNum -= 1 |
|
|
|
// if (this.countNum < 1) { |
|
|
|
// clearInterval(timer) |
|
|
|
// this.verification = '重新获取' |
|
|
|
// this.disabledSendCode = false |
|
|
|
// console.log('倒计时结束') |
|
|
|
// } |
|
|
|
// }, 1000) |
|
|
|
// }, |
|
|
|
// 重置表单数据 |
|
|
|
resetForm(formName) { |
|
|
|
this.addDialogVisible = false |
|
|
|