From dc2d2f1e26a84d5600051c0ed086027a28b71162 Mon Sep 17 00:00:00 2001 From: 田源 <lastanimals@163.com> Date: 星期四, 26 十月 2023 11:31:07 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- Source/UBCS-WEB/src/views/system/user.vue | 176 ++++++++++++++++++++++++++++++++++++++++++---------------- 1 files changed, 126 insertions(+), 50 deletions(-) diff --git a/Source/UBCS-WEB/src/views/system/user.vue b/Source/UBCS-WEB/src/views/system/user.vue index 8d6a5cf..8eb6b6f 100644 --- a/Source/UBCS-WEB/src/views/system/user.vue +++ b/Source/UBCS-WEB/src/views/system/user.vue @@ -35,54 +35,61 @@ @refresh-change="refreshChange" @on-load="onLoad"> <template slot="menuLeft"> - <el-button v-if="permission.user_delete" + <el-button v-if="permissionList.delBtn" icon="el-icon-delete" plain size="small" type="danger" @click="handleDelete">鍒� 闄� </el-button> - <el-button v-if="permission.user_role" + <el-button v-if="permissionList.roleBtn" icon="el-icon-user" plain size="small" type="info" @click="handleGrant">瑙掕壊閰嶇疆 </el-button> - <el-button v-if="permission.user_reset" + <el-button v-if="permissionList.resetBtn" icon="el-icon-refresh" plain size="small" type="info" @click="handleReset">瀵嗙爜閲嶇疆 </el-button> - <el-button size="small" - v-if="userInfo.role_name.includes('admin')" + <el-button v-if="permissionList.pwdStrategyBtn" + size="small" type="success" icon="el-icon-setting" @click="handlepass"> 閰嶇疆瀵嗙爜绛栫暐 </el-button> - <el-button v-if="userInfo.role_name.includes('admin')" - icon="el-icon-coordinate" - plain - size="small" - type="info" - @click="handleLock">璐﹀彿瑙e皝 + <el-button v-if="permissionList.unsealBtn" + icon="el-icon-coordinate" + plain + size="small" + type="info" + @click="handleLock">璐﹀彿瑙e皝 </el-button> - <el-button v-if="userInfo.role_name.includes('admin')" - icon="el-icon-upload2" - plain - size="small" - type="success" - @click="handleImport">瀵煎叆 + <el-button v-if="permissionList.importBtn" + icon="el-icon-upload2" + plain + size="small" + type="success" + @click="handleImport">瀵煎叆 </el-button> - <el-button v-if="userInfo.role_name.includes('admin')" - icon="el-icon-download" - plain - size="small" - type="warning" - @click="handleExport">瀵煎嚭 + <el-button v-if="permissionList.exportBtn" + icon="el-icon-download" + plain + size="small" + type="warning" + @click="handleExport">瀵煎嚭 + </el-button> + <el-button v-if="permissionList.deactEnBtn" + size="small" + type="warning" + icon="el-icon-setting" + @click="updateUserStatus"> + 璐﹀彿鍋�/鍚敤 </el-button> </template> <template slot="tenantName" @@ -116,7 +123,6 @@ node-key="id" show-checkbox> </el-tree> - <span slot="footer" class="dialog-footer"> <el-button @click="roleBox = false">鍙� 娑�</el-button> <el-button type="primary" @@ -137,7 +143,6 @@ </el-dialog> <!-- 璁剧疆瀵嗙爜绛栫暐寮瑰嚭妗�--> <el-dialog - :before-close="handleClose" :visible.sync="passVisible" class="passdialog" append-to-body @@ -174,10 +179,12 @@ updatePlatform, add, grant, - resetPassword, unlock + resetPassword, + unlock, + updateUserStatus } from "@/api/system/user"; import {exportBlob} from "@/api/common"; -import {getDeptTree, getDeptLazyTree, updateUserStatus} from "@/api/system/dept"; +import {getDeptTree, getDeptLazyTree} from "@/api/system/dept"; import {getRoleTree} from "@/api/system/role"; import {getPostList} from "@/api/system/post"; import {mapGetters} from "vuex"; @@ -282,7 +289,11 @@ border: true, index: true, selection: true, + /* 涓嬮潰杩欎笁涓睘鎬ч粯璁よ缃负true锛� + 瀹為檯鏍规嵁permissionList涓鐓х殑灞炴�ц繘琛屾帶鍒剁殑 */ viewBtn: true, + editBtn: true, + delBtn: true, dialogType: 'drawer', dialogClickModal: false, highlightCurrentRow: true, //琛岄�変腑鏃堕珮浜� @@ -347,6 +358,16 @@ message: "璇烽�夋嫨鐢ㄦ埛骞冲彴", trigger: "blur" }], + }, + { + label: "鐘舵��", + display: false, + sortable:true, + html:true, + prop: "userStatus", + formatter : function (row, column) { + return row.userStatus == 0 ? '<i class="el-icon-check" style="color: #32cd32;font-size: 20px;font-weight: 800"></i>' : '<i class="el-icon-close" style="color: #ff0000;font-size: 20px;font-weight: 800"></i>' + } }, ], group: [ @@ -699,7 +720,7 @@ 'form.tenantId'() { if (this.form.tenantId !== '' && this.initFlag) { this.initData(this.form.tenantId); - console.log('this.form.tenantId',this.form.tenantId) + // console.log('this.form.tenantId',this.form.tenantId) } }, 'excelForm.isCovered'() { @@ -711,22 +732,37 @@ }, computed: { ...mapGetters(["userInfo", "permission"]), + /** 鎸夐挳鏄剧ず闅愯棌鎺у埗 */ permissionList() { return { - addBtn: this.vaildData(this.permission.user_add, false), - viewBtn: this.vaildData(this.permission.user_view, false), - delBtn: this.vaildData(this.permission.user_delete, false), - editBtn: this.vaildData(this.permission.user_edit, false) + addBtn: this.vaildData(this.permission.user.user_add, false), + viewBtn: this.vaildData(this.permission.user.user_view, false), + delBtn: this.vaildData(this.permission.user.user_delete, false), + editBtn: this.vaildData(this.permission.user.user_edit, false), + deactEnBtn: this.vaildData(this.permission.user.user_deact_en,false), + exportBtn: this.vaildData(this.permission.user.user_export,false), + pwdStrategyBtn: this.vaildData(this.permission.user.user_pwd_strategy,false), + importBtn: this.vaildData(this.permission.user.user_import,false), + resetBtn: this.vaildData(this.permission.user.user_reset,false), + roleBtn: this.vaildData(this.permission.user.user_role,false), + unsealBtn: this.vaildData(this.permission.user.user_unseal,false), }; }, - platformPermissionList() { - return { - addBtn: false, - viewBtn: false, - delBtn: false, - editBtn: this.vaildData(this.permission.user_edit, false) - }; - }, + // platformPermissionList() { + // return { + // addBtn: this.vaildData(this.permission.user.user_add, false), + // viewBtn: this.vaildData(this.permission.user.user_view, false), + // delBtn: this.vaildData(this.permission.user.user_delete, false), + // editBtn: this.vaildData(this.permission.user.user_edit, false), + // deactEnBtn: this.vaildData(this.permission.user.user_deact_en,false), + // exportBtn: this.vaildData(this.permission.user.user_export,false), + // pwdStrategyBtn: this.vaildData(this.permission.user.user_pwd_strategy,false), + // importBtn: this.vaildData(this.permission.user.user_import,false), + // resetBtn: this.vaildData(this.permission.user.user_reset,false), + // roleBtn: this.vaildData(this.permission.user.user_role,false), + // unsealBtn: this.vaildData(this.permission.user.user_unseal,false), + // }; + // }, ids() { let ids = []; this.selectionList.forEach(ele => { @@ -742,9 +778,6 @@ } }, created() { - updateUserStatus({userid:'1702600796147871745',status:true}).then(res=>{ - console.log(res) - }) this.selecload() const arr=JSON.parse(localStorage.getItem("updataid")) if(arr.user_id != '0' && arr.tenant_id !== '000000'){ @@ -756,11 +789,54 @@ } }, methods: { - beOpen(done,type){ - console.log(done,type) + + // beOpen(done,type){ + // console.log(done,type) + // }, + // 鐢ㄦ埛鍋滅敤鍚敤鐘舵�� + /** 淇敼鐢ㄦ埛鐘舵�� */ + updateUserStatus(){ + let list = this.selectionList; + if(list.length < 1){ + this.$message({ + type: "warning", + message: "璇疯嚦灏戦�夋嫨涓�鏉$敤鎴锋暟鎹紒" + }); + return; + } + if(func.isAttrInconsistent(list,"userStatus")){ + this.$message({ + type: "warning", + message: "鎵归噺鎿嶄綔鐢ㄦ埛鐘舵�佹椂锛岃閫夋嫨鐢ㄦ埛鐘舵�佷竴鑷寸殑鏁版嵁锛�" + }); + return; + } + let userIds = func.joinedString(list,"id"); + let status = list[0].userStatus == 1 ? true:false; + let msg = status ? "纭畾灏嗛�夋嫨璐﹀彿鍚敤":"纭畾灏嗛�夋嫨璐﹀彿鍋滅敤"+"锛�"; + // console.log(msg); + this.$confirm(msg, { + confirmButtonText: "纭畾", + cancelButtonText: "鍙栨秷", + type: "warning" + }) + .then(() => { + return updateUserStatus(userIds,status); + }) + .then(() => { + this.$message({ + type: "success", + message: "鎿嶄綔鎴愬姛!", + duration: 1000,// 璁剧疆娑堟伅鏄剧ず3绉掑悗鑷姩鍏抽棴 + onClose: () => { + // 鍦ㄦ秷鎭叧闂椂閲嶆柊鍔犺浇鏁版嵁 + this.onLoad(this.page); + } + }); + }); }, //esc鍙栨秷閿搷浣� - handleClose(done) { + /*handleClose(done) { this.$confirm('纭鍏抽棴锛�') .then(() => { done(); @@ -769,7 +845,7 @@ done(); }); - }, + },*/ //鐐瑰嚮閰嶇疆瀵嗙爜绛栫暐 handlepass(){ if (this.selectionList.length === 0) { @@ -818,8 +894,8 @@ }); }, nodeClick(data) { - console.log(data) - console.log(this.form.tenantId) + // console.log(data) + // console.log(this.form.tenantId) this.treeDeptId = data.id; this.page.currentPage = 1; this.onLoad(this.page); @@ -855,7 +931,7 @@ row.deptId = row.deptId.join(","); row.roleId = row.roleId.join(","); row.postId = row.postId.join(","); - console.log('3',row) + // console.log('3',row) add(row).then(() => { this.initFlag = false; this.onLoad(this.page); -- Gitblit v1.9.3