|
|
|
@ -21,15 +21,9 @@
|
|
|
|
|
<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> |
|
|
|
|
<el-form-item label="关联角色" prop="roleIds"> |
|
|
|
|
<el-select v-model="ruleForm.roleIds" placeholder="请选择" clearable class="w100" multiple> |
|
|
|
|
<el-option |
|
|
|
|
v-for="role in roleList" |
|
|
|
|
:key="'role-'+role.id" |
|
|
|
|
:label="role.name" |
|
|
|
|
:value="role.id"> |
|
|
|
|
</el-option> |
|
|
|
|
<el-option v-for="role in roleList" :key="'role-' + role.id" :label="role.name" :value="role.id"></el-option> |
|
|
|
|
</el-select> |
|
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
|
|
</el-col> |
|
|
|
|
<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> |
|
|
|
|
<el-form-item label="部门" prop="deptId"> |
|
|
|
@ -89,9 +83,7 @@
|
|
|
|
|
<el-col :span="24"> |
|
|
|
|
<el-form-item label="用户类型"> |
|
|
|
|
<el-radio-group v-model="ruleForm.isAdmin"> |
|
|
|
|
<el-radio |
|
|
|
|
:label="1" |
|
|
|
|
>后台管理员</el-radio> |
|
|
|
|
<el-radio :label="1">后台管理员</el-radio> |
|
|
|
|
<!-- <el-radio--> |
|
|
|
|
<!-- :label="0"--> |
|
|
|
|
<!-- >前台用户</el-radio>--> |
|
|
|
@ -117,21 +109,20 @@
|
|
|
|
|
|
|
|
|
|
<script lang="ts"> |
|
|
|
|
import { reactive, toRefs, onMounted, defineComponent, ref, unref } from 'vue'; |
|
|
|
|
import {getParams, addUser, editUser, getEditUser} from "/@/api/system/user"; |
|
|
|
|
import {ElMessage} from "element-plus"; |
|
|
|
|
|
|
|
|
|
import { getParams, addUser, editUser, getEditUser } from '/@/api/system/user'; |
|
|
|
|
import { ElMessage } from 'element-plus'; |
|
|
|
|
|
|
|
|
|
export default defineComponent({ |
|
|
|
|
name: 'systemEditUser', |
|
|
|
|
props: { |
|
|
|
|
deptData: { |
|
|
|
|
type: Array, |
|
|
|
|
default:()=>[] |
|
|
|
|
default: () => [], |
|
|
|
|
}, |
|
|
|
|
genderData: { |
|
|
|
|
type: Array, |
|
|
|
|
default:()=>[] |
|
|
|
|
} |
|
|
|
|
default: () => [], |
|
|
|
|
}, |
|
|
|
|
}, |
|
|
|
|
setup(prop, { emit }) { |
|
|
|
|
const roleList = ref([]); |
|
|
|
@ -156,41 +147,31 @@ export default defineComponent({
|
|
|
|
|
}, |
|
|
|
|
//表单校验 |
|
|
|
|
rules: { |
|
|
|
|
userName: [ |
|
|
|
|
{ required: true, message: "用户名称不能为空", trigger: "blur" } |
|
|
|
|
], |
|
|
|
|
nickName: [ |
|
|
|
|
{ required: true, message: "用户昵称不能为空", trigger: "blur" } |
|
|
|
|
], |
|
|
|
|
deptId: [ |
|
|
|
|
{ required: true, message: "归属部门不能为空", trigger: "blur" } |
|
|
|
|
], |
|
|
|
|
password: [ |
|
|
|
|
{ required: true, message: "用户密码不能为空", trigger: "blur" } |
|
|
|
|
], |
|
|
|
|
roleIds: [ |
|
|
|
|
{ required: true, message: "用户密码不能为空", trigger: "blur" } |
|
|
|
|
], |
|
|
|
|
userName: [{ required: true, message: '用户名称不能为空', trigger: 'blur' }], |
|
|
|
|
nickName: [{ required: true, message: '用户昵称不能为空', trigger: 'blur' }], |
|
|
|
|
deptId: [{ required: true, message: '归属部门不能为空', trigger: 'blur' }], |
|
|
|
|
password: [{ required: true, message: '用户密码不能为空', trigger: 'blur' }], |
|
|
|
|
roleIds: [{ required: true, message: '用户密码不能为空', trigger: 'blur' }], |
|
|
|
|
email: [ |
|
|
|
|
{ |
|
|
|
|
type: "email", |
|
|
|
|
type: 'email', |
|
|
|
|
message: "'请输入正确的邮箱地址", |
|
|
|
|
trigger: ["blur", "change"] |
|
|
|
|
} |
|
|
|
|
trigger: ['blur', 'change'], |
|
|
|
|
}, |
|
|
|
|
], |
|
|
|
|
// mobile: [ |
|
|
|
|
mobile: [ |
|
|
|
|
// { required: true, message: "手机号码不能为空", trigger: "blur" }, |
|
|
|
|
// { |
|
|
|
|
// pattern: /^1[3|4|5|6|7|8|9][0-9]\d{8}$/, |
|
|
|
|
// message: "请输入正确的手机号码", |
|
|
|
|
// trigger: "blur" |
|
|
|
|
// } |
|
|
|
|
// ] |
|
|
|
|
} |
|
|
|
|
{ |
|
|
|
|
pattern: /^1[3|4|5|6|7|8|9][0-9]\d{8}$/, |
|
|
|
|
message: '请输入正确的手机号码', |
|
|
|
|
trigger: 'blur', |
|
|
|
|
}, |
|
|
|
|
], |
|
|
|
|
}, |
|
|
|
|
}); |
|
|
|
|
// 打开弹窗 |
|
|
|
|
const openDialog = (row?: any) => { |
|
|
|
|
resetForm() |
|
|
|
|
resetForm(); |
|
|
|
|
if (row) { |
|
|
|
|
getEditUser(row.id).then((res: any) => { |
|
|
|
|
const user = res.data.user; |
|
|
|
@ -209,7 +190,7 @@ export default defineComponent({
|
|
|
|
|
roleIds: res.data.checkedRoleIds ?? [], |
|
|
|
|
isAdmin: user.isAdmin, |
|
|
|
|
}; |
|
|
|
|
}) |
|
|
|
|
}); |
|
|
|
|
} |
|
|
|
|
state.isShowDialog = true; |
|
|
|
|
}; |
|
|
|
@ -232,14 +213,14 @@ export default defineComponent({
|
|
|
|
|
addUser(state.ruleForm).then(() => { |
|
|
|
|
ElMessage.success('用户添加成功'); |
|
|
|
|
closeDialog(); // 关闭弹窗 |
|
|
|
|
emit('getUserList') |
|
|
|
|
emit('getUserList'); |
|
|
|
|
}); |
|
|
|
|
} else { |
|
|
|
|
//修改 |
|
|
|
|
editUser(state.ruleForm).then(() => { |
|
|
|
|
ElMessage.success('用户修改成功'); |
|
|
|
|
closeDialog(); // 关闭弹窗 |
|
|
|
|
emit('getUserList') |
|
|
|
|
emit('getUserList'); |
|
|
|
|
}); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
@ -272,7 +253,7 @@ export default defineComponent({
|
|
|
|
|
postIds: [], |
|
|
|
|
roleIds: [], |
|
|
|
|
isAdmin: 1, |
|
|
|
|
} |
|
|
|
|
}; |
|
|
|
|
}; |
|
|
|
|
return { |
|
|
|
|
openDialog, |
|
|
|
|