From a98aa4517e7244024f4647b2789b152948439f22 Mon Sep 17 00:00:00 2001
From: lkk <364857242@qq.com>
Date: 星期三, 12 三月 2025 14:03:56 +0800
Subject: [PATCH] gundongtiao

---
 src/views/system/dept/index.vue |  523 +++++++++++++++++++++++++++++++++++++++++++---------------
 1 files changed, 388 insertions(+), 135 deletions(-)

diff --git a/src/views/system/dept/index.vue b/src/views/system/dept/index.vue
index 27ec998..4cd7fde 100644
--- a/src/views/system/dept/index.vue
+++ b/src/views/system/dept/index.vue
@@ -3,70 +3,212 @@
     <el-row :gutter="20">
       <el-col :span="3" :xs="24">
         <div class="head-container">
-          <el-input v-model="deptName" placeholder="璇疯緭鍏ョ瀹ゅ悕绉�" clearable size="small" prefix-icon="el-icon-search"
-            style="margin-bottom: 15px" />
+          <el-input
+            v-model="deptName"
+            placeholder="璇疯緭鍏ョ瀹ゅ悕绉�"
+            clearable
+            size="small"
+            prefix-icon="el-icon-search"
+            style="margin-bottom: 15px"
+          />
         </div>
-        <div class="head-container">
-          <el-tree :data="deptOption" :props="defaultProps" :expand-on-click-node="false" :filter-node-method="filterNode"
-            ref="tree" node-key="id" default-expand-all highlight-current @node-click="handleNodeClick" />
+        <div class="scrollable-container">
+          <div class="content">
+            <el-tree
+              :data="deptOption"
+              :props="defaultProps"
+              :expand-on-click-node="false"
+              :filter-node-method="filterNode"
+              ref="tree"
+              node-key="id"
+              default-expand-all
+              highlight-current
+              @node-click="handleNodeClick"
+            />
+          </div>
         </div>
       </el-col>
       <el-col :span="20" :xs="24">
-        <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch">
+        <el-form
+          :model="queryParams"
+          ref="queryForm"
+          size="small"
+          :inline="true"
+          v-show="showSearch"
+        >
           <el-form-item label="绉戝鍚嶇О" prop="deptName">
-            <el-input v-model="queryParams.deptName" placeholder="璇疯緭鍏ョ瀹ゅ悕绉�" clearable @keyup.enter.native="handleQuery" />
+            <el-input
+              v-model="queryParams.deptName"
+              placeholder="璇疯緭鍏ョ瀹ゅ悕绉�"
+              clearable
+              @keyup.enter.native="handleQuery"
+            />
           </el-form-item>
           <el-form-item label="鐘舵��" prop="status">
-            <el-select v-model="queryParams.status" placeholder="绉戝鐘舵��" clearable filterable style="width: 100px;">
-              <el-option v-for="dict in dict.type.sys_normal_disable" :key="dict.value" :label="dict.label"
-                :value="dict.value" />
+            <el-select
+              v-model="queryParams.status"
+              placeholder="绉戝鐘舵��"
+              clearable
+              filterable
+              style="width: 100px"
+            >
+              <el-option
+                v-for="dict in dict.type.sys_normal_disable"
+                :key="dict.value"
+                :label="dict.label"
+                :value="dict.value"
+              />
             </el-select>
           </el-form-item>
           <el-form-item>
-            <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">鎼滅储</el-button>
-            <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">閲嶇疆</el-button>
+            <el-button
+              type="primary"
+              icon="el-icon-search"
+              size="mini"
+              @click="handleQuery"
+              >鎼滅储</el-button
+            >
+            <el-button icon="el-icon-refresh" size="mini" @click="resetQuery"
+              >閲嶇疆</el-button
+            >
           </el-form-item>
         </el-form>
         <el-row :gutter="10" class="mb8">
           <el-col :span="1.5">
-            <el-button type="primary" icon="el-icon-plus" size="mini" @click="handleAdd"
-              v-hasPermi="['system:dept:add']">鏂板</el-button>
+            <el-button
+              type="primary"
+              icon="el-icon-plus"
+              size="mini"
+              @click="handleAdd"
+              v-hasPermi="['system:dept:add']"
+              >鏂板</el-button
+            >
           </el-col>
 
           <el-col :span="1.5">
