|
|
@@ -296,34 +296,44 @@
|
|
|
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
|
|
|
<el-row>
|
|
|
<el-col :span="10">
|
|
|
- <el-form-item label="用户名称" prop="username" >
|
|
|
+ <el-form-item label="用户名称" prop="username">
|
|
|
<el-input
|
|
|
v-model="form.username"
|
|
|
placeholder="请输入用户名"
|
|
|
maxlength="30"
|
|
|
- :readonly="form.source==1"/>
|
|
|
+ :readonly="form.source == 1"
|
|
|
+ />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="10">
|
|
|
- <el-form-item label="用户昵称" prop="name" >
|
|
|
+ <el-form-item label="用户昵称" prop="name">
|
|
|
<el-input
|
|
|
v-model="form.name"
|
|
|
placeholder="请输入用户昵称"
|
|
|
maxlength="30"
|
|
|
- :readonly="form.source==1"/>
|
|
|
+ :readonly="form.source == 1"
|
|
|
+ />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="10">
|
|
|
- <el-form-item label="所属机构" prop="orgId" >
|
|
|
- <tree-select v-model="form.orgId" :options="deptOptions" :show-count="true" :normalizer="tenantIdnormalizer"
|
|
|
- :props="{ checkStrictly: true, label: 'name' }" placeholder="请选择归属机构" :disabled="form.source==1"/>
|
|
|
+ <el-form-item label="所属机构" prop="orgId">
|
|
|
+ <tree-select
|
|
|
+ v-model="form.orgId"
|
|
|
+ :options="deptOptions"
|
|
|
+ :show-count="true"
|
|
|
+ :normalizer="tenantIdnormalizer"
|
|
|
+ :props="{ checkStrictly: true, label: 'name' }"
|
|
|
+ placeholder="请选择归属机构"
|
|
|
+ :disabled="form.source == 1"
|
|
|
+ />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="10">
|
|
|
<el-form-item label="用户角色" prop="roleIds">
|
|
|
<el-select
|
|
|
+ @visible-change="selectRoles"
|
|
|
style="width: 100%"
|
|
|
v-model="form.roleIds"
|
|
|
multiple
|
|
|
@@ -342,21 +352,22 @@
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="10">
|
|
|
- <el-form-item label="手机号码" prop="phone" >
|
|
|
+ <el-form-item label="手机号码" prop="phone">
|
|
|
<el-input
|
|
|
v-model="form.phone"
|
|
|
placeholder="请输入手机号码"
|
|
|
maxlength="11"
|
|
|
- :readonly="form.source==1"/>
|
|
|
+ :readonly="form.source == 1"
|
|
|
+ />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="10">
|
|
|
- <el-form-item label="用户性别" >
|
|
|
+ <el-form-item label="用户性别">
|
|
|
<el-select
|
|
|
style="width: 100%"
|
|
|
v-model="form.gender"
|
|
|
placeholder="请选择性别"
|
|
|
- :disabled="form.source==1"
|
|
|
+ :disabled="form.source == 1"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in dict.type.sys_user_sex"
|
|
|
@@ -393,12 +404,13 @@
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="14">
|
|
|
- <el-form-item label="状态" >
|
|
|
+ <el-form-item label="状态">
|
|
|
<el-radio-group v-model="form.isLock">
|
|
|
<el-radio
|
|
|
v-for="dict in dict.type.sys_normal_disable"
|
|
|
:key="`${dict.value}`"
|
|
|
- :label="dict.value" :disabled="form.source==1"
|
|
|
+ :label="dict.value"
|
|
|
+ :disabled="form.source == 1"
|
|
|
>{{ dict.label }}</el-radio
|
|
|
>
|
|
|
</el-radio-group>
|
|
|
@@ -466,6 +478,7 @@ import {
|
|
|
updateUser,
|
|
|
resetUserPwd,
|
|
|
changeUserStatus,
|
|
|
+ selectrolesByOrgId,
|
|
|
} from "@/api/system/user";
|
|
|
import { getToken } from "@/utils/auth";
|
|
|
import { deptTreeSelect } from "@/api/system/public";
|
|
|
@@ -568,17 +581,21 @@ export default {
|
|
|
{ required: true, message: "用户角色不能为空", trigger: "blur" },
|
|
|
],
|
|
|
password: [
|
|
|
- { required: true, message: '密码不能为空', trigger: 'blur' },
|
|
|
- { min: 8, message: '密码至少为8位', trigger: 'blur' },
|
|
|
+ { required: true, message: "密码不能为空", trigger: "blur" },
|
|
|
+ { min: 8, message: "密码至少为8位", trigger: "blur" },
|
|
|
{
|
|
|
validator: (rule, value, callback) => {
|
|
|
- if (!/[a-z]/.test(value) || !/[A-Z]/.test(value) || !/\d/.test(value)) {
|
|
|
- callback(new Error('密码必须包含大小写字母和数字'));
|
|
|
+ if (
|
|
|
+ !/[a-z]/.test(value) ||
|
|
|
+ !/[A-Z]/.test(value) ||
|
|
|
+ !/\d/.test(value)
|
|
|
+ ) {
|
|
|
+ callback(new Error("密码必须包含大小写字母和数字"));
|
|
|
} else {
|
|
|
callback();
|
|
|
}
|
|
|
},
|
|
|
- trigger: 'blur',
|
|
|
+ trigger: "blur",
|
|
|
},
|
|
|
],
|
|
|
orgId: [
|
|
|
@@ -614,6 +631,12 @@ export default {
|
|
|
},
|
|
|
mounted() {},
|
|
|
methods: {
|
|
|
+ selectRoles(){
|
|
|
+ selectrolesByOrgId({orgId:this.form.orgId}).then((res)=>{
|
|
|
+ // console.log(res);
|
|
|
+ this.roleOptions=res.data;
|
|
|
+ })
|
|
|
+ },
|
|
|
/** 查询机构树数据 */
|
|
|
getDeptTree() {
|
|
|
deptTreeSelect().then((response) => {
|
|
|
@@ -821,12 +844,16 @@ export default {
|
|
|
handleDelete(row) {
|
|
|
console.log(row);
|
|
|
const userIds = row.id || this.ids;
|
|
|
- this.$modal.confirm('是否确认删除用户昵称为"' + row.name + '"的数据项?').then(function () {
|
|
|
- return delUser(userIds);
|
|
|
- }).then(() => {
|
|
|
- this.getList();
|
|
|
- this.$modal.msgSuccess("删除成功");
|
|
|
- }).catch(() => { });
|
|
|
+ this.$modal
|
|
|
+ .confirm('是否确认删除用户昵称为"' + row.name + '"的数据项?')
|
|
|
+ .then(function () {
|
|
|
+ return delUser(userIds);
|
|
|
+ })
|
|
|
+ .then(() => {
|
|
|
+ this.getList();
|
|
|
+ this.$modal.msgSuccess("删除成功");
|
|
|
+ })
|
|
|
+ .catch(() => {});
|
|
|
},
|
|
|
/** 导出按钮操作 */
|
|
|
handleExport() {
|
|
|
@@ -877,6 +904,4 @@ export default {
|
|
|
};
|
|
|
</script>
|
|
|
<style lang="scss"></style>
|
|
|
-<style lang="scss" scoped>
|
|
|
-
|
|
|
-</style>
|
|
|
+<style lang="scss" scoped></style>
|