From f29900986f01cf5d39b5755cec674825cef27961 Mon Sep 17 00:00:00 2001 From: gaoshp <291585735@qq.com> Date: 星期二, 19 十一月 2024 19:25:41 +0800 Subject: [PATCH] update --- src/views/console/system/addUser.vue | 79 +++++++++++++++++++++++++++------------ 1 files changed, 54 insertions(+), 25 deletions(-) diff --git a/src/views/console/system/addUser.vue b/src/views/console/system/addUser.vue index 4718f61..cebe197 100644 --- a/src/views/console/system/addUser.vue +++ b/src/views/console/system/addUser.vue @@ -13,8 +13,8 @@ </el-form-item> </el-col> <el-col :span="12"> - <el-form-item label="瀵嗙爜" prop="password"> - <el-input v-model="form.password" placeholder="瀵嗙爜" clearable></el-input> + <el-form-item label="瀵嗙爜"> + <el-input v-model="form.password" placeholder="" :disabled="isDisabled" clearable></el-input> </el-form-item> </el-col> <el-col :span="12"> @@ -34,9 +34,7 @@ </el-col> <el-col :span="12"> <el-form-item label="鏁版嵁鏉冮檺" prop="deptId"> - <el-select v-model="form.deptId" multiple style="width: 100%" @change="deptIdChange"> - <el-option v-for="item in deptIdList" :key="item.id" :label="item.title" :value="item.id"/> - </el-select> + <el-tree-select v-model="form.deptId" clearable multiple show-checkbox placeholder="鏁版嵁鏉冮檺閰嶇疆" default-expand-all :data="deptIdList" :props="{ label: 'title' ,id: 'id',children: 'children'}" node-key="id" ref="deptIdTree" style="width: 100%" /> </el-form-item> </el-col> <el-col :span="12"> @@ -60,6 +58,7 @@ emits: ['success', 'closed'], data() { return { + isDisabled: false, deptIdList: [], employeeIdOptions: [], roleList: [], @@ -73,9 +72,9 @@ isSaveing: false, //琛ㄥ崟鏁版嵁 form: { + password: "", account: "", realName: "", - password: "", phone: "", email: "", employeeId: "", @@ -107,22 +106,39 @@ mounted() { this.getRole(); this.getDeptIdList(); - this.getEmployee(); }, methods: { employeeIdChange(val) { //鍏宠仈鍛樺伐 - val = val[val.length - 1]; + if(val == null) { + this.form.employeeId = ""; + this.form.employeeName = ""; + return; + }; + var that = this; + this.form.employeeId = val[val.length - 1]; + function forEmp(arr) { + arr.forEach(item=> { + if(item.id == that.form.employeeId) { + that.form.employeeName = item.name; + }else { + if(item.children) { + forEmp(item.children); + } + } + }) + } + forEmp(this.employeeIdOptions); }, roleIdChange(val) { //鏁版嵁鏉冮檺 this.form.roleIdStr = val.join(","); - }, - deptIdChange(val) { //鏁版嵁鏉冮檺 - this.form.deptIdStr = val.join(","); }, //鏄剧ず open(mode='add'){ this.mode = mode; this.visible = true; + if(mode=='add') { + this.getEmployee(""); + } return this }, //鍔犺浇鏍戞暟鎹� @@ -136,13 +152,10 @@ }, //琛ㄥ崟鎻愪氦鏂规硶 submit(){ + var obj = Object.assign({}, this.addPersonForm); var obj = Object.assign({},this.form); - obj.employeeId = obj.employeeIdStr; - obj.deptId = obj.deptIdStr; - obj.roleId = obj.roleIdStr; - delete obj.employeeIdStr; - delete obj.deptIdStr; - delete obj.roleIdStr; + obj.deptId = obj.deptId.join(","); + obj.roleId = obj.roleId.join(","); this.$refs.dialogForm.validate(async (valid) => { if (valid) { //this.isSaveing = true; @@ -175,9 +188,23 @@ } }) }, - getEmployee() { - this.$HTTP.get("/api/blade-cps/employee/unbind-employee?employeeId=").then(res=> { + getEmployee(employeeId) { + this.$HTTP.get("/api/smis/employee/unbind-employee?employeeId=" + employeeId).then(res=> { if(res.code == 200) { + function changeArr(arr) { + arr.forEach(item=> { + if(!item.children) { + if(item.isGroup) { + item.disabled = true; + }else { + item.disabled = false; + } + }else { + changeArr(item.children) + } + }) + } + changeArr(res.data[0].children); this.employeeIdOptions = res.data; } }) @@ -185,13 +212,14 @@ showDetail(data) { this.$HTTP.get("/api/blade-user/detail?id="+data.id).then(res=> { if(res.code == 200) { - res.data.employeeIdStr = res.data.employeeId; - res.data.deptIdStr = res.data.deptId; - res.data.roleIdStr = res.data.roleId; res.data.roleId = res.data.roleId.split(","); - res.data.deptId = [res.data.deptId]; - Object.assign(this.form, res.data); - console.log(this.form); + if (res.data.deptId) { + res.data.deptId = res.data.deptId.split(","); + } else { + res.data.deptId = []; + } + this.form = res.data; + this.getEmployee(res.data.employeeId); } }) }, @@ -200,6 +228,7 @@ //鍙互鍜屼笂闈竴鏍峰崟涓敞鍏ワ紝涔熷彲浠ュ儚涓嬮潰涓�鏍风洿鎺ュ悎骞惰繘鍘� //Object.assign(this.form, data) this.showDetail(data); + this.isDisabled = true; } } } -- Gitblit v1.9.3