-            <el-button type="primary" icon="el-icon-sort" size="mini" @click="toggleExpandAll">灞曞紑/鎶樺彔</el-button>
+            <el-button
+              type="primary"
+              icon="el-icon-sort"
+              size="mini"
+              @click="toggleExpandAll"
+              >灞曞紑/鎶樺彔</el-button
+            >
           </el-col>
 
-          <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+          <right-toolbar
+            :showSearch.sync="showSearch"
+            @queryTable="getList"
+          ></right-toolbar>
         </el-row>
-        <el-table width="60%"  v-if="refreshTable" v-loading="loading" :data="deptList" border row-key="deptId"
-          :default-expand-all="isExpandAll" :tree-props="{ children: 'children', hasChildren: 'hasChildren' }" max-height="720px">
+        <el-table
+          width="60%"
+          v-if="refreshTable"
+          v-loading="loading"
+          :data="deptList"
+          border
+          row-key="deptId"
+          :default-expand-all="isExpandAll"
+          :tree-props="{ children: 'children', hasChildren: 'hasChildren' }"
+          max-height="720px"
+        >
           <!-- <el-table-column fixed="left" width="55px" label="搴忓彿" align="center" prop="nweID" /> -->
-          <el-table-column label="绉戝鍚嶇О" align="center" prop="deptName" width="120px" fixed="left"
-            :show-overflow-tooltip="true" />
-          <el-table-column label="绉戝缂栫爜" align="center" prop="departmentCode" :show-overflow-tooltip="true" width="80px" />
+          <el-table-column
+            label="绉戝鍚嶇О"
+            align="center"
+            prop="deptName"
+            width="120px"
+            fixed="left"
+            :show-overflow-tooltip="true"
+          />
+          <el-table-column
+            label="绉戝缂栫爜"
+            align="center"
+            prop="departmentCode"
+            :show-overflow-tooltip="true"
+            width="80px"
+          />
           <!-- <el-table-column label="鎺掑簭" align="center" prop="orderNum" width="50px" /> -->
           <el-table-column label="璐熻矗浜�" align="center" prop="leader" />
-          <el-table-column label="鑱旂郴鐢佃瘽" align="center" prop="phone" width="110px" :show-overflow-tooltip="true" />
-          <el-table-column label="闄㈠尯" align="center" prop="hospName" :show-overflow-tooltip="true" />
-          <el-table-column label="绠�浠�" align="center" prop="peofile" width="200px" :show-overflow-tooltip="true" />
-          <el-table-column label="鑱旂郴浜�" align="center" prop="contactPerson" :show-overflow-tooltip="true" />
-          <el-table-column label="鑱旂郴浜虹數璇�" align="center" prop="contactPhone" width="120px" :show-overflow-tooltip="true" />
-          <el-table-column label="鏍囧噯绉戝" align="center" prop="standardDeptCode" :show-overflow-tooltip="true" /> 
-          <el-table-column label="绉戝鐘舵��" align="center" prop="status" width="100px">
+          <el-table-column
+            label="鑱旂郴鐢佃瘽"
+            align="center"
+            prop="phone"
+            width="110px"
+            :show-overflow-tooltip="true"
+          />
+          <el-table-column
+            label="闄㈠尯"
+            align="center"
+            prop="hospName"
+            :show-overflow-tooltip="true"
+          />
+          <el-table-column
+            label="绠�浠�"
+            align="center"
+            prop="peofile"
+            width="200px"
+            :show-overflow-tooltip="true"
+          />
+          <el-table-column
+            label="鑱旂郴浜�"
+            align="center"
+            prop="contactPerson"
+            :show-overflow-tooltip="true"
+          />
+          <el-table-column
+            label="鑱旂郴浜虹數璇�"
+            align="center"
+            prop="contactPhone"
+            width="120px"
+            :show-overflow-tooltip="true"
+          />
+          <el-table-column
+            label="鏍囧噯绉戝"
+            align="center"
+            prop="standardDeptCode"
+            :show-overflow-tooltip="true"
+          />
+          <el-table-column
+            label="绉戝鐘舵��"
+            align="center"
+            prop="status"
+            width="100px"
+          >
             <template slot-scope="scope">
-              <el-switch v-model="scope.row.status" active-value="0" inactive-value="1"
-                @change="handleStatusChange(scope.row)"></el-switch>
+              <el-switch
+                v-model="scope.row.status"
+                active-value="0"
+                inactive-value="1"
+                @change="handleStatusChange(scope.row)"
+              ></el-switch>
             </template>
           </el-table-column>
