From 9ada19d01d0cb6aaa0dec99e24bf7a9b511750bf Mon Sep 17 00:00:00 2001 From: yangfeng <wanwan926_4@163.com> Date: 星期六, 06 一月 2024 15:55:31 +0800 Subject: [PATCH] 审核页面和编辑用户页面修改及接口联调 --- src/views/unifiedManage/userLevel/components/AddUserLevel.vue | 26 +---- src/views/unifiedManage/userManage/components/EditUserInfo.vue | 38 ++++++++- src/views/unifiedManage/userManage/components/ReviewDialog.vue | 83 ++++++++++++++------ src/api/unifiedManage/userManage.js | 16 ++++ src/views/unifiedManage/userManage/index.vue | 4 src/views/unifiedManage/userLevel/index.vue | 39 ++++----- 6 files changed, 134 insertions(+), 72 deletions(-) diff --git a/src/api/unifiedManage/userManage.js b/src/api/unifiedManage/userManage.js index ef95fcf..bbc8045 100644 --- a/src/api/unifiedManage/userManage.js +++ b/src/api/unifiedManage/userManage.js @@ -24,3 +24,19 @@ data }) } +// 鐢ㄦ埛瀹℃牳 +export function userExamine(data) { + return request({ + url: "/api/user/userExamine", + method: "post", + data + }) +} +// 璁剧疆鐢ㄦ埛淇℃伅 +export function setUser(data) { + return request({ + url: "/api/user/setUser", + method: "post", + data + }) +} diff --git a/src/views/unifiedManage/userLevel/components/AddUserLevel.vue b/src/views/unifiedManage/userLevel/components/AddUserLevel.vue index e845320..cc97951 100644 --- a/src/views/unifiedManage/userLevel/components/AddUserLevel.vue +++ b/src/views/unifiedManage/userLevel/components/AddUserLevel.vue @@ -51,7 +51,7 @@ :data="item.menus" show-checkbox node-key="id" - @check-change="handleCheckChange" + :default-checked-keys="editConfig.infomation.menuIDs" :props="treeDefaultProp" default-expand-all > @@ -146,7 +146,7 @@ }, // 鑾峰彇鍙傝�冭鑹� 椤甸潰鏉冮檺 鑿滃崟 鐨勬暟鎹� async getDataInfo(val) { - const rsp = await getDataRole({ useType: 2 }) + const rsp = await getDataRole({ useType: 1 }) if (rsp.code == 200) { // 鍙傝�冭鑹� this.prepareRoleList = rsp.data.roles ? rsp.data.roles : [] @@ -156,6 +156,7 @@ this.form.completeType = this.completeList.length > 0 ? this.completeList[0].systemType : 1 } if (this.editConfig.visible) { + console.log("ssss") this.resetForm(val) } }, @@ -177,21 +178,10 @@ this.completeList.length > 0 && this.completeList[0].systemType ? this.completeList[0].systemType : 1 } if (val) { + console.log("aaaa", val) this.form = JSON.parse(JSON.stringify(val)) this.form.completeType = this.completeList.length > 0 && this.completeList[0].systemType ? this.completeList[0].systemType : 1 - if (this.form.menuIDs && this.form.menuIDs.length > 0) { - for (let i in this.menusList) { - console.log(this.$refs["menuTree&" + this.menusList[i].systemType]) - // this.$refs["menuTree&" + this.menusList[i].systemType][0].setCheckedKeys(this.form.allMenu.split(",")) - } - } - } else { - console.log(this.menusList) - for (let i in this.menusList) { - console.log(this.$refs["menuTree&" + this.menusList[i]?.systemType]) - // this.$refs["menuTree&" + this.menusList[i]?.systemType][0].setCheckedKeys([]) - } } }, imgClick(item, index) { @@ -222,7 +212,8 @@ submitFn(param).then((reply) => { if (reply && reply.code === 200) { this.$message.success("淇濆瓨鎴愬姛") - this.$emit("shutdown", false) + this.handleClose() + this.$parent.getData() } }) } @@ -265,14 +256,11 @@ id: this.editRow.id, comment: data.comment || "", name: data.name || "", - useType: 2 + useType: 1 }, menuIDs: menuIds } return params - }, - shutdown() { - this.$emit("shutdown", false) } } } diff --git a/src/views/unifiedManage/userLevel/index.vue b/src/views/unifiedManage/userLevel/index.vue index 94d452e..6a5a152 100644 --- a/src/views/unifiedManage/userLevel/index.vue +++ b/src/views/unifiedManage/userLevel/index.vue @@ -59,9 +59,8 @@ </div> </div> </div> - <div class="overSpread" v-show="isopen"></div> <!-- 娣诲姞/缂栬緫 --> - <AddUserLevel :isopen="isopen" @shutdown="shutdown" :editRow="editRow" /> + <AddUserLevel v-if="editConfig.visible" :edit-common-config="editConfig" /> </div> </template> @@ -71,7 +70,18 @@ import { getListRole, getUserList, roleChange, deleteRole } from "@/api/unifiedManage/userLevel" export default { name: "UserLevel", - props: {}, + props: { + isDetail: { + type: Boolean, + default: false + }, + addConfig: { + type: Object, + default: () => { + return {} + } + } + }, mixins: [pageMixin], components: { AddUserLevel }, computed: {}, @@ -114,7 +124,6 @@ ], showBottomCol: ["鐢ㄦ埛鍚�", "濮撳悕", "鎵嬫満鍙�", "宀椾綅鑱屽姟", "鐘舵��"], isopen: false, - editRow: {}, editConfig: { visible: false, title: "鏂板缓", @@ -177,11 +186,9 @@ }, // 鏂板缓 addBtnClick() { - // this.editConfig.title = "鏂板缓" - // this.editConfig.visible = true - // this.editConfig.infomation = {} - this.isopen = true - this.editRow = {} + this.editConfig.title = "鏂板缓" + this.editConfig.visible = true + this.editConfig.infomation = {} }, // 鎼滅储 searchClick(val) { @@ -221,11 +228,9 @@ // 缂栬緫 handleClick(val) { console.log(val) - // this.editConfig.title = "缂栬緫" - // this.editConfig.infomation = { ...val } - // this.editConfig.visible = true - this.editRow = val - this.isopen = true + this.editConfig.title = "缂栬緫" + this.editConfig.infomation = { ...val } + this.editConfig.visible = true }, // 鍒犻櫎绛夌骇 delClick(row) { @@ -247,12 +252,6 @@ }) }) .catch(() => {}) - }, - shutdown() { - this.isopen = false - setTimeout(() => { - this.getData() - }, 200) }, // 琛岀偣鍑� tableRowClick(row) { diff --git a/src/views/unifiedManage/userManage/components/EditUserInfo.vue b/src/views/unifiedManage/userManage/components/EditUserInfo.vue index 144b745..8016de3 100644 --- a/src/views/unifiedManage/userManage/components/EditUserInfo.vue +++ b/src/views/unifiedManage/userManage/components/EditUserInfo.vue @@ -42,7 +42,7 @@ <el-input v-model="editConfig.form.region" placeholder="--" disabled></el-input> </el-form-item> <el-form-item label="鐢ㄦ埛绛夌骇:" prop="roleIDs"> - <el-checkbox-group v-model="editConfig.form.roleIDs"> + <el-checkbox-group v-model="editConfig.form.roleIDs" :disabled="editConfig.title == '鏌ョ湅' ? true : false"> <el-checkbox v-for="role in roleList" :label="role.id" :key="role.id">{{ role.name }}</el-checkbox> </el-checkbox-group> </el-form-item> @@ -59,7 +59,7 @@ </template> <script> -import { getRoleIDs } from "@/api/unifiedManage/userManage" +import { getRoleIDs, setUser } from "@/api/unifiedManage/userManage" export default { name: "EditUserInfo", props: { @@ -69,7 +69,9 @@ return { visible: false, title: "鏂板缓", - form: {} + form: { + roleIDs: [] + } } } } @@ -83,9 +85,9 @@ // form: {}, rules: { username: [{ required: true, message: "璇疯緭鍏ョ敤鎴峰悕", trigger: "blur" }], - password: [{ required: true, message: "璇疯緭鍏ュ瘑鐮�", trigger: "blur" }], + // password: [{ required: true, message: "璇疯緭鍏ュ瘑鐮�", trigger: "blur" }], phone: [{ required: true, message: "璇疯緭鍏ユ墜鏈哄彿", trigger: "blur" }], - companyName: [{ required: true, message: "璇疯緭鍏ュ叕鍙稿悕绉�", trigger: "blur" }], + // companyName: [{ required: true, message: "璇疯緭鍏ュ叕鍙稿悕绉�", trigger: "blur" }], nickName: [{ required: true, message: "璇疯緭鍏ヨ仈绯讳汉鍚嶇О", trigger: "blur" }], roleIDs: [{ required: true, message: "璇烽�夋嫨鐢ㄦ埛绛夌骇", trigger: "change" }] }, @@ -123,6 +125,32 @@ if (rsp.code == 200) { this.roleList = rsp.data ? rsp.data : [] } + }, + // 纭畾 + onSubmit(formName) { + this.$refs[formName].validate((valid) => { + console.log(valid) + if (valid) { + let param = this.saveParams() + setUser(param).then((reply) => { + if (reply && reply.code === 200) { + this.$message.success("淇濆瓨鎴愬姛") + this.handleClose() + this.$parent.getData() + } + }) + } + }) + }, + saveParams() { + let params = { + dutyIDs: this.editConfig.form.dutyIDs, + id: this.editConfig.form.id, + nickName: this.editConfig.form.nickName, + phone: this.editConfig.form.phone, + roleIDs: this.editConfig.form.roleIDs + } + return params } } } diff --git a/src/views/unifiedManage/userManage/components/ReviewDialog.vue b/src/views/unifiedManage/userManage/components/ReviewDialog.vue index e837bb5..d86022c 100644 --- a/src/views/unifiedManage/userManage/components/ReviewDialog.vue +++ b/src/views/unifiedManage/userManage/components/ReviewDialog.vue @@ -9,27 +9,23 @@ custom-class="iframe-dialog" > <div class="drawerContent" style="overflow: auto"> - <el-form ref="form" :rules="rules" :model="form" label-position="right" label-width="100px"> + <el-form ref="form" :rules="rules" :model="editConfig.infomation" label-position="right" label-width="100px"> <el-form-item label="瀹℃牳缁撴灉:" prop="result"> - <el-select v-model="form.result" placeholder="璇烽�夋嫨瀹℃牳缁撴灉"> - <el-option label="瀹℃牳閫氳繃" value="瀹℃牳閫氳繃"></el-option> - <el-option label="瀹℃牳鎷掔粷" value="瀹℃牳鎷掔粷"></el-option> + <el-select v-model="editConfig.infomation.result" placeholder="璇烽�夋嫨瀹℃牳缁撴灉"> + <el-option label="瀹℃牳閫氳繃" :value="3"></el-option> + <el-option label="瀹℃牳鎷掔粷" :value="4"></el-option> </el-select> </el-form-item> - <el-form-item v-if="form.result === '瀹℃牳鎷掔粷'" label="鏈�氳繃鍘熷洜:" prop="reason"> - <el-input v-model="form.reason" type="textarea"></el-input> + <el-form-item v-if="editConfig.infomation.result === 4" label="鏈�氳繃鍘熷洜:" prop="reason"> + <el-input v-model="editConfig.infomation.reason" type="textarea"></el-input> </el-form-item> - <el-form-item v-if="form.result === '瀹℃牳閫氳繃'" label="鐢ㄦ埛绛夌骇:" prop="level"> - <el-radio-group v-model="form.level"> - <div style="margin-top: 10px"> - <el-radio :label="1">涓夊悎涓�缁忓吀浼氬憳</el-radio> - <el-radio :label="2">APS+WMS鏅�氫細鍛�</el-radio> - </div> - <div style="margin-top: 10px"> - <el-radio :label="3">鍥涘悎涓�瓒呯骇浼氬憳</el-radio> - <el-radio :label="4">APS鏅�氫細鍛�</el-radio> - </div> - </el-radio-group> + <el-form-item v-if="editConfig.infomation.result === 3" label="鐢ㄦ埛绛夌骇:" prop="roleIDs"> + <el-checkbox-group + v-model="editConfig.infomation.roleIDs" + :disabled="editConfig.title == '鏌ョ湅' ? true : false" + > + <el-checkbox v-for="role in roleList" :label="role.id" :key="role.id">{{ role.name }}</el-checkbox> + </el-checkbox-group> </el-form-item> </el-form> </div> @@ -44,6 +40,7 @@ </template> <script> +import { getRoleIDs, userExamine } from "@/api/unifiedManage/userManage" export default { name: "ReviewDialog", props: { @@ -53,7 +50,10 @@ return { visible: false, title: "鐢ㄦ埛瀹℃牳", - infomation: {} + infomation: { + result: 3, + roleIDs: [] + } } } } @@ -64,39 +64,70 @@ return { dialogWidth: "30%", editConfig: this.editCommonConfig, - form: { - result: "瀹℃牳閫氳繃" - }, rules: { result: [{ required: true, message: "璇烽�夋嫨瀹℃牳缁撴灉", trigger: "change" }], reason: [{ required: true, message: "璇疯緭鍏ユ嫆缁濆師鍥�", trigger: "blur" }], - level: [{ required: true, message: "璇烽�夋嫨鐢ㄦ埛绛夌骇", trigger: "change" }] - } + roleIDs: [{ required: true, message: "璇烽�夋嫨鐢ㄦ埛绛夌骇", trigger: "change" }] + }, + roleList: [] // 鐢ㄦ埛绛夌骇 } }, watch: { "editCommonConfig.visible"(val) { if (val) { this.$refs.form.resetFields() - // this.getDataInfo() } }, "editCommonConfig.infomation"(val) { if (this.isopen) { this.$refs.form.resetFields() if (val.id) { - this.form = val + // this.form = val // this.getDataInfo(val) } } } }, created() { - // this.getDataInfo() + this.getDataInfo() }, methods: { handleClose() { this.editConfig.visible = false + }, + // 鑾峰彇绛夌骇淇℃伅 + async getDataInfo() { + const rsp = await getRoleIDs({ useType: 1 }) + if (rsp.code == 200) { + this.roleList = rsp.data ? rsp.data : [] + } + }, + // 纭畾 + onSubmit(formName) { + this.$refs[formName].validate((valid) => { + console.log(valid) + if (valid) { + let param = this.saveParams() + userExamine(param).then((reply) => { + if (reply && reply.code === 200) { + this.$message.success("淇濆瓨鎴愬姛") + this.handleClose() + this.$parent.getData() + } + }) + } + }) + }, + saveParams() { + let reason = this.editConfig.infomation.result == 3 ? "" : this.editConfig.infomation.reason + let roleIds = this.editConfig.infomation.result == 3 ? this.editConfig.infomation.roleIDs : [] + let params = { + reason: reason, + roleIds: roleIds, + status: this.editConfig.infomation.result, + userId: this.editConfig.infomation.id + } + return params } } } diff --git a/src/views/unifiedManage/userManage/index.vue b/src/views/unifiedManage/userManage/index.vue index 13dbccd..70e8173 100644 --- a/src/views/unifiedManage/userManage/index.vue +++ b/src/views/unifiedManage/userManage/index.vue @@ -85,7 +85,7 @@ editConfig: { visible: false, title: "鏌ョ湅", - infomation: {} + form: {} }, reviewConfig: { visible: false, @@ -132,7 +132,7 @@ console.log(row) this.reviewConfig.visible = true this.reviewConfig.title = "鐢ㄦ埛瀹℃牳" - this.reviewConfig.infomation = { ...row } + this.reviewConfig.infomation = { result: 3, ...row } }, // 鍋滅敤 changeStatusClick(row, status) { -- Gitblit v1.8.0