From 1b8098b7f79b66a80e5ca49d8765606cb5fa0408 Mon Sep 17 00:00:00 2001
From: ludc
Date: 星期四, 30 十一月 2023 19:11:00 +0800
Subject: [PATCH] 操作日志完善

---
 Source/UBCS-WEB/src/views/system/user.vue |  826 ++++++++++++++++++++++++++++++++--------------------------
 1 files changed, 458 insertions(+), 368 deletions(-)

diff --git a/Source/UBCS-WEB/src/views/system/user.vue b/Source/UBCS-WEB/src/views/system/user.vue
index 2214ad6..838ec38 100644
--- a/Source/UBCS-WEB/src/views/system/user.vue
+++ b/Source/UBCS-WEB/src/views/system/user.vue
@@ -5,7 +5,7 @@
         <el-scrollbar style="height: auto;border-bottom-right-radius:8px ">
           <basic-container>
             <div class="abox">
-              <avue-tree :data="treeData" :option="treeOption" @node-click="nodeClick"/>
+              <avue-tree ref="tree" :data="treeData" :option="treeOption" @node-click="nodeClick"/>
             </div>
           </basic-container>
         </el-scrollbar>
@@ -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,13 +143,11 @@
         </el-dialog>
         <!--        璁剧疆瀵嗙爜绛栫暐寮瑰嚭妗�-->
         <el-dialog
-          :before-close="handleClose"
           :visible.sync="passVisible"
           class="passdialog"
           append-to-body
           title="璁剧疆瀵嗙爜绛栫暐"
-          width="30%"
-        >
+          width="30%">
           <el-select v-model="sevalue" placeholder="璇烽�夋嫨"  class="selects" @change="selChange" >
             <el-option
               v-for="item in seoptions"
@@ -155,9 +159,9 @@
             </el-option>
           </el-select>
             <span slot="footer" class="dialog-footer">
-            <el-button @click="passVisible = false">鍙� 娑�</el-button>
-            <el-button type="primary" @click="passhandle">纭� 瀹�</el-button>
-  </span>
+              <el-button @click="passVisible = false">鍙� 娑�</el-button>
+              <el-button type="primary" @click="passhandle">纭� 瀹�</el-button>
+            </span>
         </el-dialog>
       </basic-container>
     </el-col>
@@ -175,12 +179,14 @@
   updatePlatform,
   add,
   grant,
-  resetPassword, unlock
+  resetPassword,
+  unlock,
+  updateUserStatus
 } from "@/api/system/user";
 import {exportBlob} from "@/api/common";
 import {getDeptTree, getDeptLazyTree} from "@/api/system/dept";
 import {getRoleTree} from "@/api/system/role";
-import {getPostList} from "@/api/system/post";
+//import {getPostList} from "@/api/system/post";
 import {mapGetters} from "vuex";
 import website from '@/config/website';
 import {getToken} from '@/util/auth';