-          <el-table-column fixed="right" label="鎿嶄綔" align="center" class-name="small-padding ">
+          <el-table-column
+            fixed="right"
+            label="鎿嶄綔"
+            align="center"
+            class-name="small-padding "
+          >
             <template slot-scope="scope">
-              <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
-                v-hasPermi="['system:dept:edit']" title="淇敼"></el-button>
-              <el-button size="mini" type="text" icon="el-icon-plus" @click="handleAdd(scope.row)"
-                v-hasPermi="['system:dept:add']" title="澧炲姞"></el-button>
-              <el-button v-if="scope.row.parentId != 0" size="mini" type="text" icon="el-icon-delete"
-                @click="handleDelete(scope.row)" v-hasPermi="['system:dept:remove']" title="鍒犻櫎"></el-button>
+              <el-button
+                size="mini"
+                type="text"
+                icon="el-icon-edit"
+                @click="handleUpdate(scope.row)"
+                v-hasPermi="['system:dept:edit']"
+                title="淇敼"
+              ></el-button>
+              <!-- <el-button size="mini" type="text" icon="el-icon-plus" @click="handleAdd(scope.row)"
+                v-hasPermi="['system:dept:add']" title="澧炲姞"></el-button> -->
+              <el-button
+                v-if="scope.row.parentId != 0"
+                size="mini"
+                type="text"
+                icon="el-icon-delete"
+                @click="handleDelete(scope.row)"
+                v-hasPermi="['system:dept:remove']"
+                title="鍒犻櫎"
+              ></el-button>
             </template>
           </el-table-column>
         </el-table>
@@ -74,26 +216,62 @@
     </el-row>
 
     <!-- 娣诲姞鎴栦慨鏀归儴闂ㄥ璇濇 -->
-    <el-dialog :title="title" :visible.sync="open" width="1050px" append-to-body>
-      <el-form ref="form" :model="form" :rules="rules" label-width="110px" :inline="true">
-        <el-form-item label="涓婄骇绉戝" prop="parentName">
-          <el-select v-model="form.parentId" placeholder="璇烽�夋嫨涓婄骇绉戝" style="width: 200px" clearable filterable>
-            <el-option v-for="dict in deptOption" :key="dict.label" :label="dict.label" :value="dict.id"></el-option>
+    <el-dialog
+      :title="title"
+      :visible.sync="open"
+      width="1050px"
+      append-to-body
+    >
+      <el-form
+        ref="form"
+        :model="form"
+        :rules="rules"
+        label-width="110px"
+        :inline="true"
+      >
+        <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.id"
+              :label="dict.label"
+              :value="dict.id"
+            ></el-option>
           </el-select>
         </el-form-item>
         <el-form-item label="绉戝鍚嶇О" prop="deptName">
           <el-input v-model="form.deptName" placeholder="璇疯緭鍏ョ瀹ゅ悕绉�" />
         </el-form-item>
         <el-form-item label="绉戝缂栫爜" prop="departmentCode">
-          <el-input v-model="form.departmentCode" placeholder="璇疯緭鍏ョ瀹ょ紪鐮�" />
+          <el-input
+            v-model="form.departmentCode"
+            placeholder="璇疯緭鍏ョ瀹ょ紪鐮�"
+          />
         </el-form-item>
         <el-form-item label="鏄剧ず椤哄簭" prop="orderNum">
           <el-input v-model="form.orderNum" placeholder="璇疯緭鍏ユ樉绀洪『搴�" />
         </el-form-item>
-        <el-form-item label="鎵�灞炲尰闄�" prop="hospName">
-          <el-select v-model="form.hospName" placeholder="璇烽�夋嫨鎵�灞炲尰闄�" clearable filterable style="width: 200px">
-            <el-option v-for="dict in hospList" :key="dict.hospAreaName" :label="dict.hospAreaName"
-              :value="dict.hospAreaName" />
+        <el-form-item label="鎵�灞炲尰闄�" prop="hospId">
+          <el-select
+            v-model="form.hospId"
+            placeholder="璇烽�夋嫨鎵�灞炲尰闄�"
+            clearable
+            filterable
+            style="width: 200px"
+          >
+            <el-option
+              v-for="dict in hospList"
+              :key="dict.hospAreaName"
+              :label="dict.hospAreaName"
+              :value="dict.hospAreaId"
+            />
           </el-select>
         </el-form-item>
         <el-form-item label="璐熻矗浜�" prop="leader">
@@ -105,99 +283,107 @@
         <el-form-item label="閭" prop="email">
           <el-input v-model="form.email" placeholder="璇疯緭鍏ラ偖绠�" />
         </el-form-item>
