From 90b486ba54098be293a256d9313d201a3bd5221f Mon Sep 17 00:00:00 2001
From: ludc
Date: 星期三, 18 十月 2023 21:31:02 +0800
Subject: [PATCH] 1、编码规则增加显示所有者列,高级查询中增加所有者; 2、用户管理界面添加停用启用按钮。

---
 Source/UBCS-WEB/src/views/system/user.vue |  149 ++++++++++++++++++++++++++++++++++---------------
 1 files changed, 103 insertions(+), 46 deletions(-)

diff --git a/Source/UBCS-WEB/src/views/system/user.vue b/Source/UBCS-WEB/src/views/system/user.vue
index 4547c5f..9b3f3a2 100644
--- a/Source/UBCS-WEB/src/views/system/user.vue
+++ b/Source/UBCS-WEB/src/views/system/user.vue
@@ -64,25 +64,31 @@
               閰嶇疆瀵嗙爜绛栫暐
             </el-button>
             <el-button v-if="userInfo.role_name.includes('admin')"
-                       icon="el-icon-coordinate"
-                       plain
-                       size="small"
-                       type="info"
-                       @click="handleLock">璐﹀彿瑙e皝
+              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">瀵煎叆
+              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">瀵煎嚭
+              icon="el-icon-download"
+              plain
+              size="small"
+              type="warning"
+              @click="handleExport">瀵煎嚭
+            </el-button>
+            <el-button size="small"
+                type="warning"
+                icon="el-icon-setting"
+                @click="updateUserStatus">
+              璐﹀彿鍋�/鍚敤
             </el-button>
           </template>
           <template slot="tenantName"
@@ -116,7 +122,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 +142,6 @@
         </el-dialog>
         <!--        璁剧疆瀵嗙爜绛栫暐寮瑰嚭妗�-->
         <el-dialog
-          :before-close="handleClose"
           :visible.sync="passVisible"
           class="passdialog"
           append-to-body
@@ -174,7 +178,9 @@
   updatePlatform,
   add,
   grant,
-  resetPassword, unlock
+  resetPassword, 
+  unlock,
+  updateUserStatus
 } from "@/api/system/user";
 import {exportBlob} from "@/api/common";
 import {getDeptTree, getDeptLazyTree} from "@/api/system/dept";
@@ -209,6 +215,7 @@
       }
     };
     return {
+      tenantId:'',
       form: {},
       seoptions: [],
       sevalue:"",
@@ -277,6 +284,7 @@
         tip: false,
         searchShow: true,
         searchMenuSpan: 6,
+        columnBtn:false,
         border: true,
         index: true,
         selection: true,
@@ -344,7 +352,17 @@
               required: true,
               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: [
@@ -372,7 +390,7 @@
                   trigger: "click"
                 }],
                 span: 24,
-                value:'986926'
+                value:""
               },
               {
                 label: "鐧诲綍璐﹀彿",
@@ -391,6 +409,7 @@
                   label: "dictValue",
                   value: "dictKey"
                 },
+                value:'1',
                 dataType: "number",
                 slot: true,
                 prop: "userType",
@@ -403,6 +422,7 @@
               {
                 label: '瀵嗙爜',
                 prop: 'password',
+                type: "password",
                 hide: true,
                 editDisplay: false,
                 viewDisplay: false,
@@ -412,6 +432,7 @@
                 label: '纭瀵嗙爜',
                 prop: 'password2',
                 hide: true,
+                type: "password",
                 editDisplay: false,
                 viewDisplay: false,
                 rules: [{required: true, validator: validatePass2, trigger: 'blur'}]
@@ -547,7 +568,7 @@
                   value: "id"
                 },
                 rules: [{
-                  required: true,
+                  required: false,
                   message: "璇烽�夋嫨鎵�灞炲矖浣�",
                   trigger: "click"
                 }],
