From 22bf644b3fc85763be3ad0c5e348d2bee38e2444 Mon Sep 17 00:00:00 2001 From: 马宇豪 <978517621@qq.com> Date: 星期三, 22 三月 2023 17:07:48 +0800 Subject: [PATCH] Default Changelist --- src/views/system/user/component/userDialog.vue | 49 ++++++++++++++++++++++++++++++++++++++----------- 1 files changed, 38 insertions(+), 11 deletions(-) diff --git a/src/views/system/user/component/userDialog.vue b/src/views/system/user/component/userDialog.vue index 0eb4dd7..2e0d159 100644 --- a/src/views/system/user/component/userDialog.vue +++ b/src/views/system/user/component/userDialog.vue @@ -4,7 +4,7 @@ <el-form :model="userForm" size="default" ref="userRef" :rules="userFormRules" label-width="90px"> <el-row :gutter="35"> <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20" v-if="disabled"> - <el-form-item label="用户名"> + <el-form-item label="用户名" prop="username"> <el-input v-model.trim="userForm.username" :disabled="disabled" placeholder="" clearable></el-input> </el-form-item> </el-col> @@ -26,17 +26,24 @@ </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> + <el-form-item label="职务" prop="positionId"> + <el-select v-model="userForm.positionId" placeholder="请选择" clearable class="w100"> + <el-option v-for="item in dutyData" :key="item.positionId" :label="item.positionName" :value="item.positionId"> </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="phone"> <el-input v-model.trim="userForm.phone" placeholder="请输入手机号" clearable></el-input> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> - <el-form-item label="身份证" prop="identify"> + <el-form-item label="身份证"> <el-input v-model.trim="userForm.identify" placeholder="请输入身份证" clearable></el-input> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> - <el-form-item label="邮箱" prop="email"> + <el-form-item label="邮箱"> <el-input v-model.trim="userForm.email" placeholder="请输入" clearable></el-input> </el-form-item> </el-col> @@ -58,7 +65,13 @@ </el-input> </el-form-item> </el-col> - + <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> + <el-form-item label="用户类型" prop="type"> + <el-select v-model="userForm.type" placeholder="请选择" clearable class="w100"> + <el-option v-for="item in userTypeList.filter(item => userForm.type === 1 ? item.id === 1 : item.id !== 1)" :key="item.id" :label="item.name" :value="item.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="用户状态">--> <!-- <el-switch v-model="userForm.status" inline-prompt active-value = 1 inactive-value= 0 active-text="启" inactive-text="禁"></el-switch>--> @@ -84,7 +97,9 @@ // 定义接口来定义对象的类型 interface DeptData {} interface roleData {} +interface dutyData {} interface sexData {} +interface type {} interface UserState { title: string; disabled: boolean; @@ -94,10 +109,11 @@ realName: string; roleId: number | null; depId: number | null; + positionId: number | null; phone: string; email: string; gender: number | null; - positionId: number | null; + type: number | null; password: string; expireTime: string; status: number; @@ -108,7 +124,9 @@ }, departmentData: Array<DeptData>; roleData: Array<roleData>; + dutyData: Array<dutyData>; sexList: Array<sexData>; + userTypeList: Array<type>; } export default defineComponent({ @@ -129,7 +147,8 @@ identify: '', gender: null, // 性别 password: '', // 账户密码 - positionId: 1, // 岗位 + positionId: null, // 岗位 + type: null, // 用户类型 expireTime: '', // 账户过期 status: 1 // 用户状态 }, @@ -138,25 +157,32 @@ realName: [{ required: true, message: '请填写真实姓名', trigger: 'blur' }], roleId: [{ required: true, message: '请选择用户角色', trigger: 'change' }], depId: [{ required: true, message: '请选择部门', trigger: 'change' }], + positionId: [{ required: true, message: '请选择职务', trigger: 'change' }], phone: [{ required: true, message: '请填写手机号', trigger: 'blur' }], - email: [{ required: true, message: '请填写邮箱地址', trigger: 'blur' }], - identify: [{ required: true, message: '请填写身份证号', trigger: 'blur' }], + type: [{ required: true, message: '请填写用户类型', trigger: 'blur' }], gender: [{ required: true, message: '请选择性别', trigger: 'change' }], expireTime: [{ required: true, message: '请输入账户过期时间', trigger: 'blur' }], password: [{ required: true, message: '请输入账户密码', trigger: 'blur' }], }, departmentData: [], // 部门数据 roleData: [], //角色数据 + dutyData:[], //职务数据 sexList: [ { id: 1, name: '男' }, { id: 0, name: '女' } - ] + ], + userTypeList: [ + { id: 1, name: '超级管理员' }, + { id: 2, name: '管理员' }, + { id: 3, name: '普通员工' } + ], }); // 打开弹窗 - const openDialog = (type: string, value: any, departmentList: [], roleList: []) => { + const openDialog = (type: string, value: any, departmentList: [], roleList: [], dutyList:[]) => { state.isShowUserDialog = true; state.departmentData = departmentList; state.roleData = roleList; + state.dutyData = dutyList if (type === '新增') { state.disabled = false state.title = '新增用户'; @@ -168,8 +194,9 @@ phone: '', email: '', identify: '', - positionId: 1, + positionId: null, gender: null, + type: null, password: '', expireTime: '', status: 1 -- Gitblit v1.9.2