-        <!-- <el-form-item label="绉戝鑻辨枃鍚嶇О" prop="departmentEnName">
-          <el-input v-model="form.departmentEnName" placeholder="璇疯緭鍏ョ瀹よ嫳鏂囧悕绉�" />
-        </el-form-item> -->
-        <!-- <el-form-item label="缁勭粐绫诲瀷" prop="orgType">
-          <el-select v-model="form.orgType" placeholder="璇烽�夋嫨缁勭粐绫诲瀷" style="width: 200px">
-            <el-option v-for="dict in dict.type.dict_user_orgtype" :key="dict.value" :label="dict.label" :value="dict.value"></el-option>
-          </el-select>
-        </el-form-item> -->
-        <!-- <el-form-item label="涓婄骇缁勭粐id" prop="parentOrgId">
-          <el-input v-model="form.parentOrgId" placeholder="璇疯緭鍏ヤ笂绾х粍缁噄d" />
-        </el-form-item> -->
-        <!-- <el-form-item label="涓婄骇缁勭粐鍚嶇О" prop="parentOrgName">
-          <el-select v-model="form.parentOrgType" placeholder="璇烽�夋嫨涓婄骇缁勭粐鍚嶇О" style="width: 200px">
-            <el-option v-for="dict in dict.type.dict_user_orgtype" :key="dict.value" :label="dict.label" :value="dict.value"></el-option>
-          </el-select>
-        </el-form-item> -->
-        <!-- <el-form-item label="涓婄骇缁勭粐缂栫爜" prop="parentOrgCode">
-          <el-input v-model="form.parentOrgCode" placeholder="璇疯緭鍏ヤ笂绾х粍缁囩紪鐮�"
-          />
-        </el-form-item> -->
-        <!-- <el-form-item label="涓婄骇缁勭粐绫诲瀷" prop="parentOrgType">
-          <el-select v-model="form.parentOrgType" placeholder="璇烽�夋嫨涓婄骇缁勭粐绫诲瀷(PT10.06.17)" style="width: 200px">
-            <el-option v-for="dict in dict.type.dict_user_orgtype" :key="dict.value" :label="dict.label" :value="dict.value"></el-option>
-          </el-select>
-        </el-form-item> -->
-        <!-- <el-form-item label="鍖荤枟鏈烘瀯ID" prop="hospId">
-          <el-input v-model="form.hospId" placeholder="璇疯緭鍏ュ尰鐤楁満鏋処D" />
-        </el-form-item> -->
-        <!-- <el-form-item label="鍖荤枟鏈烘瀯缂栫爜" prop="hospCode">
-          <el-input v-model="form.hospCode" placeholder="璇疯緭鍏ュ尰鐤楁満鏋勭紪鐮�" />
-        </el-form-item> -->
-        <!-- <el-form-item label="鍖荤枟鏈烘瀯鍚嶇О" prop="hospName">
-          <el-input v-model="form.hospName" placeholder="璇疯緭鍏ュ尰鐤楁満鏋勫悕绉�" />
-        </el-form-item> -->
-        <!-- <el-form-item label="鑱旂郴浜�" prop="contactPerson">
-          <el-input v-model="form.contactPerson" placeholder="璇疯緭鍏ヨ仈绯讳汉" />
-        </el-form-item> -->
-        <!-- <el-form-item label="鑱旂郴浜虹數璇�" prop="contactPhone">
-          <el-input v-model="form.contactPhone" placeholder="璇疯緭鍏ヨ仈绯讳汉鐢佃瘽"/>
-        </el-form-item> -->
-        <!-- <el-form-item label="閭斂缂栫爜" prop="postalCode">
-          <el-input v-model="form.postalCode" placeholder="璇疯緭鍏ラ偖鏀跨紪鐮�" />
-        </el-form-item> -->
-        <!-- <el-form-item label="瀹樼綉" prop="officialWeb">
-          <el-input v-model="form.officialWeb" placeholder="璇疯緭鍏ュ畼缃�" />
-        </el-form-item> -->
-        <!-- <el-form-item label="缂栧埗搴婁綅鏁�" prop="plaitBed">
-          <el-input v-model="form.plaitBed" placeholder="璇疯緭鍏ョ紪鍒跺簥浣嶆暟" />
-        </el-form-item> -->
-        <!-- <el-form-item label="寮�鏀惧簥浣嶆暟" prop="openBed">
-          <el-input v-model="form.openBed" placeholder="璇疯緭鍏ュ紑鏀惧簥浣嶆暟" />
-        </el-form-item> -->
-        <!-- <el-form-item label="寤虹珛鏃ユ湡" prop="buildDate">
-          <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-input v-model="form.standardDeptCode" placeholder="璇疯緭鍏ユ爣鍑嗙瀹�" />
+          <el-input
+            v-model="form.standardDeptCode"
+            placeholder="璇疯緭鍏ユ爣鍑嗙瀹�"
+          />
         </el-form-item>