@@ -694,6 +715,7 @@
     'form.tenantId'() {
       if (this.form.tenantId !== '' && this.initFlag) {
         this.initData(this.form.tenantId);
+        console.log('this.form.tenantId',this.form.tenantId)
       }
     },
     'excelForm.isCovered'() {
@@ -747,11 +769,40 @@
     }
   },
   methods: {
-    beOpen(done,type){
-      console.log(done,type)
+
+    // beOpen(done,type){
+    //   console.log(done,type)
+    // },
+    // 鐢ㄦ埛鍋滅敤鍚敤鐘舵��
+    /** 淇敼鐢ㄦ埛鐘舵�� */
+    updateUserStatus(){
+      let list = this.selectionList;
+      if(func.isEmpty(list)){
+        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;
+      updateUserStatus(userIds,status).then(res=>{
+        this.$message({
+          type: "success",
+          message: "鎿嶄綔鎴愬姛!"
+        });
+        this.onLoad(this.page);
+      })
     },
     //esc鍙栨秷閿搷浣�
-    handleClose(done) {
+    /*handleClose(done) {
       this.$confirm('纭鍏抽棴锛�')
         .then(() => {
           done();
@@ -760,7 +811,7 @@
           done();
         });
 
-    },
+    },*/
     //鐐瑰嚮閰嶇疆瀵嗙爜绛栫暐
     handlepass(){
       if (this.selectionList.length === 0) {
@@ -769,8 +820,6 @@
       }else {
         this.passVisible=true;
       }
-      //console.log("selectionList",this.selectionList)
-      //console.log(this.UserPwdstrategyVO)
     },
     // 璁剧疆瀵嗙爜绛栫暐锛屼紶閫掍笅鎷夋鐨刬d鍜屽閫夋鐨刬d
     passhandle(){
@@ -812,6 +861,7 @@
     },
     nodeClick(data) {
       console.log(data)
+      console.log(this.form.tenantId)
       this.treeDeptId = data.id;
       this.page.currentPage = 1;
       this.onLoad(this.page);
@@ -844,24 +894,22 @@
       });
     },
     rowSave(row, done, loading) {
-      const prop = this.findObject(this.option.group, 'tenantId');
-      console.log('2',prop)
-      row.deptId = row.deptId.join(",");
-      row.roleId = row.roleId.join(",");
-      row.postId = row.postId.join(",");
-      console.log('3',row)
-      add(row).then(() => {
-        this.initFlag = false;
-        this.onLoad(this.page);
-        this.$message({
-          type: "success",
-          message: "鎿嶄綔鎴愬姛!"
+        row.deptId = row.deptId.join(",");
+        row.roleId = row.roleId.join(",");
+        row.postId = row.postId.join(",");
+        console.log('3',row)
+        add(row).then(() => {
+          this.initFlag = false;
+          this.onLoad(this.page);
+          this.$message({
+            type: "success",
+            message: "鎿嶄綔鎴愬姛!"
+          });
+          done();
+        }, error => {
+          window.console.log(error);
+          loading();
         });
-        done();
-      }, error => {
-        window.console.log(error);
-        loading();
-      });
     },
     rowUpdate(row, index, done, loading) {
       row.deptId = row.deptId.join(",");
@@ -1033,7 +1081,12 @@
       })
     },
     beforeOpen(done, type) {
-      console.log(type)
+      //console.log(type)
+      // console.log('this.tenantId',this.tenantId)
+      // const column = this.findObject(this.option.group,'tenantId');
+      // column.value=this.tenantId;
+      // console.log('column',column)
+      // if(this.treeDeptId){
       if (["edit", "view"].includes(type)) {
         getUser(this.form.id).then(res => {
           this.form = res.data.data;
@@ -1049,9 +1102,12 @@
         });
       }
       const prop = this.findObject(this.option.group, 'tenantId');
-      console.log('1',prop)
+      //console.log('1',prop)
       this.initFlag = true;
       done();
+      // }else {
+      //   this.$message.warning('璇烽�夋嫨涓�鏉℃墍灞炵鎴�')
+      // }
     },
     currentChange(currentPage) {
       this.page.currentPage = currentPage;
@@ -1069,6 +1125,7 @@
         this.page.total = data.total;
         this.data = data.records;
         this.loading = false;
+        this.tenantId=data.records[0].tenantId
         this.selectionClear();
       });
     },

--
Gitblit v1.9.3