@@ -193,23 +199,8 @@
 
 export default {
   data() {
-    const validatePass = (rule, value, callback) => {
-      if (value === '') {
-        callback(new Error('璇疯緭鍏ュ瘑鐮�'));
-      } else {
-        callback();
-      }
-    };
-    const validatePass2 = (rule, value, callback) => {
-      if (value === '') {
-        callback(new Error('璇峰啀娆¤緭鍏ュ瘑鐮�'));
-      } else if (value !== this.form.password) {
-        callback(new Error('涓ゆ杈撳叆瀵嗙爜涓嶄竴鑷�!'));
-      } else {
-        callback();
-      }
-    };
     return {
+      tenantId:'',
       form: {},
       seoptions: [],
       sevalue:"",
@@ -271,290 +262,6 @@
           value: 'value',
           children: 'children'
         }
-      },
-      option: {
-        height:'auto',
-        calcHeight: 80,
-        tip: false,
-        searchShow: true,
-        searchMenuSpan: 6,
-        border: true,
-        index: true,
-        selection: true,
-        viewBtn: true,
-        dialogType: 'drawer',
-        dialogClickModal: false,
-        highlightCurrentRow: true, //琛岄�変腑鏃堕珮浜�
-        column: [
-          {
-            label: "鐧诲綍璐﹀彿",
-            prop: "account",
-            search: true,
-            display: false
-          },
-          {
-            label: "鎵�灞炵鎴�",
-            prop: "tenantName",
-            slot: true,
-            display: false
-          },
-          {
-            label: "鐢ㄦ埛濮撳悕",
-            prop: "realName",
-            search: true,
-            display: false
-          },
-          {
-            label: "鎵�灞炶鑹�",
-            prop: "roleName",
-            slot: true,
-            display: false
-          },
-          {
-            label: "瀵嗙爜绛栫暐",
-            prop: "pwdStrategy",
-            slot: true,
-            display: false
-          },
-          {
-            label: "鎵�灞為儴闂�",
-            prop: "deptName",
-            slot: true,
-            display: false
-          },
-          {
-            label: "鐢ㄦ埛骞冲彴",
-            prop: "userTypeName",
-            slot: true,
-            display: false
-          },
-          {
-            label: "鐢ㄦ埛骞冲彴",
-            type: "select",
-            dicUrl: "/api/ubcs-system/dict/dictionary?code=user_type",
-            props: {
-              label: "dictValue",
-              value: "dictKey"
-            },
-            dataType: "number",
-            search: true,
-            hide: true,
-            display: false,
-            prop: "userType",
-            rules: [{
-              required: true,
-              message: "璇烽�夋嫨鐢ㄦ埛骞冲彴",
-              trigger: "blur"
-            }]
-          },
-        ],
-        group: [
-          {
-            label: '鍩虹淇℃伅',
-            prop: 'baseInfo',
-            icon: 'el-icon-user-solid',
-            column: [
-              {
-                label: "鎵�灞炵鎴�",
-                prop: "tenantId",
-                type: "tree",
-                dicUrl: "/api/ubcs-system/tenant/select",
-                props: {
-                  label: "tenantName",
-                  value: "tenantId"
-                },
-                hide: !website.tenantMode,
-                addDisplay: website.tenantMode,
-                editDisplay: website.tenantMode,
-                viewDisplay: website.tenantMode,
-                rules: [{
-                  required: true,
-                  message: "璇疯緭鍏ユ墍灞炵鎴�",
-                  trigger: "click"
-                }],
-                span: 24,
-              },
-              {
-                label: "鐧诲綍璐﹀彿",
-                prop: "account",
-                rules: [{
-                  required: true,
-                  message: "璇疯緭鍏ョ櫥褰曡处鍙�",
-                  trigger: "blur"
-                }],
-              },
-              {
-                label: "鐢ㄦ埛骞冲彴",
-                type: "select",
-                dicUrl: "/api/ubcs-system/dict/dictionary?code=user_type",
-                props: {
-                  label: "dictValue",
-                  value: "dictKey"
-                },
-                dataType: "number",
-                slot: true,
-                prop: "userType",
-                rules: [{
-                  required: true,
-                  message: "璇烽�夋嫨鐢ㄦ埛骞冲彴",
-                  trigger: "blur"
-                }]
-              },
-              {
-                label: '瀵嗙爜',
-                prop: 'password',
-                hide: true,
-                editDisplay: false,
-                viewDisplay: false,
-                rules: [{required: true, validator: validatePass, trigger: 'blur'}]
-              },
-              {
-                label: '纭瀵嗙爜',
-                prop: 'password2',
-                hide: true,
-                editDisplay: false,
-                viewDisplay: false,
-                rules: [{required: true, validator: validatePass2, trigger: 'blur'}]
-              },
-            ]
-          },
-          {
-            label: '璇︾粏淇℃伅',
-            prop: 'detailInfo',
-            icon: 'el-icon-s-order',
-            column: [
-              {
-                label: "鐢ㄦ埛鏄电О",
-                prop: "name",
-                hide: true,
-                rules: [{
-                  required: true,
-                  message: "璇疯緭鍏ョ敤鎴锋樀绉�",
-                  trigger: "blur"
-                }]
-              },
-              {
-                label: "鐢ㄦ埛濮撳悕",
-                prop: "realName",
-                rules: [{
-                  required: true,
-                  message: "璇疯緭鍏ョ敤鎴峰鍚�",
-                  trigger: "blur"
-                }, {
-                  min: 2,
-                  max: 5,
-                  message: '濮撳悕闀垮害鍦�2鍒�5涓瓧绗�'
-                }]
-              },
-              {
-                label: "鎵嬫満鍙风爜",
-                prop: "phone",
-                overHidden: true
-              },
-              {
-                label: "鐢靛瓙閭",
-                prop: "email",
-                hide: true,
-                overHidden: true
-              },
-              {
-                label: "鐢ㄦ埛鎬у埆",
-                prop: "sex",
-                type: "select",
-                dicData: [
-                  {
-                    label: "鐢�",
-                    value: 1
-                  },
-                  {
-                    label: "濂�",
-                    value: 2
-                  },
-                  {
-                    label: "鏈煡",
-                    value: 3
-                  }
-                ],
-                hide: true
-              },
-              {
-                label: "鐢ㄦ埛鐢熸棩",
-                type: "date",
-                prop: "birthday",
-                format: "yyyy-MM-dd hh:mm:ss",
-                valueFormat: "yyyy-MM-dd hh:mm:ss",
-                hide: true
-              },
-              {
-                label: "璐﹀彿鐘舵��",
-                prop: "statusName",
-                hide: true,
-                display: false
-              }
-            ]
-          },
-          {
-            label: '鑱岃矗淇℃伅',
-            prop: 'dutyInfo',
-            icon: 'el-icon-s-custom',
-            column: [
-              {
-                label: "鐢ㄦ埛缂栧彿",
-                prop: "code",
-              },
-              {
-                label: "鎵�灞炶鑹�",
-                prop: "roleId",
-                multiple: true,
-                type: "tree",
-                dicData: [],
-                props: {
-                  label: "title"
-                },
-                checkStrictly: true,
-                slot: true,
-                rules: [{
-                  required: true,
-                  message: "璇烽�夋嫨鎵�灞炶鑹�",
-                  trigger: "click"
-                }]
-              },
-              {
-                label: "鎵�灞為儴闂�",
-                prop: "deptId",
-                type: "tree",
-                multiple: true,
-                dicData: [],
-                props: {
-                  label: "title"
-                },
-                checkStrictly: true,
-                slot: true,
-                rules: [{
-                  required: true,
-                  message: "璇烽�夋嫨鎵�灞為儴闂�",
-                  trigger: "click"
-                }]
-              },
-              {
-                label: "鎵�灞炲矖浣�",
-                prop: "postId",
-                type: "tree",
-                multiple: true,
-                dicData: [],
-                props: {
-                  label: "postName",
-                  value: "id"
-                },
-                rules: [{
-                  required: true,
-                  message: "璇烽�夋嫨鎵�灞炲矖浣�",
-                  trigger: "click"
-                }],
-              },
-            ]
-          },
-        ]
       },
       data: [],
       platformQuery: {},
@@ -687,13 +394,15 @@
         pwdstrategyId:''
       },
       userflag:true,