-        <el-form-item label="绉戝绫诲瀷" prop="deptTypeCode">
-          <el-select v-model="form.parentOrgType" placeholder="璇烽�夋嫨绉戝绫诲瀷" style="width: 200px" clearable filterable>
-            <el-option v-for="dict in dict.type.dict_dept_type" :key="dict.value" :label="dict.label"
-              :value="dict.value"></el-option>
+        <el-form-item label="绉戝绫诲瀷" prop="parentOrgType">
+          <el-select
+            v-model="form.parentOrgType"
+            placeholder="璇烽�夋嫨绉戝绫诲瀷"
+            style="width: 200px"
+            clearable
+            filterable
+          >
+            <el-option
+              v-for="dict in dict.type.dict_dept_type"
+              :key="dict.value"
+              :label="dict.label"
+              :value="dict.value"
+            ></el-option>
           </el-select>
+        </el-form-item>
+
+        <el-form-item label="his绉戝ID" prop="hisksid">
+          <span
+            slot="label"
+            style="display: inline-block; border-bottom: 2px solid blue"
+            @click="handleQuerys"
+          >
+            his绉戝ID
+          </span>
+
+          <el-input
+            v-model="form.hisksid"
+            placeholder="his绉戝ID"
+            style="width: 200px"
+          >
+          </el-input>
+        </el-form-item>
+        <el-form-item label="his绉戝鍚�" prop="hisksmc">
+          <el-input
+            v-model="form.hisksmc"
+            placeholder="his绉戝鍚�"
+            style="width: 202px"
+          >
+          </el-input>
         </el-form-item>
         <!-- <el-form-item label="閲嶇偣绉戝" prop="deptFcusTypeCode">
           <el-select v-model="form.parentOrgType" placeholder="璇烽�夋嫨閲嶇偣绉戝(PT10.06.17)" style="width: 200px" >
             <el-option v-for="dict in dict.type.dict_user_orgtype" :key="dict.value" :label="dict.label" :value="dict.value"></el-option>
           </el-select>
         </el-form-item> -->
-        <el-form-item label="绠�浠�" prop="peofile">
-          <el-input v-model="form.peofile" placeholder="璇疯緭鍏ョ畝浠�" style="width: 525px" /> </el-form-item><br />
+
         <el-form-item label="绉戝鍦板潃" prop="officialWeb">
           <el-input v-model="form.officialWeb" placeholder="璇疯緭鍏ョ瀹ゅ湴鍧�" />
         </el-form-item>
         <el-form-item label="杩愯惀鏃堕棿" prop="buildDate">
-          <el-date-picker style="width: 200px" v-model="form.buildDate" type="date" placeholder="璇烽�夋嫨杩愯惀鏃堕棿">
+          <el-date-picker
+            style="width: 200px"
+            v-model="form.buildDate"
+            type="date"
+            placeholder="璇烽�夋嫨杩愯惀鏃堕棿"
+          >
           </el-date-picker>
         </el-form-item>
         <el-form-item label="鍋滅敤鏃堕棿" prop="overDate">
-          <el-date-picker style="width: 200px" v-model="form.overDate" type="date" placeholder="璇烽�夋嫨鍋滅敤鏃堕棿">
+          <el-date-picker
+            style="width: 200px"
+            v-model="form.overDate"
+            type="date"
+            placeholder="璇烽�夋嫨鍋滅敤鏃堕棿"
+          >
           </el-date-picker>
         </el-form-item>
+        <el-form-item label="绠�浠�" prop="peofile">
+          <el-input
+            v-model="form.peofile"
+            placeholder="璇疯緭鍏ョ畝浠�"
+            style="width: 525px"
+          />
+        </el-form-item>
       </el-form>
+
       <div slot="footer" class="dialog-footer">
-        <el-button type="primary" @click="submitForm">纭� 瀹�</el-button>
         <el-button @click="cancel">鍙� 娑�</el-button>
