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/dept/index.vue |   51 +++++++++++++++++++++++++++++++--------------------
 1 files changed, 31 insertions(+), 20 deletions(-)

diff --git a/src/views/system/dept/index.vue b/src/views/system/dept/index.vue
index 7a80b72..45949df 100644
--- a/src/views/system/dept/index.vue
+++ b/src/views/system/dept/index.vue
@@ -227,17 +227,18 @@
         label-width="110px"
         :inline="true"
       >
-        <el-form-item label="涓婄骇绉戝" prop="parentName">
+        <el-form-item label="涓婄骇绉戝" prop="parentId">
           <el-select
             v-model="form.parentId"
             placeholder="璇烽�夋嫨涓婄骇绉戝"
             style="width: 200px"
             clearable
             filterable
+            @change="$forceUpdate()"
           >
             <el-option
               v-for="dict in deptOption"
-              :key="dict.label"
+              :key="dict.id"
               :label="dict.label"
               :value="dict.id"
             ></el-option>
@@ -252,12 +253,12 @@
             placeholder="璇疯緭鍏ョ瀹ょ紪鐮�"
           />
         </el-form-item>
-        <el-form-item label="鏄剧ず椤哄簭" prop="orderNum">
+        <el-form-item label="鏄剧ず椤哄簭" prop="orderNum" style="margin-top:20px">
           <el-input v-model="form.orderNum" placeholder="璇疯緭鍏ユ樉绀洪『搴�" />
         </el-form-item>
-        <el-form-item label="鎵�灞炲尰闄�" prop="hospName">
+        <el-form-item label="鎵�灞炲尰闄�" prop="hospId" style="margin-top:20px">
           <el-select
-            v-model="form.hospName"
+            v-model="form.hospId"
             placeholder="璇烽�夋嫨鎵�灞炲尰闄�"
             clearable
             filterable
@@ -267,17 +268,17 @@
               v-for="dict in hospList"
               :key="dict.hospAreaName"
               :label="dict.hospAreaName"
-              :value="dict.hospAreaName"
+              :value="dict.hospAreaId"
             />
           </el-select>
         </el-form-item>
-        <el-form-item label="璐熻矗浜�" prop="leader">
+        <el-form-item label="璐熻矗浜�" prop="leader" style="margin-top:20px">
           <el-input v-model="form.leader" placeholder="璇疯緭鍏ヨ礋璐d汉" />
         </el-form-item>
-        <el-form-item label="鑱旂郴鐢佃瘽" prop="phone">
+        <el-form-item label="鑱旂郴鐢佃瘽" prop="phone" style="margin-top:20px">
           <el-input v-model="form.phone" placeholder="璇疯緭鍏ヨ仈绯荤數璇�" />
         </el-form-item>
-        <el-form-item label="閭" prop="email">
+        <el-form-item label="閭" prop="email" style="margin-top:20px">
           <el-input v-model="form.email" placeholder="璇疯緭鍏ラ偖绠�" />
         </el-form-item>
         <!-- <el-form-item label="绉戝鑻辨枃鍚嶇О" prop="departmentEnName">
@@ -336,13 +337,13 @@
           <el-date-picker clearable v-model="form.buildDate" type="date" value-format="yyyy-MM-dd" placeholder="璇烽�夋嫨寤虹珛鏃ユ湡" style="width: 200px">
           </el-date-picker>
         </el-form-item> -->
-        <el-form-item label="鏍囧噯绉戝" prop="standardDeptCode">
+        <el-form-item label="鏍囧噯绉戝" prop="standardDeptCode" style="margin-top:20px">
           <el-input
             v-model="form.standardDeptCode"
             placeholder="璇疯緭鍏ユ爣鍑嗙瀹�"
           />
         </el-form-item>
-        <el-form-item label="绉戝绫诲瀷" prop="deptTypeCode">
+        <el-form-item label="绉戝绫诲瀷" prop="parentOrgType">
           <el-select
             v-model="form.parentOrgType"
             placeholder="璇烽�夋嫨绉戝绫诲瀷"
@@ -421,7 +422,6 @@
   components: { Treeselect },
   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) {
         return callback("");
@@ -467,19 +467,19 @@
       // 琛ㄥ崟鏍¢獙
       rules: {
         parentId: [
-          { required: true, validator: checkPhoneNum, trigger: "blur" },
+          { required: true,  validator: checkPhoneNum, trigger: "blur" },
         ],
         deptName: [
-          { required: true, validator: checkPhoneNum, trigger: "blur" },
+          { required: true, message: "绉戝鍚嶇О涓嶈兘涓虹┖", validator: checkPhoneNum, trigger: "blur" },
         ],
         orderNum: [
-          { required: true, validator: checkPhoneNum, trigger: "blur" },
+          { required: true, message: "鏄剧ず椤哄簭涓嶈兘涓虹┖", validator: checkPhoneNum, trigger: "blur" },
         ],
         departmentCode: [
-          { required: true, validator: checkPhoneNum, trigger: "blur" },
+          { required: true, message: "绉戝缂栫爜涓嶈兘涓虹┖", validator: checkPhoneNum, trigger: "blur" },
         ],
-        hospName: [
-          { required: true, validator: checkPhoneNum, trigger: "blur" },
+        hospId: [
+          { required: true, message: "鎵�灞炲尰闄笉鑳戒负绌�", validator: checkPhoneNum, trigger: "blur" },
         ],
         // email: [
         //   {
@@ -656,8 +656,13 @@
     },
     /** 淇敼鎸夐挳鎿嶄綔 */
     handleUpdate(row) {
-      this.reset();
+      // console.log(11111)
+      // this.reset();
       this.form = row;
+      this.form.parentId = this.form.parentId.toString()
+      if(this.form.parentId == 0){
+        this.deptOption.push({ "id": 0, "label": "涓荤被鐩�", });
+      }
       this.open = true;
       this.title = "绉戝淇℃伅缁存姢  ";
       // getDept(row.deptId).then((response) => {
@@ -682,11 +687,17 @@
       this.$refs["form"].validate((valid) => {
         if (valid) {
           if (this.form.deptId != undefined) {
-            updateDept(this.form).then((response) => {
+            if(this.form.hospId ){
+              // console.log(this.form);
+              updateDept(this.form).then((response) => {
               this.$modal.msgSuccess("淇敼鎴愬姛");
               this.open = false;
               this.getList();
             });
+            }else{
+              this.$modal.msgError("璇峰~鍐欏甫鏄熷彿");
+            }
+           
           } else {
             this.hospList.forEach((element) => {
               if (this.form.hospName == element.hospAreaName) {

--
Gitblit v1.8.0