From 00212ed8e808fc7b76c04389224e65f27f074fb2 Mon Sep 17 00:00:00 2001
From: su1124 <1583764726@qq.com>
Date: 星期五, 26 四月 2024 15:30:04 +0800
Subject: [PATCH] su

---
 src/views/system/user/index.vue |   92 +++++++++++++++++++++++++++++++++++++++------
 1 files changed, 79 insertions(+), 13 deletions(-)

diff --git a/src/views/system/user/index.vue b/src/views/system/user/index.vue
index 01ec48b..7a63e71 100644
--- a/src/views/system/user/index.vue
+++ b/src/views/system/user/index.vue
@@ -9,7 +9,7 @@
         </div>
         <div class="head-container">
           <el-tree :data="deptOptions" :props="defaultProps" :expand-on-click-node="false"
-            :filter-node-method="filterNode" ref="tree" node-key="id" default-expand-all highlight-current
+            :filter-node-method="filterNode" ref="tree" node-key="id" default-expand-all  :default-expanded-keys="treeId" highlight-current
             @node-click="handleNodeClick" />
         </div>
       </el-col>
@@ -192,6 +192,13 @@
           <el-input v-model="form.userId" placeholder="璇疯緭鍏ョ敤鎴穒d" />
         </el-form-item> -->
           <el-form-item label="鐢ㄦ埛鍚嶇О" prop="nickName">
+             <span
+            slot="label"
+            style="display: inline-block; border-bottom: 2px solid blue"
+            @click="handlePackage"
+          >
+            鐢ㄦ埛鍚嶇О
+          </span>
             <el-input v-model="form.nickName" placeholder="璇疯緭鍏ョ敤鎴锋樀绉�" maxlength="30" style="width: 130px" />
           </el-form-item>
           <el-form-item label="鐢ㄦ埛宸ュ彿" prop="userName">
@@ -672,10 +679,12 @@
         <el-button type="primary" @click="tijiao">纭� 瀹�</el-button>
       </span>
     </el-dialog>
+    <yonghu ref="aaa" @add="handleChanges" />
   </div>
 </template>
 
 <script>
+import yonghu from "@/components/yonghu";
 import {
   listUser,
   getUser,
@@ -688,6 +697,7 @@
   getDeptListByDictHospId,
 } from "@/api/system/user";
 import { getToken } from "@/utils/auth";
+import { getInfo } from "@/api/login";
 import { listHosp } from "@/api/hosp/hosp";
 import Treeselect from "@riophae/vue-treeselect";
 import "@riophae/vue-treeselect/dist/vue-treeselect.css";
@@ -713,8 +723,22 @@
     "dict_user_work",
     "dict_qhdm",
   ],