-      usernumber:0
+      usernumber:0,
+      userStatus:false,
     };
   },
   watch: {
     'form.tenantId'() {
       if (this.form.tenantId !== '' && this.initFlag) {
         this.initData(this.form.tenantId);
+        // console.log('this.form.tenantId',this.form.tenantId)
       }
     },
     'excelForm.isCovered'() {
@@ -705,21 +414,337 @@
   },
   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)
-      };
+    option() {
+      return{
+          height:'auto',
+          calcHeight: 80,
+          tip: false,
+          searchShow: true,
+          searchMenuSpan: 6,
+          columnBtn:false,
+          border: true,
+          index: true,
+          selection: true,
+          /* 涓嬮潰杩欎笁涓睘鎬ч粯璁よ缃负true锛�
+            瀹為檯鏍规嵁permissionList涓鐓х殑灞炴�ц繘琛屾帶鍒剁殑 */
+          viewBtn: true,
+          editBtn: true,
+          delBtn: true,
+          addBtn: true,
+          dialogType: 'drawer',
+          dialogClickModal: false,
+          highlightCurrentRow: true, //琛岄�変腑鏃堕珮浜�
+          column: [
+            {
+              label: "鐧诲綍璐﹀彿",
+              prop: "account",
+              search: true,
+              display: false
+            },
+            {
+              label: "鎵�灞炵鎴�",
+              prop: "tenantName",
+              slot: true,
+              display: false
+            },
+            {
+              label: "鐢ㄦ埛濮撳悕",
+              prop: "realName",
+              search: true,
+              display: false
+            },
+            {
+              label: "鎵�灞炶鑹�",
+              prop: "roleName",
+              slot: true,
+              display: false
+            },
+            {
+              label: "瀵嗙爜绛栫暐",
+              prop: "pwdStrategy",
+              slot: true,
+              display: false
+            },
+            {
+              label: "鎵�灞為儴闂�",
+              prop: "deptName",
+              slot: true,
+              display: false
+            },
+            {
+              label: "鐢ㄦ埛骞冲彴",
+              prop: "userTypeName",
+              slot: true,
+              display: false
+            },
+            {
+              label: "鐢ㄦ埛骞冲彴",
+              type: "select",
+              dicUrl: "/api/ubcs-system/dict/dictionary?code=user_type",
+              props: {
+                label: "dictValue",
+                value: "dictKey"
+              },
+              dataType: "number",
+              search: true,
+              hide: true,
+              display: false,
+              prop: "userType",
+              rules: [{
+                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: [
+            {
+              label: '鍩虹淇℃伅',
+              prop: 'baseInfo',
+              icon: 'el-icon-user-solid',
+              column: [
+                {
+                  label: "鎵�灞炵鎴�",
+                  prop: "tenantId",
+                  type: "tree",
+                  dicUrl: "/api/ubcs-system/tenant/select",
+                  props: {
+                    label: "tenantName",
+                    value: "tenantId"
+                  },
+                  hide: !website.tenantMode,
+                  addDisplay: website.tenantMode,
+                  editDisplay: website.tenantMode,
+                  viewDisplay: website.tenantMode,
+                  rules: [{
+                    required: true,
+                    message: "璇疯緭鍏ユ墍灞炵鎴�",
+                    trigger: "click"
+                  }],
+                  span: 24,
+                  value:""
+                },
+                {
+                  label: "鐧诲綍璐﹀彿",
+                  prop: "account",
+                  rules: [{
+                    required: true,
+                    message: "璇疯緭鍏ョ櫥褰曡处鍙�",
+                    trigger: "blur"
+                  }],
+                },
+                {
+                  label: "鐢ㄦ埛骞冲彴",
+                  type: "select",
+                  dicUrl: "/api/ubcs-system/dict/dictionary?code=user_type",
+                  props: {
+                    label: "dictValue",
+                    value: "dictKey"
+                  },
+                  value:'1',
+                  dataType: "number",
+                  slot: true,
+                  prop: "userType",
+                  rules: [{
+                    required: true,
+                    message: "璇烽�夋嫨鐢ㄦ埛骞冲彴",
+                    trigger: "blur"
+                  }]
+                },
+                {
+                  label: '瀵嗙爜',
+                  prop: 'password',
+                  type: "password",
+                  hide: true,
+                  editDisplay: false,
+                  viewDisplay: false,
+                  rules: [{
+                    required: true,
+                    validator:(rule, value,callback) => {
+                      if (value === '') {
+                        callback(new Error('璇峰啀娆¤緭鍏ュ瘑鐮�'));
+                      } else if (value !== this.form.password) {
+                        callback(new Error('涓ゆ杈撳叆瀵嗙爜涓嶄竴鑷�!'));
+                      } else {
+                        callback();
+                      }
+                    },
+                    trigger: 'blur'
+                  }]
+                },
+                {
+                  label: '纭瀵嗙爜',
+                  prop: 'password2',
+                  hide: true,
+                  type: "password",
+                  editDisplay: false,
+                  viewDisplay: false,
+                  rules: [{
+                    required: true,
+                    validator:(rule, value,callback) => {
+                      if (value === '') {
+                        callback(new Error('璇峰啀娆¤緭鍏ュ瘑鐮�'));
+                      } else if (value !== this.form.password) {
+                        callback(new Error('涓ゆ杈撳叆瀵嗙爜涓嶄竴鑷�!'));
+                      } else {
+                        callback();
+                      }
+                    },
+                    trigger: 'blur'
+                  }]
+                },
+              ]
+            },
+            {
+              label: '璇︾粏淇℃伅',
+              prop: 'detailInfo',
+              icon: 'el-icon-s-order',
+              column: [
+                {
+                  label: "鐢ㄦ埛鏄电О",
+                  prop: "name",
+                  hide: true,
+                  rules: [{
+                    required: true,
+                    message: "璇疯緭鍏ョ敤鎴锋樀绉�",
+                    trigger: "blur"
+                  }]
+                },
+                {
+                  label: "鐢ㄦ埛濮撳悕",
+                  prop: "realName",
+                  rules: [{
+                    required: true,
+                    message: "璇疯緭鍏ョ敤鎴峰鍚�",
+                    trigger: "blur"
+                  }, {
+                    min: 2,
+                    max: 5,
+                    message: '濮撳悕闀垮害鍦�2鍒�5涓瓧绗�'
+                  }]
+                },
+                {
+                  label: "鎵嬫満鍙风爜",
+                  prop: "phone",
+                  overHidden: true
+                },
+                {
+                  label: "鐢靛瓙閭",
+                  prop: "email",
+                  hide: true,
+                  overHidden: true
+                },
+                {
+                  label: "鐢ㄦ埛鎬у埆",
+                  prop: "sex",
+                  type: "select",
+                  dicData: [
+                    {
+                      label: "鐢�",
+                      value: 1
+                    },
+                    {
+                      label: "濂�",
+                      value: 2
+                    },
+                    {
+                      label: "鏈煡",
+                      value: 3
+                    }
+                  ],
+                  hide: true
+                },
+                {
+                  label: "鐢ㄦ埛鐢熸棩",
+                  type: "date",
+                  prop: "birthday",
+                  format: "yyyy-MM-dd hh:mm:ss",
+                  valueFormat: "yyyy-MM-dd hh:mm:ss",
+                  hide: true
+                },
+                {
+                  label: "璐﹀彿鐘舵��",
+                  prop: "statusName",
+                  hide: true,
+                  display: false
+                }
+              ]
+            },
+            {
+              label: '鑱岃矗淇℃伅',
+              prop: 'dutyInfo',
+              icon: 'el-icon-s-custom',
+              column: [
+                {
+                  label: "鐢ㄦ埛缂栧彿",
+                  prop: "code",
+                },
+                {
+                  label: "鎵�灞炶鑹�",
+                  prop: "roleId",
+                  multiple: true,
+                  type: "tree",
+                  dicData: [],
+                  disabled:this.userStatus,
+                  props: {
+                    label: "title"
+                  },
+                  checkStrictly: true,
+                  slot: true,
+                  rules: [{
+                    required: true,
+                    message: "璇烽�夋嫨鎵�灞炶鑹�",
+                    trigger: "click"
+                  }]
+                },
+                {
+                  label: "鎵�灞為儴闂�",
+                  prop: "deptId",
+                  type: "tree",
+                  multiple: true,
+                  dicData: [],
+                  props: {
+                    label: "title"
+                  },
+                  checkStrictly: true,
+                  slot: true,
+                  rules: [{
+                    required: true,
+                    message: "璇烽�夋嫨鎵�灞為儴闂�",
+                    trigger: "click"
+                  }]
+                },
+              ]
+            },
+          ]
+
+      }
     },
     ids() {
       let ids = [];
@@ -747,8 +772,54 @@
     }
   },
   methods: {
+
+    // 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();
@@ -757,7 +828,7 @@
           done();
         });
 
-    },
+    },*/
     //鐐瑰嚮閰嶇疆瀵嗙爜绛栫暐
     handlepass(){
       if (this.selectionList.length === 0) {
@@ -766,8 +837,6 @@
       }else {
         this.passVisible=true;
       }
-      //console.log("selectionList",this.selectionList)
-      //console.log(this.UserPwdstrategyVO)
     },
     // 璁剧疆瀵嗙爜绛栫暐锛屼紶閫掍笅鎷夋鐨刬d鍜屽閫夋鐨刬d
     passhandle(){
@@ -780,7 +849,7 @@
        this.UserPwdstrategyVO.pwdstrategyId=this.id
 
       //璇锋眰
-      insert(this.UserPwdstrategyVO.userIds).then(()=>{
+      insert(this.UserPwdstrategyVO).then(()=>{
         this.passVisible=false
         this.$message({
           type: "success",
@@ -808,6 +877,8 @@
       });
     },
     nodeClick(data) {
+      // console.log(data)
+      // console.log(this.form.tenantId)
       this.treeDeptId = data.id;
       this.page.currentPage = 1;
       this.onLoad(this.page);
@@ -823,10 +894,10 @@
         const column = this.findObject(this.option.group, "deptId");
         column.dicData = res.data.data;
       });
-      getPostList(tenantId).then(res => {
-        const column = this.findObject(this.option.group, "postId");
-        column.dicData = res.data.data;
-      });
+      // getPostList(tenantId).then(res => {
+      //   const column = this.findObject(this.option.group, "postId");
+      //   column.dicData = res.data.data;
+      // });
     },
     submitRole() {
       const roleList = this.$refs.treeRole.getCheckedKeys().join(",");
@@ -840,21 +911,22 @@
       });
     },
     rowSave(row, done, loading) {
-      row.deptId = row.deptId.join(",");
-      row.roleId = row.roleId.join(",");
-      row.postId = row.postId.join(",");
-      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(",");
@@ -1026,6 +1098,18 @@
       })
     },
     beforeOpen(done, type) {
+      // console.log(type)
+      if(type === "edit"){
+        this.userStatus = true;
+      }else {
+        this.userStatus = false;
+      }
+      //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;
@@ -1040,8 +1124,13 @@
           }
         });
       }
+      const prop = this.findObject(this.option.group, 'tenantId');
+      //console.log('1',prop)
       this.initFlag = true;
       done();
+      // }else {
+      //   this.$message.warning('璇烽�夋嫨涓�鏉℃墍灞炵鎴�')
+      // }
     },
     currentChange(currentPage) {
       this.page.currentPage = currentPage;
@@ -1059,6 +1148,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