From 83898e6b7ff3996fcef889042442a25753b07dea Mon Sep 17 00:00:00 2001 From: WXL <1785969728@qq.com> Date: 星期二, 24 九月 2024 14:00:24 +0800 Subject: [PATCH] 测试完成 --- src/views/system/user/index.vue | 246 ++++++++++++++++++++++++++++++------------------ 1 files changed, 154 insertions(+), 92 deletions(-) diff --git a/src/views/system/user/index.vue b/src/views/system/user/index.vue index 70a1b6d..b5c2840 100644 --- a/src/views/system/user/index.vue +++ b/src/views/system/user/index.vue @@ -37,10 +37,19 @@ v-show="showSearch" label-width="68px" > - <el-form-item label="鐢ㄦ埛鍚嶇О" prop="userName"> + <el-form-item label="鐢ㄦ埛宸ュ彿" prop="userName"> <el-input v-model="queryParams.userName" - placeholder="璇疯緭鍏ョ敤鎴峰悕绉�" + placeholder="璇疯緭鍏ョ敤鎴峰伐鍙�" + clearable + style="width: 240px" + @keyup.enter.native="handleQuery" + /> + </el-form-item> + <el-form-item label="鐢ㄦ埛鏄电О" prop="nickName"> + <el-input + v-model="queryParams.nickName" + placeholder="璇疯緭鍏ョ敤鎴锋樀绉�" clearable style="width: 240px" @keyup.enter.native="handleQuery" @@ -70,7 +79,8 @@ /> </el-select> </el-form-item> - <el-form-item label="鍒涘缓鏃堕棿"> + + <!-- <el-form-item label="鍒涘缓鏃堕棿"> <el-date-picker v-model="dateRange" style="width: 240px" @@ -80,7 +90,7 @@ start-placeholder="寮�濮嬫棩鏈�" end-placeholder="缁撴潫鏃ユ湡" ></el-date-picker> - </el-form-item> + </el-form-item> --> <el-form-item> <el-button type="primary" @@ -174,7 +184,7 @@ v-if="columns[0].visible" /> <el-table-column - label="鐢ㄦ埛鍚嶇О" + label="鐢ㄦ埛宸ュ彿" align="center" key="userName" prop="userName" @@ -304,52 +314,55 @@ /> </el-form-item> </el-col> - <!-- <el-col :span="12"> - <el-form-item label="褰掑睘閮ㄩ棬" prop="deptId"> - <treeselect - v-model="form.depts" - :options="deptOptions" - :multiple="true" - :show-count="true" - placeholder="璇烽�夋嫨褰掑睘閮ㄩ棬" - /> + <el-col :span="12"> + <el-form-item label="鎮h�呰寖鍥�" prop="status"> + <el-select + v-model="form.searchscope" + placeholder="鎮h�呰寖鍥�" + clearable + > + <el-option + v-for="dict in searchscopelist" + :key="dict.value" + :label="dict.label" + :value="dict.value" + /> + </el-select> </el-form-item> - </el-col> --> + </el-col> </el-row> <el-form-item label="閫傜敤绉戝" prop="region"> - <el-cascader - style="width: 478px" - v-model="form.leaveldeptcodes" - :options="deptOptions" - :props="props" - :show-all-levels="false" - clearable - > - <template slot-scope="{ node, data }"> - <span>{{ data.label }}</span> - <span v-if="!node.isLeaf"> - ({{ data.children.length }}) - </span> - </template> - </el-cascader> - </el-form-item> - <el-form-item label="閫傜敤闄㈠尯" prop="region"> - <el-cascader - style="width: 478px" - v-model="form.leavehospitaldistrictcodes" - :options="deptOptions" - :props="props" - :show-all-levels="false" - clearable - > - <template slot-scope="{ node, data }"> - <span>{{ data.label }}</span> - <span v-if="!node.isLeaf"> - ({{ data.children.length }}) - </span> - </template> - </el-cascader> - </el-form-item> + <el-cascader + style="width: 478px" + v-model="form.deptCodes" + @remove-tag="removehpsp" + :options="deptOptions" + :props="props" + :show-all-levels="false" + clearable + > + <template slot-scope="{ node, data }"> + <span>{{ data.label }}</span> + <span v-if="!node.isLeaf"> ({{ data.children.length }}) </span> + </template> + </el-cascader> + </el-form-item> + <el-form-item label="閫傜敤鐥呭尯" prop="region"> + <el-cascader + style="width: 478px" + @remove-tag="removehpsp" + v-model="form.wardCodes" + :options="deptOptions" + :props="props" + :show-all-levels="false" + clearable + > + <template slot-scope="{ node, data }"> + <span>{{ data.label }}</span> + <span v-if="!node.isLeaf"> ({{ data.children.length }}) </span> + </template> + </el-cascader> + </el-form-item> <el-row> <el-col :span="12"> <el-form-item label="鎵嬫満鍙风爜" prop="phonenumber"> @@ -374,12 +387,12 @@ <el-col :span="12"> <el-form-item v-if="form.userId == undefined" - label="鐢ㄦ埛鍚嶇О" + label="鐢ㄦ埛宸ュ彿" prop="userName" > <el-input v-model="form.userName" - placeholder="璇疯緭鍏ョ敤鎴峰悕绉�" + placeholder="璇疯緭鍏ョ敤鎴峰伐鍙�" maxlength="30" /> </el-form-item> @@ -426,6 +439,7 @@ </el-form-item> </el-col> </el-row> + <el-row> <el-col :span="12"> <el-form-item label="宀椾綅"> @@ -533,12 +547,14 @@ updateUser, resetUserPwd, adduserdept, + removeusertd, changeUserStatus, deptTreeSelect, } from "@/api/system/user"; import { getToken } from "@/utils/auth"; import Treeselect from "@riophae/vue-treeselect"; import "@riophae/vue-treeselect/dist/vue-treeselect.css"; +import { type } from "jquery"; export default { name: "User", @@ -608,24 +624,31 @@ status: undefined, deptId: undefined, }, + searchscopelist: [ + { value: "1", label: "绉戝" }, + { value: "2", label: "鐥呭尯" }, + { value: "0", label: "鍏ㄩ儴" }, + { value: "9", label: "鏃�" }, + ], // 鍒椾俊鎭� columns: [ { key: 0, label: `鐢ㄦ埛缂栧彿`, visible: true }, - { key: 1, label: `鐢ㄦ埛鍚嶇О`, visible: true }, + { key: 1, label: `鐢ㄦ埛宸ュ彿`, visible: true }, { key: 2, label: `鐢ㄦ埛鏄电О`, visible: true }, { key: 3, label: `閮ㄩ棬`, visible: true }, { key: 4, label: `鎵嬫満鍙风爜`, visible: true }, { key: 5, label: `鐘舵�乣, visible: true }, { key: 6, label: `鍒涘缓鏃堕棿`, visible: true }, ], + // 琛ㄥ崟鏍¢獙 rules: { userName: [ - { required: true, message: "鐢ㄦ埛鍚嶇О涓嶈兘涓虹┖", trigger: "blur" }, + { required: true, message: "鐢ㄦ埛宸ュ彿涓嶈兘涓虹┖", trigger: "blur" }, { min: 2, max: 20, - message: "鐢ㄦ埛鍚嶇О闀垮害蹇呴』浠嬩簬 2 鍜� 20 涔嬮棿", + message: "鐢ㄦ埛宸ュ彿闀垮害蹇呴』浠嬩簬 2 鍜� 20 涔嬮棿", trigger: "blur", }, ], @@ -686,9 +709,14 @@ }, /** 鏌ヨ閮ㄩ棬涓嬫媺鏍戠粨鏋� */ getDeptTree() { + // 绉戝鍒楄〃 deptTreeSelect().then((response) => { this.deptOptions = response.data; }); + // 闄㈠尯鍒楄〃 + // deptTreeSelect().then((response) => { + // this.deptOptions = response.data; + // }); }, // 绛涢�夎妭鐐� filterNode(value, data) { @@ -774,9 +802,9 @@ handleAdd() { this.reset(); this.open = true; - this.title = "娣诲姞鐢ㄦ埛"; - this.form.password = this.initPassword; - this.form.depts = []; + this.title = "娣诲姞鐢ㄦ埛"; + this.form.password = this.initPassword; + this.form.depts = []; // getUser().then((response) => { // this.postOptions = response.posts; // this.roleOptions = response.roles; @@ -790,11 +818,14 @@ const userId = row.userId || this.ids; getUser(userId).then((response) => { this.form = response.data; - - this.form.leaveldeptcodes = JSON.parse(this.form.hospInfo); - this.form.leavehospitaldistrictcodes = JSON.parse(this.form.deptInfo); - console.log(this.form.leavehospitaldistrictcodes,'leavehospitaldistrictcodes'); - console.log(this.form.leaveldeptcodes,'leaveldeptcodes'); + this.belongDepts = response.belongDepts; + this.belongWards = response.belongWards; + if (this.form.hospInfo) + this.form.deptCodes = JSON.parse(this.form.hospInfo); + if (this.form.deptInfo) + this.form.wardCodes = JSON.parse(this.form.deptInfo); + console.log(this.form.wardCodes, "wardCodes"); + console.log(this.form.deptCodes, "deptCodes"); this.postOptions = response.posts; this.roleOptions = response.roles; @@ -803,6 +834,16 @@ this.open = true; this.title = "淇敼鐢ㄦ埛"; this.form.password = ""; + }); + }, + // 鍒犻櫎绉戝 + removehpsp(valueArray) { + console.log(valueArray,'鍒犻櫎绉戝'); + console.log(this.form.userId,'鍒犻櫎'); + let code=valueArray[valueArray.length-1]; + removeusertd(this.form.userId,code).then((res) => { + if (res.code) { + } }); }, /** 閲嶇疆瀵嗙爜鎸夐挳鎿嶄綔 */ @@ -828,17 +869,16 @@ }, /** 鎻愪氦鎸夐挳 */ submitForm: function () { - this.form.hospInfo = JSON.stringify(this.form.leaveldeptcodes); - this.form.deptInfo = JSON.stringify(this.form.leavehospitaldistrictcodes); - this.form.leaveldeptcodes = this.form.leaveldeptcodes.map( + this.form.hospInfo = JSON.stringify(this.form.deptCodes); + this.form.deptInfo = JSON.stringify(this.form.wardCodes); + this.form.deptCodes = this.form.deptCodes.map( (subArr) => subArr[subArr.length - 1] ); - this.form.leavehospitaldistrictcodes = this.form.leavehospitaldistrictcodes.map( + this.form.wardCodes = this.form.wardCodes.map( (subArr) => subArr[subArr.length - 1] ); - console.log(this.form.leavehospitaldistrictcodes,'leavehospitaldistrictcodes'); - console.log(this.form.leaveldeptcodes,'leaveldeptcodes'); - + console.log(this.form.wardCodes, "wardCodes"); + console.log(this.form.deptCodes, "deptCodes"); this.$refs["form"].validate((valid) => { if (valid) { @@ -846,42 +886,64 @@ updateUser(this.form).then((response) => { this.$modal.msgSuccess("淇敼鎴愬姛"); this.open = false; - this.getList(); + this.adduserdept(); }); } else { addUser(this.form).then((response) => { this.$modal.msgSuccess("鏂板鎴愬姛"); this.open = false; - this.getList(); + this.form.userId = response.data; + console.log("寮�濮嬪姞閮ㄩ棬"); + + this.adduserdept(); }); } } }); }, // 鏂板鏁版嵁 - adduserdept(){ - if (this.form.leavehospitaldistrictcodes[0]) { - this.form.leavehospitaldistrictcodes.forEach((dept) => { - adduserdept({deptCode:dept,deptType:2,userId:this.form.userId}).then((response) => { - this.open = false; - this.getList(); - }); - }) - } - if (this.form.leaveldeptcodes[0]) { - this.form.leaveldeptcodes.forEach((dept) => { - adduserdept({deptCode:dept,deptType:1,userId:this.form.userId}).then((response) => { - this.open = false; - this.getList(); - }); - }) - } + adduserdept() { + if (this.form.wardCodes[0]) { + this.form.wardCodes.forEach((dept) => { + const containsId8 = null; + if (this.belongWards) { + containsId8 = this.belongWards.some( + (item) => item.deptCode == dept + ); + } - adduserdept(this.form).then((response) => { - this.$modal.msgSuccess("娣诲姞鎴愬姛"); - this.open = false; - this.getList(); - }); + if (!containsId8) { + adduserdept({ + deptCode: dept, + deptType: 2, + userId: this.form.userId, + }).then((response) => { + this.open = false; + this.getList(); + }); + } + }); + } + if (this.form.deptCodes[0]) { + this.form.deptCodes.forEach((dept) => { + const containsId8 = null; + if (this.belongDepts) { + containsId8 = this.belongDepts.some( + (item) => item.deptCode == dept + ); + } + if (!containsId8) { + adduserdept({ + deptCode: dept, + deptType: 1, + userId: this.form.userId, + }).then((response) => { + this.open = false; + this.getList(); + }); + } + }); + } }, /** 鍒犻櫎鎸夐挳鎿嶄綔 */ handleDelete(row) { -- Gitblit v1.9.3