-  components: { Treeselect },
+  components: { Treeselect, yonghu },
   data() {
+    let checkPhoneNum = (rule, value, callback) => {
+         console.log( value)
+      let patter = new RegExp(/^1\s*[3456789]\s*(\d\s*){9}$/);
+      if (value == "" && value == undefined && !value) {
+        console.log(11111)
+        return callback('');
+      }  else if(value != undefined && value != ""){
+        console.log(22222)
+        return callback();
+      }else if (!patter.test(value)) {
+        console.log(33333)
+        return callback('');
+      }
+    };
     return {
       row: [],
       flag: false,
@@ -724,6 +748,7 @@
       userInfoList: [],
       hospList: [],
       activeNames: ["1"],
+      treeId: [],
       // 閬僵灞�
       loading: true,
       // 閫変腑鏁扮粍
@@ -825,37 +850,37 @@
       // 琛ㄥ崟鏍¢獙
       rules: {
         userName: [
-          { required: true, message: "鐢ㄦ埛鍚嶇О涓嶈兘涓虹┖", trigger: "blur" },
+          { required: true, validator: checkPhoneNum,  trigger: "blur" },
           {
             min: 2,
             max: 20,
-            message: "鐢ㄦ埛鍚嶇О闀垮害蹇呴』浠嬩簬 2 鍜� 20 涔嬮棿",
+            validator: checkPhoneNum, 
             trigger: "blur",
           },
         ],
         nickName: [
-          { required: true, message: "鐢ㄦ埛鏄电О涓嶈兘涓虹┖", trigger: "blur" },
+          { required: true, validator: checkPhoneNum,  trigger: "blur" },
         ],
         password: [
-          { required: true, message: "鐢ㄦ埛瀵嗙爜涓嶈兘涓虹┖", trigger: "blur" },
+          { required: true, validator: checkPhoneNum,  trigger: "blur" },
           {
             min: 5,
             max: 20,
-            message: "鐢ㄦ埛瀵嗙爜闀垮害蹇呴』浠嬩簬 5 鍜� 20 涔嬮棿",
+            validator: checkPhoneNum, 
             trigger: "blur",
           },
         ],
         email: [
           {
             type: "email",
-            message: "璇疯緭鍏ユ纭殑閭鍦板潃",
+            validator: checkPhoneNum, 
             trigger: ["blur", "change"],
           },
         ],
         phonenumber: [
           {
             pattern: /^1[3|4|5|6|7|8|9][0-9]\d{8}$/,
-            message: "璇疯緭鍏ユ纭殑鎵嬫満鍙风爜",
+            validator: checkPhoneNum, 
             trigger: "blur",
           },
         ],
@@ -876,8 +901,17 @@
   watch: {
     // 鏍规嵁鍚嶇О绛涢�夐儴闂ㄦ爲
     deptName(val) {
-      this.$refs.tree.filter(val);
+      console.log(val)
     },
+    treeId(newVal, oldVal) {
+      if (newVal) {
+        this.$nextTick(() => {
+          document
+            .querySelector('.el-tree-node__children .el-tree-node__content')
+            .click();
+        });
+      }
+    }
   },
   computed: {
     type() {
@@ -888,8 +922,9 @@
     }
   },
   created() {
-    this.getList();
     this.getDeptTree();
+    this.getList();
+   
     // this.getRoleList();
     // this.getConfigKey("sys.user.initPassword").then((response) => {
     //   this.initPassword = response.msg;
@@ -900,7 +935,8 @@
     /** 鏌ヨ鐢ㄦ埛鍒楄〃 */
     getList() {
       this.loading = true;
-      listUser(this.addDateRange(this.queryParams, this.dateRange)).then(
+      if(this.queryParams.deptId){
+        listUser(this.addDateRange(this.queryParams, this.dateRange)).then(
         (response) => {
           response.rows.forEach((item, index) => {
             item.newID =
@@ -913,6 +949,8 @@
           this.loading = false;
         }
       );
+      }
+      
     },
     /** 鏌ヨ宀椾綅鍒楄〃 */
     getPostList() {
@@ -932,6 +970,7 @@
     getlistHosp() {
       listHosp(this.queryParams).then((response) => {
         this.hospList = response.rows;
+
         this.total = response.total;
       });
     },
@@ -944,6 +983,10 @@
     getDeptTree() {
       deptTreeSelect().then((response) => {
         this.deptOptions = response.data;
+        console.log( this.deptOptions)
+        this.treeId.push(this.deptOptions[0].id)
+        this.queryParams.deptId = this.deptOptions[0].id
+        console.log(this.queryParams.deptId)
       });
     },
     // 绛涢�夎妭鐐�
@@ -955,6 +998,19 @@
     handleNodeClick(data) {
       this.queryParams.deptId = data.id;
       this.handleQuery();
+    },
+     handlePackage() {
+      this.$refs.aaa.open = true;
+      this.$refs.aaa.getList();
+      this.$refs.aaa.title = "鏁版嵁瀛楀吀";
+    },
+    handleChanges(param1) {
+      this.form.nickName = param1[0].staffName;
+      // this.form.hisPacId = param1[0].pacId;
+      // if (param1[0].price) {
+      //   this.form.counterPrice = param1[0].price;
+      //   this.form.retailPrice = param1[0].price;
+      // }
     },
     // 鐢ㄦ埛鐘舵�佷慨鏀�
     handleStatusChange(row) {
@@ -1047,6 +1103,12 @@
       this.title = "鐢ㄦ埛淇℃伅缁存姢";
       this.getPostList();
       this.getlistHosp();
+      getInfo(this.queryParams).then((response) => {
+        this.form.hospId = response.user.hospId;
+        if (this.form.hospId) {
+          this.sendhospName()
+        }
+      });
       // getUser().then((response) => {
       //   this.postOptions = response.posts;
       //   this.roleOptions = response.roles;
@@ -1068,6 +1130,7 @@
       this.title = "鐢ㄦ埛淇℃伅缁存姢";
       this.open = true;
       this.form = row;
+      this.form.hospId = Number(row.hospId)
       // listUser(this.addDateRange(this.queryParams, this.dateRange)).then(
       //   (response) => {
       //     response.rows.forEach((item, index) => {
@@ -1090,6 +1153,9 @@
       this.getlistHosp();
       this.reset();
       this.form = row;
+      if (this.form.hospId) {
+        this.sendhospName()
+      }
       // this.form.userInfo.id = null;
       // if(this.form.userInfo != null){
       //   this.forms = this.form.userInfo;
@@ -1151,7 +1217,7 @@
             this.dialogVisible1 = false;
           }
         })
-      }else{
+      } else {
         this.$modal.msgError("鐢ㄦ埛鍚嶅瘑鐮佷笉鑳戒负绌�");
       }
 

--
Gitblit v1.8.0