From e87846bfc7e467836d958632b15a22a901eb51d2 Mon Sep 17 00:00:00 2001
From: fuliqi <fuliqi@qq.com>
Date: 星期四, 09 一月 2025 15:33:56 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 src/components/flow/User/SingleUser.vue |   90 ++++++++++-----------------------------------
 1 files changed, 20 insertions(+), 70 deletions(-)

diff --git a/src/components/flow/User/SingleUser.vue b/src/components/flow/User/SingleUser.vue
index e8cf64d..d779e71 100644
--- a/src/components/flow/User/SingleUser.vue
+++ b/src/components/flow/User/SingleUser.vue
@@ -1,7 +1,7 @@
 <template>
   <div>
     <el-dialog
-      :title="`閫夋嫨杞姙鎺ユ敹浜哄憳`"
+      :title="title"
       :visible.sync="show"
       width="65%"
       :destroy-on-close="true"
@@ -38,11 +38,12 @@
         <!--鐢ㄦ埛鏁版嵁-->
         <el-col :span="18" :xs="24">
           <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
-            <el-form-item label="鐢ㄦ埛鍚嶇О" prop="userName">
+            <el-form-item label="鐢ㄦ埛濮撳悕" prop="nickName">
               <el-input
-                v-model="queryParams.userName"
-                placeholder="璇疯緭鍏ョ敤鎴峰悕绉�"
+                v-model="queryParams.nickName"
+                placeholder="璇疯緭鍏ョ敤鎴峰鍚�"
                 clearable
+                @clear="handleQuery"
                 style="width: 150px"
                 @keyup.enter.native="handleQuery"
               />
@@ -53,7 +54,7 @@
             </el-form-item>
           </el-form>
           <el-table ref="dataTable" v-loading="loading" :row-key="getRowKey" :data="userList" @selection-change="handleUserSelect">
-            <el-table-column type="selection" />
+            <el-table-column type="selection" :reserve-selection="true"/>
             <el-table-column label="鐢ㄦ埛缂栧彿" align="center" key="userId" prop="userId" v-if="columns[0].visible" />
             <el-table-column label="鐧诲綍璐﹀彿" align="center" key="userName" prop="userName" v-if="columns[1].visible" :show-overflow-tooltip="true" />
             <el-table-column label="鐢ㄦ埛濮撳悕" align="center" key="nickName" prop="nickName" v-if="columns[2].visible" :show-overflow-tooltip="true" />
@@ -94,6 +95,11 @@
       required: true,
       type: Boolean
     },
+    title: {
+      type: String,
+      required: false,
+      default: '鎸囧畾浜哄憳'
+    },
     // 鍥炴樉鏁版嵁浼犲��
     selectUser: {
       default: null,
@@ -106,24 +112,16 @@
       innerSelected: null,
       // 閬僵灞�
       loading: true,
-      // 閫変腑鏁扮粍
-      ids: [],
       // 鏄剧ず鎼滅储鏉′欢
       showSearch: true,
       // 鎬绘潯鏁�
       total: 0,
       // 鐢ㄦ埛琛ㄦ牸鏁版嵁
       userList: [],
-      // 寮瑰嚭灞傛爣棰�
-      title: "",
       // 閮ㄩ棬鏍戦�夐」
       deptOptions: undefined,
-      // 鏄惁鏄剧ず寮瑰嚭灞�
-      open: false,
       // 閮ㄩ棬鍚嶇О
       deptName: undefined,
-      // 琛ㄥ崟鍙傛暟
-      form: {},
       defaultProps: {
         children: "children",
         label: "label"
@@ -132,7 +130,7 @@
       queryParams: {
         pageNum: 1,
         pageSize: 5,
-        userName: undefined,
+        nickName: undefined,
         phonenumber: undefined,
         status: undefined,
         deptId: undefined
@@ -147,7 +145,6 @@
         { key: 5, label: `鐘舵�乣, visible: true },
         { key: 6, label: `鍒涘缓鏃堕棿`, visible: true }
       ],
-      radioSelected: 0, // 鍗曢�夋浼犲��
       selectUserList: [] // 鍥炴樉鏁版嵁浼犲��
     };
   },
@@ -156,64 +153,21 @@
     deptName(val) {
       this.$refs.tree.filter(val);
     },
-    selectUser: {
-      deep: true,
-      handler(newVal) {
-        if (newVal) {
-          this.$nextTick(() => {
-            this.$refs.dataTable.clearSelection();
-            this.userList.forEach(item => {
-              if (newVal === item.userId) {
-                this.innerSelected = item
-                this.$refs.dataTable.toggleRowSelection(item)
-              }
-            })
-          });
-        } else {
-          this.innerSelected = null;
-        }
-      },
-    },
-    userLst: {
-      deep: true,
-      handler(newVal) {
-        if (newVal) {
-          this.$nextTick(() => {
-            this.$refs.dataTable.clearSelection();
-            if (! this.innerSelected) {
-              newVal.forEach(item => {
-                if (this.innerSelected.userId === item.userId) {
-                  this.innerSelected = item
-                  this.$refs.dataTable.toggleRowSelection(item)
-                }
-              })
-            }
-          });
-        } else {
-          this.innerSelected = null;
-        }
-      },
-    },
   },
   mounted() {
     this.getList();
     this.getDeptTree();
   },
   methods: {
+    // 淇濆瓨閫変腑鐨勬暟鎹甶d,row-key灏辨槸瑕佹寚瀹氫竴涓猭ey鏍囪瘑杩欎竴琛岀殑鏁版嵁
+    getRowKey (row) {
+      return row.userId
+    },
     setChecked(val) {
-      if (val) {
-        this.$nextTick(() => {
-          this.$refs.dataTable.clearSelection();
-          this.userList.forEach(item => {
-            if (val.userId === item.userId) {
-              this.innerSelected = item
-              this.$refs.dataTable.toggleRowSelection(item)
-            }
-          })
-        });
-      } else {
-        this.innerSelected = null
-      }
+      this.innerSelected = val
+      this.$nextTick(() => {
+        this.$refs.dataTable.toggleRowSelection(val, true)
+      });
     },
     /** 鏌ヨ鐢ㄦ埛鍒楄〃 */
     getList() {
@@ -230,10 +184,6 @@
       deptTreeSelect().then(response => {
         this.deptOptions = response.data;
       });
-    },
-    // 淇濆瓨閫変腑鐨勬暟鎹甶d,row-key灏辨槸瑕佹寚瀹氫竴涓猭ey鏍囪瘑杩欎竴琛岀殑鏁版嵁
-    getRowKey (row) {
-      return row.id
     },
     // 绛涢�夎妭鐐�
     filterNode(value, data) {

--
Gitblit v1.8.0