+        <el-button type="primary" @click="submitForm">纭� 瀹�</el-button>
       </div>
+      <!-- 鍦ㄧ埗缁勪欢涓� -->
+      <Packagese
+        ref="aaa"
+        :visible="showPackagese"
+        @add="handleChanges"
+        :selectedId="form.hisksid"
+      />
     </el-dialog>
   </div>
 </template>
 
 <script>
+import Packagese from "@/components/Packagese";
 import {
   listDept,
   getDept,
@@ -215,26 +401,27 @@
 export default {
   name: "Dept",
   dicts: ["sys_normal_disable", "dict_user_orgtype", "dict_dept_type"],
-  components: { Treeselect },
+  components: { Treeselect, Packagese },
   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('');
-      }  else if(value != undefined && value != ""){
+        return callback("");
+      } else if (value != undefined && value != "") {
         return callback();
-      }else if (!patter.test(value)) {
-        return callback('');
+      } else if (!patter.test(value)) {
+        return callback("");
       }
     };
     return {
+      showPackagese: false,
       // 閮ㄩ棬鍚嶇О
       deptName: undefined,
       // 閬僵灞�
       loading: true,
       hospList: [],
       parentNameList: [],
+      total: 0,
       // 鏄剧ず鎼滅储鏉′欢
       showSearch: true,
       // 琛ㄦ牸鏍戞暟鎹�
@@ -264,19 +451,39 @@
       // 琛ㄥ崟鏍¢獙
       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: [
         //   {
@@ -307,6 +514,28 @@
     this.getDeptTree();
   },
   methods: {
+    handleQuerys() {
+      this.showPackagese = true;
+      if (this.form.hisksid) {
+        this.$refs.aaa.list = [
+          {
+            pacCode: this.form.hisksid,
+            pacName: this.form.hisksmc,
+          },
+        ];
+      }
+
+      this.$refs.aaa.open = true;
+      this.$refs.aaa.getAllList();
+      this.$refs.aaa.title = "鏁版嵁瀛楀吀";
+    },
+    handleChanges(param1) {
+      this.form = {
+        ...this.form,
+        hisksid: param1[0].pacCode,
+        hisksmc: param1[0].pacName,
+      };
+    },
     /** 鏌ヨ閮ㄩ棬鍒楄〃 */
     getList() {
       this.loading = true;
@@ -452,9 +681,15 @@
       });
     },
     /** 淇敼鎸夐挳鎿嶄綔 */
+
     handleUpdate(row) {
-      this.reset();
+      // 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) => {
@@ -479,15 +714,19 @@
       this.$refs["form"].validate((valid) => {
         if (valid) {
           if (this.form.deptId != undefined) {
-            updateDept(this.form).then((response) => {
-              this.$modal.msgSuccess("淇敼鎴愬姛");
-              this.open = false;
-              this.getList();
-            });
+            if (this.form.hospId) {
+              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){
-                this.form.hospId = element.hospAreaId
+            this.hospList.forEach((element) => {
+              if (this.form.hospName == element.hospAreaName) {
+                this.form.hospId = element.hospAreaId;
               }
             });
             addDept(this.form).then((response) => {
@@ -510,9 +749,23 @@
           this.getList();
           this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
         })
-        .catch(() => { });
+        .catch(() => {});
     },
   },
 };
 </script>
 
+<style scoped>
+.scrollable-container {
+  width: 200px; /* 璁剧疆瀹瑰櫒鐨勫搴� */
+  height: 629px; /* 璁剧疆瀹瑰櫒鐨勯珮搴� */
+  overflow: auto; /* 鍏佽鍐呭婧㈠嚭鏃舵樉绀烘粴鍔ㄦ潯 */
+  border: 1px solid #ccc; /* 鍙�夛細娣诲姞杈规浠ユ洿濂藉湴鏄剧ず瀹瑰櫒 */
+  position: relative; /* 鍙�夛細浣垮鍣ㄥ唴鐨勭粷瀵瑰畾浣嶅厓绱犺兘澶熸纭樉绀� */
+}
+
+.content {
+  width: 600px; /* 璁剧疆鍐呭鐨勫搴︼紝浠ヨЕ鍙戞按骞虫粴鍔ㄦ潯 */
+  height: 1000px; /* 璁剧疆鍐呭鐨勯珮搴︼紝浠ヨЕ鍙戝瀭鐩存粴鍔ㄦ潯 */
+}
+</style>
\ No newline at end of file

--
Gitblit v1.8.0