From 83898e6b7ff3996fcef889042442a25753b07dea Mon Sep 17 00:00:00 2001
From: WXL <1785969728@qq.com>
Date: 星期二, 24 九月 2024 14:00:24 +0800
Subject: [PATCH] 测试完成

---
 src/views/outsideChainxj.vue                            |   75 
 dist.zip                                                |    0 
 vue.config.js                                           |    4 
 src/components/Assistant/index.vue                      |   18 
 src/api/AiCentre/Qtemplate.js                           |   53 
 src/utils/ruoyi.js                                      |   23 
 src/views/knowledge/questionnaire/compilequer/index.vue |  449 ++++--
 src/views/patient/patient/index.vue                     |  191 +-
 src/views/patient/propaganda/QuestionnaireTask.vue      |  875 +++++++++--
 src/views/followvisit/record/detailpage/index.vue       |  335 ++++
 src/views/knowledge/questionbank/particulars/index.vue  |   97 
 src/views/outsideChainwt.vue                            |   19 
 src/views/patient/patient/behospitalized.vue            |  140 +
 src/store/getters.js                                    |    4 
 src/views/knowledge/education/compilequer/index.vue     |    2 
 src/views/patient/propaganda/Missioncreation.vue        |  140 +
 src/components/SFtable/index.vue                        |   42 
 src/views/followvisit/tasklist/index.vue                |  113 
 src/api/system/user.js                                  |  133 
 src/store/modules/user.js                               |   16 
 src/api/AiCentre/SingleTask.js                          |    8 
 src/views/knowledge/questionbank/index.vue              |   29 
 src/views/knowledge/education/index.vue                 |   12 
 src/utils/request.js                                    |    2 
 src/views/system/user/index.vue                         |  246 ++-
 src/views/login.vue                                     |    4 
 src/main.js                                             |    2 
 src/components/Regular/index.vue                        |    2 
 src/views/patient/patient/hospital.vue                  |  160 -
 src/views/patient/patient/profile/index.vue             |  286 ++-
 src/views/knowledge/questionnaire/index.vue             |   21 
 src/components/AskRegular/index.vue                     |    2 
 src/views/repositoryai/intention/index.vue              |  106 
 src/App.vue                                             |    2 
 src/views/followvisit/discharge/index.vue               |  256 +++
 src/views/patient/follow/index.vue                      |  336 +---
 36 files changed, 2,815 insertions(+), 1,388 deletions(-)

diff --git a/dist.zip b/dist.zip
new file mode 100644
index 0000000..c084a36
--- /dev/null
+++ b/dist.zip
Binary files differ
diff --git a/src/App.vue b/src/App.vue
index 1d2d256..30d9a8f 100644
--- a/src/App.vue
+++ b/src/App.vue
@@ -2,7 +2,7 @@
   <div id="app">
     <router-view />
     <theme-picker />
-    <Assistant v-if="routertf" />
+    <!-- <Assistant v-if="routertf" /> -->
   </div>
 </template>
 
diff --git a/src/api/AiCentre/Qtemplate.js b/src/api/AiCentre/Qtemplate.js
index 5047e02..8897655 100644
--- a/src/api/AiCentre/Qtemplate.js
+++ b/src/api/AiCentre/Qtemplate.js
@@ -128,3 +128,56 @@
       data: data,
     });
   }
+    // 鍒犻櫎闂嵎妯℃澘鍒嗙被
+export function deleteTaskQuestioncomit(svyid) {
+  return request({
+    url: "/smartor/svytemplateTask/remove/" + svyid,
+    method: "get",
+  });
+}
+
+    export function getTaskQuestioncomit(svyid) {
+      return request({
+        url: "/smartor/svytemplateTask/" + svyid,
+        method: "get",
+      });
+    }
+ //绉戝鐥呭尯妯℃澘鍏宠仈鏂板
+ export function depthospgetson(data) {
+  return request({
+    url: "/smartor/td/add",
+    method: "post",
+    data: data,
+  });
+}
+ //绉戝鐥呭尯妯℃澘鍏宠仈鏌ヨ
+ export function depthospgetsonlist(data) {
+  return request({
+    url: "/smartor/td/list",
+    method: "get",
+    params: data,
+  });
+}
+    // 鍒犻櫎绉戝鐥呭尯妯℃澘鍒嗙被
+    export function depthospgetsondel(id) {
+      return request({
+        url: "/smartor/td/remove/" + id,
+        method: "get",
+      });
+    }
+// 鍖绘姢淇濆瓨鏁版嵁
+
+export function serviceSubtaskDetailedit(data) {
+  return request({
+    url: "/smartor/serviceSubtaskDetail/editByCondition",
+    method: "post",
+    data: data,
+  });
+}
+export function serviceSubtaskDetailadd(data) {
+  return request({
+    url: "/smartor/serviceSubtaskDetail/add",
+    method: "post",
+    data: data,
+  });
+}
diff --git a/src/api/AiCentre/SingleTask.js b/src/api/AiCentre/SingleTask.js
index b3820ca..9480392 100644
--- a/src/api/AiCentre/SingleTask.js
+++ b/src/api/AiCentre/SingleTask.js
@@ -55,6 +55,14 @@
       data: data,
     });
   }
+    // 鏂板鎴栦慨鏀瑰崟涓湇鍔�
+    export function Editsingletaskson(data) {
+      return request({
+        url: "/smartor/serviceSubtask/update",
+        method: "post",
+        data: data,
+      });
+    }
   // 鍒犻櫎浠诲姟骞跺垹闄ゅ叧鑱旂殑鎮h�呮湇鍔�
   export function delTaskInfo(taskid) {
     return request({
diff --git a/src/api/system/user.js b/src/api/system/user.js
index 87aaf6c..4b261b2 100644
--- a/src/api/system/user.js
+++ b/src/api/system/user.js
@@ -1,143 +1,150 @@
-import request from '@/utils/request'
-import { parseStrEmpty } from "@/utils/ruoyi";//澶勭悊瀛楃涓�
+import request from "@/utils/request";
+import { parseStrEmpty } from "@/utils/ruoyi"; //澶勭悊瀛楃涓�
 
 // 鏌ヨ鐢ㄦ埛鍒楄〃
 export function listUser(query) {
   return request({
-    url: '/system/user/list',
-    method: 'get',
-    params: query
-  })
+    url: "/system/user/list",
+    method: "get",
+    params: query,
+  });
 }
 
 // 鏌ヨ鐢ㄦ埛璇︾粏
 export function getUser(userId) {
   return request({
-    url: '/system/user/getInfo/' + parseStrEmpty(userId),
-    method: 'get'
-  })
+    url: "/system/user/getInfo/" + parseStrEmpty(userId),
+    method: "get",
+  });
 }
 
 // 鏂板鐢ㄦ埛
 export function addUser(data) {
   return request({
-    url: '/system/user/add',
-    method: 'post',
-    data: data
-  })
+    url: "/system/user/add",
+    method: "post",
+    data: data,
+  });
 }
 
 // 淇敼鐢ㄦ埛
 export function updateUser(data) {
   return request({
-    url: '/system/user/edit',
-    method: 'post',
-    data: data
-  })
+    url: "/system/user/edit",
+    method: "post",
+    data: data,
+  });
 }
 
 // 鍒犻櫎鐢ㄦ埛
 export function delUser(userId) {
   return request({
-    url: '/system/user/remove/' + userId,
-    method: 'get'
-  })
+    url: "/system/user/remove/" + userId,
+    method: "get",
+  });
 }
 
 // 鐢ㄦ埛瀵嗙爜閲嶇疆
 export function resetUserPwd(userId, password) {
   const data = {
     userId,
-    password
-  }
+    password,
+  };
   return request({
-    url: '/system/user/resetPwd',
-    method: 'post',
-    data: data
-  })
+    url: "/system/user/resetPwd",
+    method: "post",
+    data: data,
+  });
 }
 
 // 鐢ㄦ埛鐘舵�佷慨鏀�
 export function changeUserStatus(userId, status) {
   const data = {
     userId,
-    status
-  }
+    status,
+  };
   return request({
-    url: '/system/user/changeStatus/edit',
-    method: 'post',
-    data: data
-  })
+    url: "/system/user/changeStatus/edit",
+    method: "post",
+    data: data,
+  });
 }
 
 // 鏌ヨ鐢ㄦ埛涓汉淇℃伅
 export function getUserProfile() {
   return request({
-    url: '/system/user/profile',
-    method: 'get'
-  })
+    url: "/system/user/profile",
+    method: "get",
+  });
 }
 
 // 淇敼鐢ㄦ埛涓汉淇℃伅
 export function updateUserProfile(data) {
   return request({
-    url: '/system/user/profile/edit',
-    method: 'post',
-    data: data
-  })
+    url: "/system/user/profile/edit",
+    method: "post",
+    data: data,
+  });
 }
 
 // 鐢ㄦ埛瀵嗙爜閲嶇疆
 export function updateUserPwd(oldPassword, newPassword) {
   const data = {
     oldPassword,
-    newPassword
-  }
+    newPassword,
+  };
   return request({
-    url: '/system/user/profile/updatePwd',
-    method: 'post',
-    params: data
-  })
+    url: "/system/user/profile/updatePwd",
+    method: "post",
+    params: data,
+  });
 }
 
 // 鐢ㄦ埛澶村儚涓婁紶
 export function uploadAvatar(data) {
   return request({
-    url: '/system/user/profile/avatar',
-    method: 'post',
-    data: data
-  })
+    url: "/system/user/profile/avatar",
+    method: "post",
+    data: data,
+  });
 }
 
 // 鏌ヨ鎺堟潈瑙掕壊
 export function getAuthRole(userId) {
   return request({
-    url: '/system/user/authRole/' + userId,
-    method: 'get'
-  })
+    url: "/system/user/authRole/" + userId,
+    method: "get",
+  });
 }
 
 // 淇濆瓨鎺堟潈瑙掕壊
 export function updateAuthRole(data) {
   return request({
-    url: '/system/user/authRole',
-    method: 'post',
-    params: data
-  })
+    url: "/system/user/authRole",
+    method: "post",
+    data: data,
+  });
+}
+// 淇濆瓨鎺堟潈瑙掕壊
+export function removeusertd(userid,deptcode) {
+  return request({
+    url: "/smartor/userdept/removeByCode/" + userid + "/" + deptcode,
+    method: "get",
+  });
 }
 
 // 鏌ヨ閮ㄩ棬涓嬫媺鏍戠粨鏋�
 export function deptTreeSelect() {
   return request({
-    url: '/system/user/deptTree',
-    method: 'get'
-  })
+    url: "/system/user/deptTree",
+    method: "get",
+  });
 }
 // 鏂板绉戝/鐥呭尯
 export function adduserdept(data) {
   return request({
-    url: '/smartor/userdept/add',
-    method: 'post',
-    params: data
-  })
+    url: "/smartor/userdept/add",
+    method: "post",
+    data: data,
+  });
 }
diff --git a/src/components/AskRegular/index.vue b/src/components/AskRegular/index.vue
index 47e9dc3..8e135a3 100644
--- a/src/components/AskRegular/index.vue
+++ b/src/components/AskRegular/index.vue
@@ -13,7 +13,7 @@
             </el-input> </el-form-item
         ></el-col>
         <el-col :span="12"
-          ><el-form-item label="棰勮鎻愰啋">
+          ><el-form-item label="寮傚父鎻愰啋">
             <el-radio-group v-model="radio">
               <el-radio :label="3">鏄�</el-radio>
               <el-radio :label="6">鍚�</el-radio>
diff --git a/src/components/Assistant/index.vue b/src/components/Assistant/index.vue
index a77428a..80e9bd5 100644
--- a/src/components/Assistant/index.vue
+++ b/src/components/Assistant/index.vue
@@ -42,7 +42,7 @@
         <div
           v-for="(item, index) in powerList"
           :key="index"
-          @click.stop="activeHandle(index)"
+          @click.stop="activeHandle(index,item.url)"
         >
           <div
             :class="activeIndex == index ? 'active power-item' : 'power-item'"
@@ -105,22 +105,27 @@
       powerList: [
         {
           path: require("@/assets/images/huanzheliebiao.png"),
+          url:'/patient/patient/',
           label: "鎮h��",
         },
         {
           path: require("@/assets/images/fwwu.png"),
-          label: "鏈嶅姟",
+          url:'/followvisit/tasklist/',
+          label: "浠诲姟",
         },
         {
           path: require("@/assets/images/duanxinjilu.png"),
+          url:'',
           label: "鐭俊",
         },
         {
           path: require("@/assets/images/dianhua.png"),
+          url:'',
           label: "鐢佃瘽",
         },
         {
           path: require("@/assets/images/zxlt.png"),
+          url:'',
           label: "鍦ㄧ嚎鑱婂ぉ",
         },
       ],
@@ -137,8 +142,8 @@
         // 鑾峰彇鍏冪礌浣嶇疆灞炴��
         this.floatDragDom = this.floatDrag.getBoundingClientRect();
         // 璁剧疆鍒濆浣嶇疆
-        // this.left = this.clientWidth - this.floatDragDom.width - this.distanceRight;
-        this.right = 0;
+        this.left = this.clientWidth - this.floatDragDom.width - this.distanceRight;
+        // this.right = 0;
         this.top =
           this.clientHeight - this.floatDragDom.height - this.distanceBottom;
         this.initDraggable();
@@ -164,9 +169,12 @@
       console.log("鏄惁灞曞紑", this.flag);
     },
     // 鐐瑰嚮鍝釜power
-    activeHandle(index) {
+    activeHandle(index,url) {
       //鎶婃垜浠嚜瀹氫箟鐨勪笅鏍囪祴鍊�
       this.activeIndex = index;
+      this.$router.push({
+        path: url,
+      })
       console.log("HHHH", index);
     },
     // 鑾峰彇瑕佹敼鍙樺緱鏍峰紡灞炴��
diff --git a/src/components/Regular/index.vue b/src/components/Regular/index.vue
index 9a033d5..add22bc 100644
--- a/src/components/Regular/index.vue
+++ b/src/components/Regular/index.vue
@@ -14,7 +14,7 @@
               </el-input> </el-form-item
           ></el-col>
           <el-col :span="12"
-            ><el-form-item label="棰勮鎻愰啋">
+            ><el-form-item label="寮傚父鎻愰啋">
               <el-radio-group v-model="item.isabnormal">
                 <el-radio :label="1">鏄�</el-radio>
                 <el-radio :label="0">鍚�</el-radio>
diff --git a/src/components/SFtable/index.vue b/src/components/SFtable/index.vue
index f54eb81..a23f3a6 100644
--- a/src/components/SFtable/index.vue
+++ b/src/components/SFtable/index.vue
@@ -20,6 +20,7 @@
   >
     <el-table-column
       v-if="multiplechoice"
+      fixed="left"
       type="selection"
       width="50"
       align="center"
@@ -31,7 +32,43 @@
       key="id"
       prop="id"
     />
-    <el-table-column
+    <div v-for="(item, index) in tableLabel">
+      <el-table-column
+        v-if="item.label == '鍑洪櫌鏃ユ湡'"
+        :key="index"
+        :prop="item.prop"
+        :width="item.width"
+        :label="item.label"
+        :formatter="formatData"
+      >
+        <template slot-scope="scope">
+          <span>{{ formatTime(scope.row.endtime) }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column
+        v-if="item.label == '鎬у埆'"
+        :key="index"
+        :prop="item.prop"
+        :width="item.width"
+        :label="item.label"
+        :formatter="formatData"
+      >
+        <template slot-scope="scope">
+          <span>{{ scope.row.sex == 1 ? "鐢�" : "濂�" }}</span>
+        </template>
+      </el-table-column>
+
+      <el-table-column
+        v-if="item.label != '鎬у埆' && item.label != '鍑洪櫌鏃ユ湡'"
+        :key="index"
+        :prop="item.prop"
+        :width="item.width"
+        :label="item.label"
+        :formatter="formatData"
+      >
+      </el-table-column>
+    </div>
+    <!-- <el-table-column
       v-for="(item, index) in tableLabel"
       :key="index"
       :prop="item.prop"
@@ -39,7 +76,7 @@
       :label="item.label"
       :formatter="formatData"
     >
-    </el-table-column>
+    </el-table-column> -->
     <!-- <el-table-column
       label="鏄惁鍙敤"
       align="center"
@@ -209,7 +246,6 @@
     clearSelection() {
       // 鍦ㄨ繖閲岀紪鍐欐竻闄ら�夋嫨鐨勯�昏緫
       this.$refs.multipleTableson.clearSelection();
-
     },
   },
 };
diff --git a/src/main.js b/src/main.js
index 5ca998f..5549b74 100644
--- a/src/main.js
+++ b/src/main.js
@@ -51,6 +51,7 @@
   selectDictLabel,
   selectDictLabels,
   handleTree,
+  daysBetween,
 } from "@/utils/ruoyi";
 import LemonMessageVoice from './websocket/lemon-message-voice';
 Vue.component(LemonMessageVoice.name,LemonMessageVoice);
@@ -93,6 +94,7 @@
 Vue.prototype.getConfigKey = getConfigKey;
 Vue.prototype.parseTime = parseTime;
 Vue.prototype.formatTime = formatTime;
+Vue.prototype.daysBetween = daysBetween;
 Vue.prototype.resetForm = resetForm;
 Vue.prototype.addDateRange = addDateRange;
 Vue.prototype.selectDictLabel = selectDictLabel;
diff --git a/src/store/getters.js b/src/store/getters.js
index 59e79d5..d56a211 100644
--- a/src/store/getters.js
+++ b/src/store/getters.js
@@ -11,8 +11,8 @@
   introduction: (state) => state.user.introduction,
   roles: (state) => state.user.roles,
   permissions: (state) => state.user.permissions,
-  leavehospitaldistrictcodes: (state) => state.user.leavehospitaldistrictcodes,
-  leaveldeptcodes: (state) => state.user.leaveldeptcodes,
+  belongWards: (state) => state.user.belongWards,
+  belongDepts: (state) => state.user.belongDepts,
   permission_routes: (state) => state.permission.routes,
   topbarRouters: (state) => state.permission.topbarRouters,
   defaultRoutes: (state) => state.permission.defaultRoutes,
diff --git a/src/store/modules/user.js b/src/store/modules/user.js
index 4b800bf..d5b94fa 100644
--- a/src/store/modules/user.js
+++ b/src/store/modules/user.js
@@ -6,8 +6,8 @@
     token: getToken(),
     name: '',
     avatar: '',
-    leavehospitaldistrictcodes:[],
-    leaveldeptcodes:[],
+    belongWards:[],
+    belongDepts:[],
     roles: [],
     permissions: [],
     // 鏈嶅姟绫诲瀷
@@ -97,11 +97,11 @@
     SET_Serviceauthority: (state, Serviceauthority) => {
       state.Serviceauthority = Serviceauthority
     },
-    SET_leavehospitaldistrictcodes: (state, leavehospitaldistrictcodes) => {
-      state.leavehospitaldistrictcodes = leavehospitaldistrictcodes
+    SET_leavehospitaldistrictcodes: (state, belongWards) => {
+      state.belongWards = belongWards
     },
-    SET_leaveldeptcodes: (state, leaveldeptcodes) => {
-      state.leaveldeptcodes = leaveldeptcodes
+    SET_leaveldeptcodes: (state, belongDepts) => {
+      state.belongDepts = belongDepts
     }
   },
 
@@ -136,8 +136,8 @@
             commit('SET_ROLES', ['ROLE_DEFAULT'])
           }
           commit('SET_NAME', user.userName)
-          commit('SET_leavehospitaldistrictcodes', user.leavehospitaldistrictcodes)
-          commit('SET_leaveldeptcodes', user.leaveldeptcodes)
+          commit('SET_leavehospitaldistrictcodes', user.belongWards)
+          commit('SET_leaveldeptcodes', user.belongDepts)
           commit('SET_AVATAR', avatar)
           resolve(res)
         }).catch(error => {
diff --git a/src/utils/request.js b/src/utils/request.js
index 954641e..9d1aebb 100644
--- a/src/utils/request.js
+++ b/src/utils/request.js
@@ -49,7 +49,7 @@
       const s_url = sessionObj.url;                  // 璇锋眰鍦板潃
       const s_data = sessionObj.data;                // 璇锋眰鏁版嵁
       const s_time = sessionObj.time;                // 璇锋眰鏃堕棿
-      const interval = 10;                         // 闂撮殧鏃堕棿(ms)锛屽皬浜庢鏃堕棿瑙嗕负閲嶅鎻愪氦
+      const interval = 4;                         // 闂撮殧鏃堕棿(ms)锛屽皬浜庢鏃堕棿瑙嗕负閲嶅鎻愪氦
       if (s_data === requestObj.data && requestObj.time - s_time < interval && s_url === requestObj.url) {
         const message = '鏁版嵁姝e湪澶勭悊锛岃鍕块噸澶嶆彁浜�';
         console.warn(`[${s_url}]: ` + message)
diff --git a/src/utils/ruoyi.js b/src/utils/ruoyi.js
index 601e46c..f02bc0d 100644
--- a/src/utils/ruoyi.js
+++ b/src/utils/ruoyi.js
@@ -50,18 +50,17 @@
   return time_str;
 }
 // 鍑洪櫌/鍏ラ櫌澶╂暟璁$畻
-export function Daycount(dateString1, dateString2){
-// 灏嗘棩鏈熷瓧绗︿覆杞崲涓烘棩鏈熷璞�
-var date1 = new Date(dateString1);
-var date2 = new Date(dateString2);
-
-// 璁$畻鏃堕棿宸紙姣锛�
-var timeDifference = date2 - date1;
-
-// 灏嗘椂闂村樊杞崲涓哄ぉ鏁�
-var daysDifference = Math.ceil(timeDifference / (1000 * 3600 * 24));
-
-return daysDifference;
+export function daysBetween(dateString) {
+  // 灏嗚緭鍏ョ殑鏃ユ湡瀛楃涓茶浆鎹负Date瀵硅薄
+  var startDate = new Date(dateString);
+  // 鑾峰彇褰撳墠鏃ユ湡
+  var currentDate = new Date();
+  // 璁$畻涓や釜鏃ユ湡涔嬮棿鐨勬椂闂村樊锛堟绉掞級
+  var differenceInTime = currentDate - startDate;
+  // 灏嗘椂闂村樊杞崲涓哄ぉ鏁�
+  var differenceInDays = differenceInTime / (1000 * 3600 * 24);
+  // 杩斿洖澶╂暟锛屽洓鑸嶄簲鍏ュ埌鏈�鎺ヨ繎鐨勬暣鏁�
+  return Math.round(differenceInDays);
 }
 // 杩囨护鍣�
 export function formatTime(val) {
diff --git a/src/views/followvisit/discharge/index.vue b/src/views/followvisit/discharge/index.vue
index 6b568b6..bd9c873 100644
--- a/src/views/followvisit/discharge/index.vue
+++ b/src/views/followvisit/discharge/index.vue
@@ -38,13 +38,39 @@
             </el-option>
           </el-select>
         </el-form-item> -->
-        <el-form-item label="妯℃澘鍚嶇О" prop="status">
-          <el-input v-model="topqueryParams.templatename"></el-input>
+        <el-form-item label="鎮h�呭鍚�" prop="sendname">
+          <el-input v-model="topqueryParams.sendname" placeholder="璇疯緭鍏ユ偅鑰呭鍚�"></el-input>
         </el-form-item>
+        <el-form-item label="鎮h�呮潵婧�" prop="status">
+          <el-select
+                v-model="topqueryParams.searchscope"
+                placeholder="璇烽�夋嫨鎮h�呮潵婧�"
+              >
+                <el-option
+                  v-for="item in source"
+                  :key="item.value"
+                  :label="item.label"
+                  :value="item.value"
+                >
+                </el-option>
+              </el-select>
+        </el-form-item>
+
         <el-form-item label="闅忚鐘舵��" prop="status">
           <el-select v-model="topqueryParams.sendstate" placeholder="璇烽�夋嫨">
             <el-option
               v-for="item in topicoptions"
+              :key="item.value"
+              :label="item.label"
+              :value="item.value"
+            >
+            </el-option>
+          </el-select>
+        </el-form-item>
+        <el-form-item label="缁撴灉鐘舵��" prop="status">
+          <el-select v-model="topqueryParams.excep" placeholder="璇烽�夋嫨">
+            <el-option
+              v-for="item in topicoptionsyj"
               :key="item.value"
               :label="item.label"
               :value="item.value"
@@ -74,7 +100,6 @@
             icon="el-icon-plus"
             size="medium"
             @click="handleAdd"
-            v-hasPermi="['system:user:add']"
             >鏂板</el-button
           >
         </el-col>
@@ -178,24 +203,139 @@
           align="center"
           key="taskName"
           prop="taskName"
-          width="120"
+          width="180"
         />
         <!-- <el-table-column label="搴忓彿" fixed align="center" key="id" prop="id" /> -->
         <el-table-column
           label="濮撳悕"
-
           align="center"
           key="sendname"
           prop="sendname"
         />
         <el-table-column
           label="韬唤璇佸彿鐮�"
-
           width="200"
           align="center"
           key="sfzh"
           prop="sfzh"
         />
+        <el-table-column
+          label="闅忚鐘舵��"
+          align="center"
+          key="sendstate"
+          prop="sendstate"
+          width="120"
+        >
+          <template slot-scope="scope">
+            <div v-if="scope.row.sendstate == 1">
+              <el-tag type="primary"
+              :disable-transitions="false">琚鍙�</el-tag></div>
+            <div v-if="scope.row.sendstate == 2">
+              <el-tag type="primary"
+              :disable-transitions="false">寰呭彂閫�</el-tag>
+              </div>
+            <div v-if="scope.row.sendstate == 3"> <el-tag type="success"
+              :disable-transitions="false">宸插彂閫�</el-tag></div>
+            <div v-if="scope.row.sendstate == 4"> <el-tag type="info"
+              :disable-transitions="false">涓嶆墽琛�</el-tag></div>
+            <div v-if="scope.row.sendstate == 5"> <el-tag type="danger"
+              :disable-transitions="false">鍙戦�佸け璐�</el-tag></div>
+              <div v-if="scope.row.sendstate == 6"> <el-tag type="danger"
+                :disable-transitions="false">宸插畬鎴�</el-tag></div>
+          </template>
+        </el-table-column>
+
+        <el-table-column
+          label="缁撴灉鐘舵��"
+          align="center"
+          key="excep"
+          prop="excep"
+          width="120"
+        >
+          <template slot-scope="scope">
+            <div v-if="scope.row.sendstate == 6">
+              <dict-tag
+                :options="dict.type.sys_yujing"
+                :value="scope.row.excep"
+              />
+            </div>
+            <div v-else>
+              <span></span>
+            </div>
+          </template>
+        </el-table-column>
+        <el-table-column
+          label="澶勭悊鎰忚"
+          align="center"
+          key="suggest"
+          prop="suggest"
+          width="120"
+        >
+          <template slot-scope="scope">
+            <dict-tag
+              :options="dict.type.sys_suggest"
+              :value="scope.row.suggest"
+            />
+          </template>
+        </el-table-column>
+        <el-table-column
+          label="鍑洪櫌鏃ユ湡"
+          width="200"
+          align="center"
+          key="endtime"
+          prop="endtime"
+        >
+          <template slot-scope="scope">
+            <span>{{ formatTime(scope.row.endtime) }}</span>
+          </template></el-table-column
+        >
+        <el-table-column
+          label="搴旈殢璁挎棩鏈�"
+          width="200"
+          align="center"
+          key="longSendTime"
+          prop="longSendTime"
+        >
+          <template slot-scope="scope">
+            <span>{{ formatTime(scope.row.longSendTime) }}</span>
+          </template></el-table-column
+        >
+        <el-table-column
+          label="鍑洪櫌澶╂暟"
+          width="120"
+          align="center"
+          key="endDay"
+          prop="endDay"
+        >
+          <template slot-scope="scope">
+            <span>{{
+              scope.row.endDay ? scope.row.endDay + "澶�" : "鏃ユ湡缂哄け"
+            }}</span>
+          </template>
+        </el-table-column>
+        <el-table-column
+          label="璐d换鎶ゅ+"
+          width="120"
+          align="center"
+          key="nurseName"
+          prop="nurseName"
+        />
+        <el-table-column
+          label="涓绘不鍖荤敓"
+          width="120"
+          align="center"
+          key="drname"
+          prop="drname"
+        />
+        <el-table-column
+          label="闅忚寮傚父璁板綍"
+          width="120"
+          align="center"
+          key="remark"
+          prop="remark"
+        />
+
+
         <!-- <el-table-column
           label="鐥呭巻鍙�"
           align="center"
@@ -208,14 +348,14 @@
         <!-- <el-table-column label="骞撮緞" align="center" key="age" prop="age" /> -->
         <!-- <el-table-column label="鎬у埆" align="center" key="sex" prop="sex" /> -->
         <!-- <el-table-column label="搴婂彿" align="center" key="badNo" prop="badNo" /> -->
-        <!-- <el-table-column
+        <el-table-column
           label="绉戝"
           align="center"
           key="deptname"
           prop="deptname"
           width="120"
         >
-        </el-table-column> -->
+        </el-table-column>
         <el-table-column
           label="鐥呭尯"
           align="center"
@@ -250,6 +390,13 @@
           prop="createBy"
           width="120"
         />
+        <!-- <el-table-column
+          label="璐d换鍖诲笀"
+          align="center"
+          key="drname"
+          prop="drname"
+          width="120"
+        /> -->
 
         <!-- <el-table-column
           label="鍑洪櫌鏃堕棿"
@@ -284,7 +431,7 @@
           width="160"
         >
           <template slot-scope="scope">
-            <span>{{ formatTime(scope.row.finishtime) }}</span>
+            <span>{{ parseTime(scope.row.finishtime) }}</span>
           </template>
         </el-table-column>
         <!-- <el-table-column
@@ -352,11 +499,7 @@
                 ><span class="button-zx"><i class="el-icon-s-order"></i></span
               ></el-button>
             </el-tooltip> -->
-            <el-button
-              size="medium"
-              type="text"
-              @click="Seedetails(scope.row)"
-              v-hasPermi="['system:user:edit']"
+            <el-button size="medium" type="text" @click="Seedetails(scope.row)"
               ><span class="button-zx"
                 ><i class="el-icon-s-order"></i>鏌ョ湅璇︽儏</span
               ></el-button
@@ -521,8 +664,8 @@
 import "@riophae/vue-treeselect/dist/vue-treeselect.css";
 
 export default {
-  name: "User",
-  dicts: ["sys_normal_disable", "sys_user_sex"],
+  name: "Discharge",
+  dicts: ["sys_normal_disable", "sys_user_sex", "sys_yujing", "sys_suggest"],
   components: { Treeselect },
   data() {
     return {
@@ -572,6 +715,20 @@
       },
       value: [],
       list: [],
+      source: [
+        {
+          value: 0,
+          label: "鎵�灞炴偅鑰�",
+        },
+        {
+          value: 1,
+          label: "绉戝鎮h��",
+        },
+        {
+          value: 2,
+          label: "鐥呭尯鎮h��",
+        },
+      ],
       loading: false,
       states: [
         "Alabama",
@@ -667,7 +824,7 @@
       topqueryParams: {
         pageNum: 1,
         pageSize: 10,
-        serviceType:2,
+        serviceType: 2,
       },
       propss: { multiple: true },
       options: [],
@@ -684,6 +841,28 @@
         {
           value: 3,
           label: "宸插彂閫�",
+        },
+        {
+          value: 4,
+          label: "涓嶆墽琛�",
+        },
+        {
+          value: 5,
+          label: "鍙戦�佸け璐�",
+        },
+        {
+          value: 6,
+          label: "宸插畬鎴�",
+        },
+      ],
+      topicoptionsyj: [
+        {
+          value: 1,
+          label: "寮傚父",
+        },
+        {
+          value: 0,
+          label: "姝e父",
         },
       ],
       serviceState: [],
@@ -708,9 +887,30 @@
   methods: {
     /** 鏌ヨ闂ㄨ瘖闅忚鏈嶅姟鍒楄〃 */
     getList() {
+      if (this.topqueryParams.searchscope == 1) {
+        this.topqueryParams.leaveldeptcodes = store.getters.belongDepts.map(
+          (obj) => obj.deptCode
+        );
+        this.topqueryParams.leavehospitaldistrictcodes=null;
+      } else if (this.topqueryParams.searchscope == 2) {
+        this.topqueryParams.leavehospitaldistrictcodes =
+          store.getters.belongWards.map((obj) => obj.districtCode);
+          this.topqueryParams.leaveldeptcodes=null;
+      } else {
+        this.topqueryParams.leaveldeptcodes = store.getters.belongDepts.map(
+          (obj) => obj.deptCode
+        );
+        this.topqueryParams.leavehospitaldistrictcodes =
+          store.getters.belongWards.map((obj) => obj.districtCode);
+      }
       this.loading = true;
       getTaskservelist(this.topqueryParams).then((response) => {
         this.userList = response.rows;
+        this.userList.forEach((item) => {
+          if (item.endtime) {
+            item.endDay = this.daysBetween(item.endtime);
+          }
+        });
         this.total = response.total;
         this.loading = false;
       });
@@ -773,15 +973,29 @@
     },
     /** 鎼滅储鎸夐挳鎿嶄綔 */
     handleQuery() {
+      if (this.topqueryParams.searchscope == 1) {
+        this.topqueryParams.leaveldeptcodes = store.getters.belongDepts.map(
+          (obj) => obj.deptCode
+        );
+        this.topqueryParams.leavehospitaldistrictcodes=null;
+      } else if (this.topqueryParams.searchscope == 2) {
+        this.topqueryParams.leavehospitaldistrictcodes =
+          store.getters.belongWards.map((obj) => obj.districtCode);
+          this.topqueryParams.leaveldeptcodes=null;
+      } else {
+        this.topqueryParams.leaveldeptcodes = store.getters.belongDepts.map(
+          (obj) => obj.deptCode
+        );
+        this.topqueryParams.leavehospitaldistrictcodes =
+          store.getters.belongWards.map((obj) => obj.districtCode);
+      }
       this.topqueryParams.pageNum = 1;
       this.getList();
     },
     /** 閲嶇疆鎸夐挳鎿嶄綔 */
     resetQuery() {
       this.dateRange = [];
-      this.resetForm("queryForm");
-      this.topqueryParams.deptId = undefined;
-      this.$refs.tree.setCurrentKey(null);
+      this.topqueryParams = {};
       this.handleQuery();
     },
     // 澶氶�夋閫変腑鏁版嵁
@@ -919,7 +1133,7 @@
     Seedetails(row) {
       this.$router.push({
         path: "/followvisit/record/detailpage/",
-        query: { taskid: row.taskid, patid: row.patid },
+        query: { taskid: row.taskid, patid: row.patid,id: row.id},
       });
     },
     // 瀵煎叆鎸夐挳
diff --git a/src/views/followvisit/record/detailpage/index.vue b/src/views/followvisit/record/detailpage/index.vue
index 8837754..18d5de0 100644
--- a/src/views/followvisit/record/detailpage/index.vue
+++ b/src/views/followvisit/record/detailpage/index.vue
@@ -6,20 +6,19 @@
         <div class="userinfo-text">
           <!-- <span>鎮h�呮湇鍔¤鎯�</span> -->
           <div class="headline">
-              <div>鎮h�呮湇鍔¤鎯�</div>
-              <div style="margin-left: 20px">
-                    <el-button
-                    v-if="!Whetherall"
-                      type="primary"
-                      @click="getTaskservelist()"
-                    >鏌ョ湅鎮h�呭叏閮ㄦ湇鍔�</el-button>
-                    <el-button
-                    v-else
-                      type="success"
-                      @click="getTaskservelist(taskid)"
-                    >鏌ョ湅鎮h�呮湰娆℃湇鍔′俊鎭�</el-button>
-              </div>
+            <div>鎮h�呮湇鍔¤鎯�</div>
+            <div style="margin-left: 20px">
+              <el-button
+                v-if="!Whetherall"
+                type="primary"
+                @click="getTaskservelist()"
+                >鏌ョ湅鎮h�呭叏閮ㄦ湇鍔�</el-button
+              >
+              <el-button v-else type="success" @click="getTaskservelist(taskid)"
+                >鏌ョ湅鎮h�呮湰娆℃湇鍔′俊鎭�</el-button
+              >
             </div>
+          </div>
           <!-- <el-button type="success">闅忚鍚庣煭淇�</el-button> -->
         </div>
       </div>
@@ -28,6 +27,21 @@
           <el-table-column prop="sendname" align="center" label="濮撳悕">
           </el-table-column>
           <el-table-column prop="sendstate" align="center" label="鏈嶅姟鐘舵��">
+            <template slot-scope="scope">
+            <div v-if="scope.row.sendstate == 1">
+              <el-tag type="primary"
+              :disable-transitions="false">琚鍙�</el-tag></div>
+            <div v-if="scope.row.sendstate == 2">
+              <el-tag type="primary"
+              :disable-transitions="false">寰呭彂閫�</el-tag>
+              </div>
+            <div v-if="scope.row.sendstate == 3"> <el-tag type="success"
+              :disable-transitions="false">宸插彂閫�</el-tag></div>
+            <div v-if="scope.row.sendstate == 4"> <el-tag type="info"
+              :disable-transitions="false">涓嶆墽琛�</el-tag></div>
+            <div v-if="scope.row.sendstate == 5"> <el-tag type="danger"
+              :disable-transitions="false">鍙戦�佸け璐�</el-tag></div>
+          </template>
           </el-table-column>
           <el-table-column
             prop="finishtime"
@@ -38,6 +52,60 @@
           >
           </el-table-column>
           <el-table-column
+            label="鍑洪櫌鏃ユ湡"
+            width="200"
+            align="center"
+            key="endtime"
+            prop="endtime"
+          >
+            <template slot-scope="scope">
+              <span>{{ formatTime(scope.row.endtime) }}</span>
+            </template></el-table-column
+          >
+          <el-table-column
+            label="璐d换鎶ゅ+"
+            width="120"
+            align="center"
+            key="nurseName"
+            prop="nurseName"
+          />
+          <el-table-column
+            label="涓绘不鍖荤敓"
+            width="120"
+            align="center"
+            key="drname"
+            prop="drname"
+          />
+
+          <el-table-column
+            label="缁撴灉鐘舵��"
+            align="center"
+            key="excep"
+            prop="excep"
+            width="120"
+          >
+            <template slot-scope="scope">
+              <dict-tag
+                :options="dict.type.sys_yujing"
+                :value="scope.row.excep"
+              />
+            </template>
+          </el-table-column>
+          <el-table-column
+            label="澶勭悊鎰忚"
+            align="center"
+            key="suggest"
+            prop="suggest"
+            width="120"
+          >
+            <template slot-scope="scope">
+              <dict-tag
+                :options="dict.type.sys_suggest"
+                :value="scope.row.suggest"
+              />
+            </template>
+          </el-table-column>
+          <el-table-column
             prop="taskName"
             align="center"
             width="200"
@@ -45,6 +113,7 @@
             label="浠诲姟鍚嶇О"
           >
           </el-table-column>
+
           <el-table-column
             prop="templatename"
             align="center"
@@ -83,6 +152,30 @@
         </el-table>
       </div>
     </div>
+    <div class="Followuserinfo">
+      <div>
+        <div class="headline">
+          <div>浜哄伐澶勭悊鎰忚</div>
+        </div>
+        <div style="margin-left: 30px">
+          <el-button type="warning" @click="Editsingletaskson('1')"
+            >鏆備笉澶勭悊</el-button
+          >
+          <el-button type="success" @click="Editsingletaskson('2')"
+            >鐥呮儏绋冲畾</el-button
+          >
+          <el-button type="primary" @click="Editsingletaskson('3')"
+            >閫氱煡灏辫瘖</el-button
+          >
+          <el-button type="danger" @click="Editsingletaskson('4')"
+            >澶辫</el-button
+          >
+          <el-button type="info" @click="Editsingletaskson('5')"
+            >浜哄伐闅忚</el-button
+          >
+        </div>
+      </div>
+    </div>
     <div>
       <el-tabs type="border-card">
         <el-tab-pane>
@@ -99,7 +192,11 @@
                 :key="item.aaa"
               >
                 <div
-                  class="scriptTopic-dev"
+                  :class="
+                    item.isabnormal
+                      ? 'scriptTopic-isabnormal'
+                      : 'scriptTopic-dev'
+                  "
                   :key="index"
                   v-if="item.scriptType == 1"
                 >
@@ -115,6 +212,7 @@
                         v-for="(
                           items, index
                         ) in item.svyLibTemplateTargetoptions"
+                        :class="items.isabnormal ? 'red-star' : ''"
                         :key="index"
                         :label="items.optioncontent"
                         >{{ items.optioncontent }}</el-radio
@@ -127,7 +225,11 @@
                 </div>
                 <!-- 澶氶�� -->
                 <div
-                  class="scriptTopic-dev"
+                  :class="
+                    item.isabnormal
+                      ? 'scriptTopic-isabnormal'
+                      : 'scriptTopic-dev'
+                  "
                   :key="index"
                   v-if="item.scriptType == 2"
                 >
@@ -140,6 +242,7 @@
                       @change="updateScore($event, index, item)"
                     >
                       <el-checkbox
+                        :class="items.isabnormal ? 'red-star' : ''"
                         @change="$forceUpdate()"
                         v-for="(
                           items, indexs
@@ -177,6 +280,7 @@
                 </div>
               </div>
             </div>
+            <el-button type="primary" @click="getdetail">淇濆瓨闂嵎</el-button>
           </div>
         </el-tab-pane>
         <el-tab-pane>
@@ -208,8 +312,15 @@
 </template>
 
 <script>
-import { getsearchrResults, getTaskservelist } from "@/api/AiCentre/index";
+import {
+  getsearchrResults,
+  getTaskservelist,
+  Editsingletaskson,
+  serviceSubtaskDetailedit,
+  serviceSubtaskDetailadd,
+} from "@/api/AiCentre/index";
 export default {
+  dicts: ["sys_normal_disable", "sys_user_sex", "sys_yujing", "sys_suggest"],
   data() {
     return {
       radio: "1",
@@ -218,10 +329,11 @@
       radio: "2",
       taskname: "",
       tableDatatop: [], //棰樼洰琛�
-      Whetherall:false, //鏄惁鍏ㄩ儴璁板綍灞曠ず
+      Whetherall: false, //鏄惁鍏ㄩ儴璁板綍灞曠ず
       logsheetlist: [],
       sendname: null,
       serviceType: null,
+      id: null,
       taskid: null,
       patid: null,
     };
@@ -229,6 +341,7 @@
 
   created() {
     this.taskid = this.$route.query.taskid;
+    this.id = this.$route.query.id;
     this.sendname = this.$route.query.sendname;
     this.patid = this.$route.query.patid;
     this.serviceType = this.$route.query.serviceType;
@@ -242,26 +355,77 @@
       getsearchrResults({
         taskid: this.taskid,
         patid: this.patid,
+        subId: this.id,
+        isFinish:false,
       }).then((res) => {
         if (res.code === 200) {
           this.tableDatatop = res.data.scriptResult.script;
           this.tableDatatop.forEach((item) => {
             if (item.scriptResult && item.scriptType != 2) {
+              item.isoption = 3;
               item.scriptResult = JSON.parse(item.scriptResult);
             } else if (item.scriptResult && item.scriptType == 2) {
               item.scriptResult = item.scriptResult.split("&");
+              item.isoption = 3;
             }
           });
           this.taskname = res.data.taskName;
+          this.overdata();
         }
       });
     },
+    // 鍖绘姢浜哄憳瀛樺偍鏁版嵁
+    getdetail() {
+      let excep = "";
+      this.tableDatatop.forEach((item) => {
+        var objs = item.svyLibTemplateTargetoptions.find(
+          (items) => items.optioncontent == item.scriptResult
+        );
+
+        if (objs.isabnormal) {
+          excep = 1;
+        }
+
+        let obj = {
+          asrtext: null,
+          patid: this.patid,
+          subId: this.id,
+          taskid: this.taskid,
+          scriptid: item.id,
+          questiontext: item.scriptContent,
+        };
+        if (item.scriptType == 2 && item.scriptResult[0]) {
+          obj.asrtext = item.scriptResult.join("&");
+        } else if (item.scriptType != 2 && item.scriptResult) {
+          obj.asrtext = JSON.stringify(item.scriptResult);
+        }
+
+        if (item.isoption == 3) {
+          serviceSubtaskDetailedit(obj).then((res) => {
+            if (res.code == 200) {
+            } else {
+              this.$modal.error("淇敼澶辫触");
+            }
+          });
+        } else {
+          serviceSubtaskDetailadd(obj).then((res) => {
+            if (res.code == 200) {
+              console.log(res);
+            } else {
+              this.$modal.error("淇敼澶辫触");
+            }
+          });
+        }
+      });
+      this.Editsingletasksonyic(excep);
+    },
     // 鑾峰彇鎮h�呰褰�
     getTaskservelist(taskid) {
+      this.taskid = taskid;
       if (taskid) {
-        this.Whetherall=false;
-      }else{
-        this.Whetherall=true;
+        this.Whetherall = false;
+      } else {
+        this.Whetherall = true;
       }
       getTaskservelist({
         patid: this.patid,
@@ -272,11 +436,85 @@
         }
       });
     },
+    Editsingletaskson(son) {
+      let objson = {};
+      getTaskservelist({
+        patid: this.patid,
+        taskid: this.taskid,
+      }).then((res) => {
+        if (res.code == 200) {
+          objson = res.rows[0];
+          objson.suggest = son;
+          Editsingletaskson(objson).then((res) => {
+            if (res.code) {
+              this.$modal.msgSuccess("璁板綍鎴愬姛");
+              this.getTaskservelist(this.taskid);
+            }
+          });
+        }
+      });
+    },
+    Editsingletasksonyic(excep) {
+      let objson = {};
+      getTaskservelist({
+        patid: this.patid,
+        taskid: this.taskid,
+      }).then((res) => {
+        if (res.code == 200) {
+          objson = res.rows[0];
+          objson.excep = excep;
+          Editsingletaskson(objson).then((res) => {
+            if (res.code) {
+              this.$modal.msgSuccess("鏈嶅姟淇敼鎴愬姛");
+              this.getTaskservelist(this.taskid);
+            }
+          });
+        }
+      });
+    },
+    // 鏇存敼寮傚父鐘舵��
     Seedetails(row) {
-      this.$modal.confirm('鏄惁鏌ョ湅浠诲姟涓�"' + optionids + '"鐨勬湇鍔¢」锛�').then(function () {
-        }).then(() => {
+      this.$modal
+        .confirm('鏄惁鏌ョ湅浠诲姟涓�"' + optionids + '"鐨勬湇鍔¢」锛�')
+        .then(function () {})
+        .then(() => {
           this.getList();
-        }).catch(() => { });
+        })
+        .catch(() => {});
+    },
+    handleOptionChange(a, b, c) {
+      var obj = this.tableDatatop[b].svyLibTemplateTargetoptions.find(
+        (item) => item.optioncontent == a
+      );
+      if (obj.isabnormal) {
+        this.tableDatatop[b].isabnormal = true;
+      } else {
+        this.tableDatatop[b].isabnormal = false;
+      }
+      this.$forceUpdate();
+    },
+    overdata() {
+      this.tableDatatop.forEach((item, index) => {
+        console.log(item.svyLibTemplateTargetoptions);
+
+        var obj = item.svyLibTemplateTargetoptions.find(
+          (items) => items.optioncontent == item.scriptResult
+        );
+        if (obj) {
+          if (obj.isabnormal) {
+            this.tableDatatop[index].isabnormal = true;
+          } else {
+            this.tableDatatop[index].isabnormal = false;
+          }
+          this.$forceUpdate();
+        }
+      });
+    },
+
+    updateScore(a, b, c) {
+      console.log(a);
+      console.log(b);
+      console.log(c);
     },
   },
 };
@@ -358,20 +596,47 @@
     }
   }
 }
+.scriptTopic-isabnormal {
+  color: red;
+}
 .headline {
-    font-size: 24px;
-    height: 40px;
-    border-left: 5px solid #41a1be;
-    padding-left: 5px;
-    margin-bottom: 10px;
-    display: flex;
-    // justify-content: space-between;
-    .Add-details {
-      font-size: 18px;
-      color: #02a7f0;
-      cursor: pointer;
-    }
+  font-size: 24px;
+  height: 40px;
+  border-left: 5px solid #41a1be;
+  padding-left: 5px;
+  margin-bottom: 10px;
+  display: flex;
+  // justify-content: space-between;
+  .Add-details {
+    font-size: 18px;
+    color: #02a7f0;
+    cursor: pointer;
   }
+}
+.red-star {
+  ::v-deep.el-radio__label {
+    position: relative;
+    padding-right: 10px; /* 鏍规嵁闇�瑕佽皟鏁� */
+  }
+  ::v-deep.el-radio__label::after {
+    content: "*";
+    color: red;
+    position: absolute;
+    right: -5px; /* 鏍规嵁闇�瑕佽皟鏁� */
+    top: 0;
+  }
+  ::v-deep.el-checkbox__label {
+    position: relative;
+    padding-right: 10px; /* 鏍规嵁闇�瑕佽皟鏁� */
+  }
+  ::v-deep.el-checkbox__label::after {
+    content: "*";
+    color: red;
+    position: absolute;
+    right: -5px; /* 鏍规嵁闇�瑕佽皟鏁� */
+    top: 0;
+  }
+}
 ::v-deep.offside-value .el-radio__label {
   color: #fff;
 }
diff --git a/src/views/followvisit/tasklist/index.vue b/src/views/followvisit/tasklist/index.vue
index 1ebd6f8..1f385ea 100644
--- a/src/views/followvisit/tasklist/index.vue
+++ b/src/views/followvisit/tasklist/index.vue
@@ -35,7 +35,7 @@
           ></el-date-picker>
         </el-form-item>
 
-        <el-form-item label="鏈嶅姟椤圭洰" prop="status">
+        <el-form-item label="浠诲姟妯℃澘" prop="status">
           <el-input
             v-model="topqueryParams.templatename"
             @keyup.enter.native="handleQuery"
@@ -82,6 +82,20 @@
             </el-option>
           </el-select>
         </el-col>
+        <!-- <el-col :span="1.5">
+          <el-select
+            v-model="longTask"
+            placeholder="璇烽�夋嫨浠诲姟绫诲瀷"
+          >
+            <el-option
+              v-for="item in longtermlist"
+              :key="item.value"
+              :label="item.label"
+              :value="item.value"
+            >
+            </el-option>
+          </el-select>
+        </el-col> -->
         <el-col :span="1.5">
           <el-button
             type="primary"
@@ -89,11 +103,11 @@
             size="medium"
             @click="handleAdd"
             :disabled="!tasktopic"
-            >鏂板</el-button
+            >鏂板缓浠诲姟</el-button
           >
         </el-col>
 
-        <el-col :span="19">
+        <!-- <el-col :span="19">
           <div class="documentf">
             <div class="document">
               <el-button
@@ -107,7 +121,7 @@
               >
             </div>
           </div>
-        </el-col>
+        </el-col> -->
         <!-- <el-col :span="1.5"> </el-col> -->
       </el-row>
       <!-- <right-toolbar
@@ -127,6 +141,7 @@
         <el-table-column
           label="浠诲姟鍚嶇О"
           fixed
+          width="120"
           align="center"
           key="taskName"
           prop="taskName"
@@ -134,15 +149,19 @@
         />
         <el-table-column
           label="浠诲姟鎻忚堪"
+          width="280"
           align="center"
           key="taskDesc"
           prop="taskDesc"
+          :show-overflow-tooltip="true"
         />
         <el-table-column
           label="鏈嶅姟椤圭洰"
+          width="120"
           align="center"
           key="templatename"
           prop="templatename"
+          :show-overflow-tooltip="true"
         />
         <el-table-column
           label="寰呮墽琛�/鎬讳换鍔�"
@@ -152,6 +171,17 @@
         >
           <template slot-scope="scope">
             <span>{{ scope.row.wfs }}/{{ scope.row.yfs }}</span>
+          </template>
+        </el-table-column>
+        <el-table-column
+          label="鏄惁闀挎湡浠诲姟"
+          align="center"
+          key="longTask"
+          prop="longTask"
+          width="120"
+        >
+          <template slot-scope="scope">
+            <span>{{ scope.row.longTask?'闀挎湡浠诲姟':'闈為暱鏈�' }}</span>
           </template>
         </el-table-column>
 
@@ -199,7 +229,7 @@
         >
           <template slot-scope="scope">
             <el-button
-              v-if="scope.row.sendState == 1 || scope.row.sendState == 3"
+              v-if="(scope.row.sendState == 1 || scope.row.sendState == 3)&&!scope.row.longTask"
               size="medium"
               type="text"
               @click="sponsor(scope.row)"
@@ -207,10 +237,14 @@
                 ><i class="el-icon-s-promotion"></i>鍙戣捣</span
               ></el-button
             >
-
-            <el-button size="medium" type="text" @click="newAdd(scope.row)"
+            <!-- <el-button size="medium" type="text" @click="newAdd(scope.row)"
               ><span class="button-xj"
                 ><i class="el-icon-circle-plus-outline"></i>缁堟</span
+              ></el-button
+            > -->
+            <el-button size="medium" type="text" @click="handleUpdate(scope.row,1)"
+              ><span class="button-xj"
+                ><i class="el-icon-circle-plus-outline"></i>渚濈収鏂板</span
               ></el-button
             >
             <el-button
@@ -393,6 +427,7 @@
       postOptions: [],
       // 瑙掕壊閫夐」
       roleOptions: [],
+      longTask:0,
       taskform: {
         showDate: [],
         showTimeMorn: [],
@@ -414,6 +449,16 @@
       previewvalue: {
         username: "杩欎釜鍖荤敓瀵逛綘鎬庝箞鏍�",
       },
+      longtermlist:[
+      {
+          value: '1',
+          label: "闀挎湡浠诲姟",
+        },
+        {
+          value: '0',
+          label: "鏅�氫换鍔�",
+        },
+      ],
       taskoptions: [
         {
           value: "1",
@@ -556,24 +601,6 @@
       propss: { multiple: true },
       options: [],
 
-      topicoptions: [
-        {
-          value: 1,
-          label: "寰呭鏍�",
-        },
-        {
-          value: 2,
-          label: "鎵ц涓�",
-        },
-        {
-          value: 3,
-          label: "鎵ц瀹屾垚",
-        },
-        {
-          value: 4,
-          label: "宸插仠姝�",
-        },
-      ],
       // 琛ㄥ崟鏍¢獙
       rules: {
         userName: [
@@ -624,6 +651,8 @@
   },
   watch: {},
   created() {
+    this.topqueryParams.leaveldeptcodes = store.getters.belongDepts.map(obj=>obj.deptCode);
+    this.topqueryParams.leavehospitaldistrictcodes = store.getters.belongWards.map(obj=>obj.districtCode);
     this.tasktopic = this.$route.query.tasktopic
       ? this.$route.query.tasktopic
       : this.tasktopic;
@@ -781,7 +810,7 @@
       }
     },
     /** 淇敼鎸夐挳鎿嶄綔 */
-    handleUpdate(row) {
+    handleUpdate(row,newadd) {
       if (this.topqueryParams.type == 1) {
         this.$router.push({
           path: "/followvisit/particty",
@@ -789,6 +818,7 @@
             id: row.taskid,
             type: this.topqueryParams.type,
             serviceType: this.tasktopic,
+            newadd:newadd,//鏄惁渚濈収鏂板缓
           },
         });
       } else if (this.topqueryParams.type == 2) {
@@ -798,6 +828,7 @@
             id: row.taskid,
             type: this.topqueryParams.type,
             serviceType: this.tasktopic,
+            newadd:newadd,
           },
         });
       } else if (this.topqueryParams.type == 3) {
@@ -807,6 +838,7 @@
             id: row.taskid,
             type: this.topqueryParams.type,
             serviceType: this.tasktopic,
+            newadd:newadd,
           },
         });
       }
@@ -919,34 +951,7 @@
       }
     },
 
-    // 渚濈収鏂板
-    newAdd(row) {
-      this.$modal
-        .confirm("鏄惁渚濈収褰撳墠浠诲姟鍒涘缓鏂颁换鍔★紵")
-        .then(() => {
-          if (this.tasktopic == 5) {
-            this.$router.push({
-              path: "/followvisit/particty",
-              query: { type: 1, id: row.taskid, nhh: 1 },
-            });
-          } else if (
-            this.tasktopic == 2 ||
-            this.tasktopic == 3 ||
-            this.tasktopic == 6
-          ) {
-            this.$router.push({
-              path: "/followvisit/QuestionnaireTask",
-              query: { type: 2, id: row.taskid, nhh: 1 },
-            });
-          } else if (this.tasktopic == 8 || this.tasktopic == 4) {
-            this.$router.push({
-              path: "/followvisit/Missioncreation",
-              query: { type: 3, id: row.taskid, nhh: 1 },
-            });
-          }
-        })
-        .catch(() => {});
-    },
+
     // 鏆傚仠
     stop(row) {
       console.log(row);
diff --git a/src/views/knowledge/education/compilequer/index.vue b/src/views/knowledge/education/compilequer/index.vue
index df401b1..116116c 100644
--- a/src/views/knowledge/education/compilequer/index.vue
+++ b/src/views/knowledge/education/compilequer/index.vue
@@ -680,7 +680,7 @@
         console.log(this.ruleForm.richText, "this.ruleForm.richText");
         // 澶勭悊鍐呯綉html
         addrichText({
-          // content: this.content,
+          content: this.content,
           fileName: this.generateRandomHtmlFilename(),
         }).then((resf) => {
           this.ruleForm.htmlRichText = resf.msg.replace(
diff --git a/src/views/knowledge/education/index.vue b/src/views/knowledge/education/index.vue
index 1dde0b4..1c7494d 100644
--- a/src/views/knowledge/education/index.vue
+++ b/src/views/knowledge/education/index.vue
@@ -447,7 +447,7 @@
     <el-dialog title="妯℃澘棰勮" :visible.sync="previewtf" width="60%">
       <div class="preview-left">
         <!-- 鍗曢�� -->
-        <div v-html="richText"></div>
+        <div v-html="htmlRichText"></div>
       </div>
       <!-- <span slot="footer" class="dialog-footer">
         <el-button @click="previewGo">鍓嶅線妯℃澘璇︽儏淇敼</el-button>
@@ -501,7 +501,7 @@
       haoeducation: "",
       indexid: null,
       inputValue: "",
-      richText: "",
+      htmlRichText: "",
       radio: "涓诲垎绫�",
       inputVisible: false,
       previewtf: false,
@@ -652,14 +652,14 @@
     },
     // 鏌ョ湅瀹f暀
     Vieweducation(row) {
-      this.richText = null;
+      this.htmlRichText = null;
       this.previewtf = true;
       axios
-        .get(row.richText)
+        .get(row.htmlRichText)
         .then((response) => {
           console.log(response.data, "鏁版嵁"); // 杈撳嚭鑾峰彇鍒扮殑鏂囦欢鍐呭
-          this.richText = response.data;
-          this.richText = this.addStyleToImages(this.richText);
+          this.htmlRichText = response.data;
+          this.htmlRichText = this.addStyleToImages(this.htmlRichText);
         })
         .catch((error) => {
           this.$modal.msgError("鑾峰彇瀵屾枃鏈け璐�");
diff --git a/src/views/knowledge/questionbank/index.vue b/src/views/knowledge/questionbank/index.vue
index bb92c61..b6e20a6 100644
--- a/src/views/knowledge/questionbank/index.vue
+++ b/src/views/knowledge/questionbank/index.vue
@@ -3,7 +3,7 @@
     <!-- 宸︿晶鏍� -->
     <div class="sidecolumn">
       <div class="sidecolumn-top">
-        <div class="top-wj">闂绫诲瀷</div>
+        <div class="top-wj">闂鍒嗙被</div>
         <div class="top-tj" @click="Newcategory">+娣诲姞</div>
       </div>
       <div class="center-ss">
@@ -68,7 +68,7 @@
               v-show="showSearch"
               label-width="98px"
             >
-              <el-form-item label="闂鏍囬" prop="userName">
+              <el-form-item label="闂涓婚" prop="userName">
                 <el-input
                   v-model="queryParams.scriptTopic"
                   placeholder="璇疯緭鍏�"
@@ -135,7 +135,6 @@
                   icon="el-icon-plus"
                   size="medium"
                   @click="compileUpdate"
-                  v-hasPermi="['system:user:add']"
                   >鏂板</el-button
                 >
               </el-col>
@@ -148,7 +147,6 @@
                   size="medium"
                   :disabled="multiple"
                   @click="handleDelete"
-                  v-hasPermi="['system:user:remove']"
                   >鍒犻櫎</el-button
                 >
               </el-col>
@@ -173,11 +171,19 @@
                 prop="id"
               /> -->
               <el-table-column
-                label="棰樼洰鏍囬"
+                label="闂涓婚"
                 fixed
                 align="center"
                 key="scriptTopic"
                 prop="scriptTopic"
+                width="200"
+                :show-overflow-tooltip="true"
+              />
+              <el-table-column
+                label="闂鍐呭"
+                align="center"
+                key="scriptContent"
+                prop="scriptContent"
                 width="200"
                 :show-overflow-tooltip="true"
               />
@@ -197,21 +203,13 @@
               </el-table-column>
               <el-table-column
                 label="鎸囨爣鍚嶇О"
-                fixed
                 align="center"
                 key="targetname"
                 prop="targetname"
                 width="200"
                 :show-overflow-tooltip="true"
               />
-              <el-table-column
-                label="棰樼洰鍐呭"
-                align="center"
-                key="scriptContent"
-                prop="scriptContent"
-                width="200"
-                :show-overflow-tooltip="true"
-              />
+
 
               /><el-table-column
                 label="閫傜敤鏂瑰紡"
@@ -236,7 +234,6 @@
                     size="medium"
                     type="text"
                     @click="illnessUpdate(scope.row)"
-                    v-hasPermi="['system:user:edit']"
                     ><span class="button-textxg"
                       ><i class="el-icon-date"></i>璇︽儏</span
                     ></el-button
@@ -408,7 +405,7 @@
         <el-button type="primary" @click="confirmillness">纭� 瀹�</el-button>
       </span>
     </el-dialog>
-    <el-dialog title="棰樼洰棰勮" :visible.sync="topicVisible" width="50%">
+    <el-dialog title="闂棰勮" :visible.sync="topicVisible" width="50%">
       <div class="preview-left">
         <div class="dev-text">
           <span>{{ topicform.scriptContent }}</span>
diff --git a/src/views/knowledge/questionbank/particulars/index.vue b/src/views/knowledge/questionbank/particulars/index.vue
index bf5f9c8..e22f153 100644
--- a/src/views/knowledge/questionbank/particulars/index.vue
+++ b/src/views/knowledge/questionbank/particulars/index.vue
@@ -40,6 +40,24 @@
             <el-divider></el-divider>
 
             <div style="margin-left: 8%">
+              <el-form-item label="闂鍐呭" prop="scriptContent">
+                <el-input
+                  style="width: 40vw"
+                  type="textarea"
+                  id="scriptContent"
+                  v-model="topicobj.scriptContent"
+                  @focus="handleInput('scriptContent')"
+                  placeholder="璇疯緭鍏ラ棶棰樺唴瀹�"
+                ></el-input>
+              </el-form-item>
+              <el-form-item label="闂璇存槑" prop="targetname">
+                <el-input
+                  style="width: 40vw"
+                  type="textarea"
+                  v-model="topicobj.scriptDesc"
+                  placeholder="璇疯緭鍏ヨ鏄�"
+                ></el-input>
+              </el-form-item>
               <el-row :gutter="10">
                 <el-col :span="8">
                   <el-form-item label="闂鍒嗙被" prop="categoryid">
@@ -82,7 +100,7 @@
                   </el-form-item>
                 </el-col>
                 <el-col :span="8" v-if="topicobj.scoretype == 1">
-                  <el-form-item label="棰樼洰寰楀垎" prop="score">
+                  <el-form-item label="闂寰楀垎" prop="score">
                     <el-input
                       v-model="topicobj.score"
                       placeholder="璇疯緭鍏ュ垎鏁�"
@@ -93,7 +111,7 @@
 
               <el-row :gutter="10">
                 <el-col :span="8"
-                  ><el-form-item label="棰樼洰鏍囬" prop="scriptTopic">
+                  ><el-form-item label="闂鏍囬" prop="scriptTopic">
                     <el-input
                       v-model="topicobj.scriptTopic"
                       placeholder="璇疯緭鍏ユ爣棰�"
@@ -125,27 +143,9 @@
                 </el-col> -->
               </el-row>
               <el-row :gutter="10">
-                <el-col :span="8">
-                  <el-form-item label="璇█" prop="language">
-                    <el-select
-                      v-model="topicobj.language"
-                      size="medium"
-                      filterable
-                      placeholder="璇烽�夋嫨鍒嗙被"
-                    >
-                      <el-option
-                        class="topicobjaa"
-                        v-for="item in languagelist"
-                        :key="item.value"
-                        :label="item.label"
-                        :value="item.value"
-                      >
-                      </el-option>
-                    </el-select>
-                  </el-form-item>
-                </el-col>
+
                 <el-col :span="8"
-                  ><el-form-item label="棰樼洰绫诲瀷" prop="scriptType">
+                  ><el-form-item label="闂绫诲瀷" prop="scriptType">
                     <el-select
                       v-model="topicobj.scriptType"
                       @change="changefn"
@@ -179,17 +179,27 @@
                       >
                       </el-option> </el-select></el-form-item
                 ></el-col>
+                <el-col :span="8">
+                  <el-form-item label="璇█" prop="language">
+                    <el-select
+                      v-model="topicobj.language"
+                      size="medium"
+                      filterable
+                      placeholder="璇烽�夋嫨鍒嗙被"
+                    >
+                      <el-option
+                        class="topicobjaa"
+                        v-for="item in languagelist"
+                        :key="item.value"
+                        :label="item.label"
+                        :value="item.value"
+                      >
+                      </el-option>
+                    </el-select>
+                  </el-form-item>
+                </el-col>
               </el-row>
-              <el-form-item label="棰樼洰鍐呭" prop="scriptContent">
-                <el-input
-                  style="width: 40vw"
-                  type="textarea"
-                  id="scriptContent"
-                  v-model="topicobj.scriptContent"
-                  @focus="handleInput('scriptContent')"
-                  placeholder="璇疯緭鍏ラ鐩唴瀹�"
-                ></el-input>
-              </el-form-item>
+
               <!-- <el-form-item
               label=""
               prop="scriptContent"
@@ -235,14 +245,7 @@
                 </el-form-item>
               </el-col>
             </el-row> -->
-              <el-form-item label="棰樼洰璇存槑" prop="targetname">
-                <el-input
-                  style="width: 40vw"
-                  type="textarea"
-                  v-model="topicobj.scriptDesc"
-                  placeholder="璇疯緭鍏ヨ鏄�"
-                ></el-input>
-              </el-form-item>
+
 
               <!-- <el-form-item label="閫変腑鎸囨爣锛�">
                 <span style="margin-left: 30px"
@@ -383,7 +386,7 @@
 
               <el-row>
                 <el-col :span="10">
-                  <el-form-item label="鍊肩被鍨�">
+                  <el-form-item label="缁撴灉绫诲瀷">
                     <el-radio-group
                       :disabled="true"
                       v-model="topicobj.valueType"
@@ -395,7 +398,7 @@
                   </el-form-item>
                 </el-col>
                 <el-col :span="12">
-                  <el-form-item label="棰樼洰绫诲瀷">
+                  <el-form-item label="闂棰樺瀷">
                     <el-radio-group
                       :disabled="true"
                       v-model="topicobj.scriptType"
@@ -479,7 +482,7 @@
                     </el-col>
                   </el-row>
                   <el-row :gutter="10">
-                    <el-form-item label="棰勮鎻愰啋">
+                    <el-form-item label="寮傚父鎻愰啋">
                       <el-radio-group v-model="item.isabnormal">
                         <el-radio :label="1">鏄�</el-radio>
                         <el-radio :label="0">鍚�</el-radio>
@@ -666,7 +669,7 @@
         />
       </div>
     </el-drawer>
-    <el-dialog title="棰樼洰棰勮" :visible.sync="topicVisible" width="50%">
+    <el-dialog title="闂棰勮" :visible.sync="topicVisible" width="50%">
       <div class="preview-left">
         <div class="dev-text">
           <span>{{ topicobj.scriptContent }}</span>
@@ -808,19 +811,19 @@
           { required: true, message: "鍙敤鐘舵�佷笉鑳戒负绌�", trigger: "blur" },
         ],
         scriptTopic: [
-          { required: true, message: "棰樼洰鏍囬涓嶈兘涓虹┖", trigger: "blur" },
+          { required: true, message: "闂鏍囬涓嶈兘涓虹┖", trigger: "blur" },
         ],
         ismandatory: [
           { required: true, message: "鏄惁蹇呭~涓嶈兘涓虹┖", trigger: "blur" },
         ],
         scriptType: [
-          { required: true, message: "棰樼洰绫诲瀷涓嶈兘涓虹┖", trigger: "blur" },
+          { required: true, message: "闂绫诲瀷涓嶈兘涓虹┖", trigger: "blur" },
         ],
         suitway: [
           { required: true, message: "閫傜敤鏂瑰紡涓嶈兘涓虹┖", trigger: "blur" },
         ],
         scriptContent: [
-          { required: true, message: "棰樼洰鍐呭涓嶈兘涓虹┖", trigger: "blur" },
+          { required: true, message: "闂鍐呭涓嶈兘涓虹┖", trigger: "blur" },
         ],
       },
     };
diff --git a/src/views/knowledge/questionnaire/compilequer/index.vue b/src/views/knowledge/questionnaire/compilequer/index.vue
index 4c9e463..a2e96e7 100644
--- a/src/views/knowledge/questionnaire/compilequer/index.vue
+++ b/src/views/knowledge/questionnaire/compilequer/index.vue
@@ -14,7 +14,7 @@
           <el-step>
             <template slot="title">
               <span style="cursor: pointer" @click="Editprogress = 2"
-                >闂嵎棰樼洰</span
+                >闂嵎闂</span
               >
             </template>
           </el-step>
@@ -36,10 +36,25 @@
           :model="ruleForm"
           :rules="rules"
           ref="ruleForm"
-          label-width="100px"
+          label-width="180px"
           class="demo-ruleForm"
         >
-          <el-row :gutter="10">
+          <el-form-item label="闂嵎鍚嶇О" prop="svyname">
+            <div style="width: 55vw">
+              <el-input v-model="ruleForm.svyname"></el-input>
+            </div>
+          </el-form-item>
+          <el-form-item label="闂嵎鎻忚堪" prop="description">
+            <el-input
+              style="width: 55vw"
+              type="textarea"
+              :rows="2"
+              placeholder="璇疯緭鍏ュ唴瀹�"
+              v-model="ruleForm.description"
+            >
+            </el-input
+          ></el-form-item>
+          <el-row :gutter="20">
             <el-col :span="10">
               <el-form-item label="闂嵎鍒嗙被" prop="categoryid">
                 <el-select
@@ -64,7 +79,7 @@
                 </el-select>
               </el-form-item>
             </el-col>
-            <el-col :span="10">
+            <el-col :span="8">
               <el-form-item label="璇勪环绫诲瀷" prop="scoreType">
                 <el-select
                   v-model="ruleForm.scoreType"
@@ -83,8 +98,8 @@
           </el-row>
           <el-row :gutter="20">
             <el-col :span="10">
-              <el-form-item label="鍙敤鐘舵��" prop="isAvailable">
-                <el-radio-group v-model="ruleForm.isAvailable">
+              <el-form-item label="鍙敤鐘舵��" prop="isenable">
+                <el-radio-group v-model="ruleForm.isenable">
                   <el-radio
                     v-for="(item, index) in usable"
                     :label="item.value"
@@ -102,22 +117,27 @@
               </el-form-item>
             </el-col>
           </el-row>
-          <el-form-item label="闂嵎鏍囬" prop="svyname">
-            <div style="width: 55vw">
-              <el-input v-model="ruleForm.svyname"></el-input>
-            </div>
-          </el-form-item>
-          <el-form-item label="闂嵎鎻忚堪" prop="description">
-            <el-input
-              style="width: 55vw"
-              type="textarea"
-              :rows="5"
-              autosize
-              placeholder="璇疯緭鍏ュ唴瀹�"
-              v-model="ruleForm.description"
-            >
-            </el-input
-          ></el-form-item>
+          <!-- <el-row :gutter="20">
+            <el-col :span="10">
+              <el-form-item label="闀挎湡浠诲姟" prop="longTemp">
+                <el-radio-group v-model="ruleForm.longTemp">
+                  <el-radio
+                    v-for="(item, index) in longtype"
+                    :label="item.value"
+                    >{{ item.label }}</el-radio
+                  >
+                </el-radio-group>
+              </el-form-item>
+            </el-col>
+            <el-col :span="8" v-if="ruleForm.longTemp">
+              <el-form-item label="浠诲姟鍛ㄦ湡锛堝嚑澶╁悗锛�" prop="name">
+                <el-input
+                  v-model="ruleForm.sendDay"
+                  placeholder="榛樿5澶╁悗"
+                ></el-input>
+              </el-form-item>
+            </el-col>
+          </el-row> -->
 
           <el-row>
             <el-form-item prop="dynamicTags">
@@ -230,25 +250,50 @@
           <el-row>
             <el-col :span="20"
               ><el-form-item label="閫傜敤绉戝" prop="region">
-                <el-cascader
-                  style="width: 55vw"
+                <el-select
                   v-model="tempDetpRelevanceslist"
-                  :options="deptList"
-                  :props="props"
-                  :show-all-levels="false"
-                  clearable
+                  @remove-tag="removetag"
+                  style="width: 55vw"
+                  size="medium"
+                  multiple
+                  filterable
+                  placeholder="璇烽�夋嫨绉戝"
                 >
-                  <template slot-scope="{ node, data }">
-                    <span>{{ data.deptName }}</span>
-                    <span v-if="!node.isLeaf">
-                      ({{ data.children.length }})
-                    </span>
-                  </template>
-                </el-cascader>
-              </el-form-item></el-col
-            >
+                  <el-option
+                    class="ruleFormaa"
+                    v-for="item in belongDepts"
+                    :key="item.deptCode"
+                    :label="item.deptName"
+                    :value="item.deptCode"
+                  >
+                  </el-option>
+                </el-select> </el-form-item
+            ></el-col>
           </el-row>
-          <el-form-item label="闂嵎缁撴潫璇�" prop="conclusion">
+          <el-row>
+            <el-col :span="20"
+              ><el-form-item label="閫傜敤鐥呭尯" prop="region">
+                <el-select
+                  v-model="tempbelongWards"
+                  @remove-tag="removehpsp"
+                  style="width: 55vw"
+                  size="medium"
+                  multiple
+                  filterable
+                  placeholder="璇烽�夋嫨绉戝"
+                >
+                  <el-option
+                    class="ruleFormaa"
+                    v-for="item in belongWards"
+                    :key="item.districtCode"
+                    :label="item.districtName"
+                    :value="item.districtCode"
+                  >
+                  </el-option>
+                </el-select> </el-form-item
+            ></el-col>
+          </el-row>
+          <el-form-item label="缁撴潫璇�" prop="conclusion">
             <el-input
               style="width: 55vw; line-height: 80px"
               type="textarea"
@@ -274,14 +319,14 @@
       <!-- 闂嵎璁剧疆 -->
       <div v-if="Editprogress == 2">
         <div class="leftvlue-jbxx">
-          闂嵎棰樼洰璁剧疆
+          闂嵎闂璁剧疆
           <span style=""
             ><el-button
               type="warning"
               icon="el-icon-finished"
               round
               @click="test"
-              >棰樼洰瑙勫垯鏁堥獙</el-button
+              >闂瑙勫垯鏁堥獙</el-button
             ></span
           >
         </div>
@@ -293,17 +338,17 @@
               icon="el-icon-plus"
               round
               @click="getaddtopiclist"
-              >娣诲姞棰樼洰</el-button
+              >娣诲姞闂</el-button
             >
             <el-button
               type="success"
               icon="el-icon-edit-outline"
               round
               @click="Operateit = !Operateit"
-              >{{ !Operateit ? "缂栬緫棰樼洰" : "瀹屾暣淇℃伅灞曠ず" }}</el-button
+              >{{ !Operateit ? "缂栬緫闂" : "瀹屾暣淇℃伅灞曠ず" }}</el-button
             >
           </div>
-          <div style="display: flex" v-if="ruleForm.scoreType==1">
+          <div style="display: flex" v-if="ruleForm.scoreType == 1">
             <span
               style="
                 width: 180px;
@@ -334,7 +379,7 @@
                   width="50"
                 />
                 <el-table-column
-                  label="棰樼洰鏍囬"
+                  label="闂涓婚"
                   align="center"
                   key="scriptTopic"
                   prop="scriptTopic"
@@ -356,7 +401,7 @@
                 </el-table-column>
                 <el-table-column
                   v-if="!Operateit"
-                  label="棰樼洰鍐呭"
+                  label="闂鍐呭"
                   align="center"
                   key="scriptContent"
                   prop="scriptContent"
@@ -445,10 +490,10 @@
                 :model="topicobj"
                 class="demo-form-inline"
               >
-                <div class="headline">棰樼洰璁剧疆璇︽儏</div>
+                <div class="headline">闂璁剧疆璇︽儏</div>
                 <el-row :gutter="10">
                   <el-col :span="12">
-                    <el-form-item label="棰樼洰鏍囬">
+                    <el-form-item label="闂涓婚">
                       <el-input
                         v-model="topicobj.scriptTopic"
                         placeholder="璇疯緭鍏ユ爣棰�"
@@ -463,9 +508,23 @@
                     </el-form-item>
                   </el-col>
                 </el-row>
+
+                <el-row :gutter="10">
+                  <el-form-item label="闂鍐呭">
+                    <el-input
+                      style="width: 600px"
+                      type="textarea"
+                      :rows="2"
+                      autosize
+                      placeholder="璇疯緭鍏ラ棶棰樺唴瀹�"
+                      v-model="topicobj.scriptContent"
+                    >
+                    </el-input
+                  ></el-form-item>
+                </el-row>
                 <el-row :gutter="10">
                   <el-col :span="12"
-                    ><el-form-item label="棰樼洰绫诲瀷">
+                    ><el-form-item label="闂绫诲瀷">
                       <el-select
                         v-model="topicobj.scriptType"
                         disabled
@@ -484,7 +543,7 @@
                   ></el-col>
                   <el-col :span="12">
                     <el-form-item
-                      label="棰樼洰鍒嗗��"
+                      label="闂鍒嗗��"
                       v-if="topicobj.scoretype == 1"
                     >
                       <el-input
@@ -509,7 +568,7 @@
                   >
                   <el-col :span="12"
                     ><el-form-item label="鏄惁鍙敤">
-                      <el-radio-group v-model="topicobj.isavailable">
+                      <el-radio-group v-model="topicobj.isenable">
                         <el-radio
                           v-for="(item, index) in usable"
                           :label="item.value"
@@ -548,7 +607,7 @@
                   >
                     <el-row :gutter="5">
                       <el-col :span="16"
-                        ><el-form-item label="閫夐」">
+                        ><el-form-item label="閫夐」鍚嶇О">
                           <el-input
                             type="text"
                             placeholder="璇疯緭鍏ラ�夐」"
@@ -592,6 +651,14 @@
                           </el-radio-group>
                         </el-form-item>
                       </el-col>
+                    </el-row>
+                    <el-row :gutter="10">
+                      <el-form-item label="寮傚父鎻愰啋">
+                        <el-radio-group v-model="item.isabnormal">
+                          <el-radio :label="1">鏄�</el-radio>
+                          <el-radio :label="0">鍚�</el-radio>
+                        </el-radio-group>
+                      </el-form-item>
                     </el-row>
                     <el-row :gutter="10" v-if="topicobj.branchFlag == 1">
                       <el-col :span="20"
@@ -682,7 +749,7 @@
         <el-button type="primary" @click="laststep()">涓婁竴姝�</el-button>
         <el-button type="info" @click="closeFm('ruleForm')">鍏抽棴</el-button>
         <el-button @click="Departmenttreatment('ruleForm')"
-          >淇濆瓨棰樼洰鏁版嵁</el-button
+          >淇濆瓨闂鏁版嵁</el-button
         >
       </div>
       <!-- 闂嵎棰勮 -->
@@ -753,9 +820,9 @@
         <el-button type="primary" @click="laststep()">涓婁竴姝�</el-button>
       </div>
     </div>
-    <!-- 娣诲姞棰樼洰寮圭獥 -->
+    <!-- 娣诲姞闂寮圭獥 -->
     <el-drawer
-      title="娣诲姞棰樼洰"
+      title="娣诲姞闂"
       :visible.sync="drawer"
       custom-class="demo-drawer"
       size="50%"
@@ -780,7 +847,7 @@
                     @keyup.enter.native="getaddtopiclist"
                   />
                 </el-form-item>
-                <el-form-item label="棰樼洰绫诲瀷" prop="scriptTopic">
+                <el-form-item label="闂绫诲瀷" prop="scriptTopic">
                   <el-select
                     v-model="queryParams.scriptType"
                     size="medium"
@@ -873,7 +940,7 @@
                 class="demo-form-inline"
               >
                 <div class="headline">
-                  棰樼洰璁剧疆璇︽儏
+                  闂璁剧疆璇︽儏
                   <span style="margin-left: 30px"
                     ><el-button type="primary" @click="Submittopicobj"
                       >淇濆瓨鏂板</el-button
@@ -883,16 +950,27 @@
                 <el-divider></el-divider>
                 <div>
                   <el-row :gutter="10">
+                    <el-col :span="18"
+                      ><el-form-item label="闂鍐呭">
+                        <el-input
+                          style="width: 400px"
+                          type="textarea"
+                          v-model="indexform.scriptContent"
+                          placeholder="璇疯緭鍏ラ棶棰樺唴瀹�"
+                        ></el-input> </el-form-item
+                    ></el-col>
+                  </el-row>
+                  <el-row :gutter="10">
                     <el-col :span="12">
-                      <el-form-item label="棰樼洰鏍囬">
+                      <el-form-item label="闂涓婚">
                         <el-input
                           v-model="indexform.scriptTopic"
-                          placeholder="璇疯緭鍏ラ鐩爣棰�"
+                          placeholder="璇疯緭鍏ラ棶棰樹富棰�"
                         ></el-input>
                       </el-form-item>
                     </el-col>
                     <el-col :span="12">
-                      <el-form-item label="棰樼洰寰楀垎">
+                      <el-form-item label="闂寰楀垎">
                         <el-input
                           v-model="indexform.score"
                           placeholder="璇疯緭鍏ュ垎鏁�"
@@ -940,7 +1018,7 @@
                   <el-row :gutter="10">
                     <el-col :span="12">
                       <el-form-item label="鏄惁鍙敤">
-                        <el-radio-group v-model="indexform.isAvailable">
+                        <el-radio-group v-model="indexform.isenable">
                           <el-radio
                             v-for="(item, index) in usable"
                             :label="item.value"
@@ -961,21 +1039,13 @@
                       </el-form-item>
                     </el-col>
                   </el-row>
-                  <el-row :gutter="10">
-                    <el-col :span="18"
-                      ><el-form-item label="棰樼洰鍐呭">
-                        <el-input
-                          style="width: 400px"
-                          type="textarea"
-                          v-model="indexform.scriptContent"
-                          placeholder="璇蜂粠宸︿晶鍒楄〃閫夋嫨"
-                        ></el-input> </el-form-item
-                    ></el-col>
-                  </el-row>
                 </div>
                 <div>
                   <el-form-item label="鎸囨爣鍚嶇О" prop="deptId">
                     <el-input
+                      style="width: 250px"
+                      type="textarea"
+                      :rows="2"
                       v-model="indexform.targetname"
                       placeholder="璇疯緭鍏ユ寚鏍囧悕绉�"
                       maxlength="20"
@@ -983,6 +1053,9 @@
                   </el-form-item>
                   <el-form-item label="鎸囨爣鎻忚堪" prop="deptId">
                     <el-input
+                      style="width: 250px"
+                      type="textarea"
+                      :rows="2"
                       v-model="indexform.targetdesc"
                       placeholder="璇疯緭鍏ユ寚鏍囨弿杩�"
                       maxlength="60"
@@ -991,7 +1064,7 @@
 
                   <el-row>
                     <el-col :span="20">
-                      <el-form-item label="鍊肩被鍨�">
+                      <el-form-item label="缁撴灉绫诲瀷">
                         <el-radio-group v-model="indexform.valueType">
                           <el-radio :label="1">閫夐」</el-radio>
                           <el-radio :label="2">鏂囨湰</el-radio>
@@ -1002,7 +1075,7 @@
                   </el-row>
                   <el-row>
                     <el-col :span="20">
-                      <el-form-item label="棰樼洰绫诲瀷">
+                      <el-form-item label="闂绫诲瀷">
                         <el-radio-group v-model="indexform.scriptType">
                           <el-radio :label="1">鍗曢��</el-radio>
                           <el-radio :label="2">澶氶��</el-radio>
@@ -1048,6 +1121,7 @@
                       <el-col :span="11"
                         ><el-form-item label="閫夐」鍚嶇О">
                           <el-input
+                            style="width: 400px"
                             type="text"
                             placeholder="璇疯緭鍏ラ�夐」鍒嗗��"
                             v-model="item.optioncontent"
@@ -1103,7 +1177,7 @@
                       </el-col>
                     </el-row>
                     <el-row :gutter="10">
-                      <el-form-item label="棰勮鎻愰啋">
+                      <el-form-item label="寮傚父鎻愰啋">
                         <el-radio-group v-model="item.isabnormal">
                           <el-radio :label="1">鏄�</el-radio>
                           <el-radio :label="0">鍚�</el-radio>
@@ -1170,8 +1244,8 @@
 import store from "@/store";
 import {
   getQtemplateclassify,
-  delQtemplateclassify,
-  addQtemplateclassify,
+  depthospgetson,
+  depthospgetsonlist,
   getQtemplateobj,
   compileQtemplate,
   Qtemplateinfo,
@@ -1180,6 +1254,7 @@
   Followupinfo,
   issueinfo,
   getissuelist,
+  depthospgetsondel,
   deltargetillness,
   addtargetillness,
   getillnesslist,
@@ -1221,7 +1296,9 @@
         tempDetpRelevances: [],
         svyLibTemplateTagList: [],
         scoreType: "4",
-        isAvailable: "0",
+        isenable: "0",
+        longTemp: "0",
+        sendDay: "5",
       },
       indexform: {
         svyLibTemplateTargetoptions: [],
@@ -1235,19 +1312,19 @@
           { required: true, message: "璇勪环绫诲瀷涓嶈兘涓虹┖", trigger: "blur" },
         ],
         svyname: [
-          { required: true, message: "闂嵎鏍囬涓嶈兘涓虹┖", trigger: "blur" },
+          { required: true, message: "闂嵎鍚嶇О涓嶈兘涓虹┖", trigger: "blur" },
         ],
-        isAvailable: [
+        isenable: [
           { required: true, message: "鍙敤鐘舵�佷笉鑳戒负绌�", trigger: "blur" },
         ],
         scriptTopic: [
-          { required: true, message: "棰樼洰鏍囬涓嶈兘涓虹┖", trigger: "blur" },
+          { required: true, message: "闂涓婚涓嶈兘涓虹┖", trigger: "blur" },
         ],
         ismandatory: [
           { required: true, message: "鏄惁蹇呭~涓嶈兘涓虹┖", trigger: "blur" },
         ],
         scriptType: [
-          { required: true, message: "棰樼洰绫诲瀷涓嶈兘涓虹┖", trigger: "blur" },
+          { required: true, message: "闂绫诲瀷涓嶈兘涓虹┖", trigger: "blur" },
         ],
         suitway: [
           { required: true, message: "闂嵎鏂瑰紡涓嶈兘涓虹┖", trigger: "blur" },
@@ -1290,8 +1367,8 @@
           sdadd: ["sss", "ssccss", "ssaas", "ss"],
         },
       ],
-      addvalue: "娣诲姞棰樼洰",
-      // 棰樼洰琛ㄦ牸鏁版嵁
+      addvalue: "娣诲姞闂",
+      // 闂琛ㄦ牸鏁版嵁
       userList: [],
       deptList: [],
       props: { multiple: true, value: "deptId", label: "deptName" },
@@ -1310,13 +1387,22 @@
       delScriptVOList: [],
       illnesslistapi: [],
       illnesslist: [],
-      tempDetpRelevanceslist: [],
+      tempDetpRelevanceslist: [], //绉戝鏁版嵁
+      tempDetpRelevanceslistform: [], //绉戝鏁版嵁
+      tempbelongWards: [], //鐥呭尯鏁版嵁
+      tempbelongWardsform: [], //鐥呭尯鏁版嵁
       optionstag: [],
       valuetype: [],
       qremark: [],
+      hosplist: [],
+      deptlist: [],
       usable: [
         { value: "0", label: "鍙敤" },
         { value: "1", label: "鍋滅敤" },
+      ],
+      longtype: [
+        { value: "0", label: "鏅�氫换鍔�" },
+        { value: "1", label: "闀挎湡浠诲姟" },
       ],
       required: [
         { value: "1", label: "蹇呭~" },
@@ -1328,29 +1414,15 @@
         pageNum: 1,
         pageSize: 10,
       },
-      arr: [
-        [
-          { id: 1, grade: "5" },
-          { id: 2, grade: "5" },
-          { id: 3, grade: "5" },
-          { id: 4, grade: "5" },
-        ],
-        [
-          { id: 1, grade: "5" },
-          { id: 3, grade: "5" },
-          { id: 4, grade: "5" },
-        ],
-        [
-          { id: 1, grade: "5" },
-          { id: 2, grade: "5" },
-          { id: 4, grade: "5" },
-        ],
-      ],
+      belongWards: [],
+      belongDepts: [],
+      queryParamsdept: {
+        tempid: "",
+        type: 1,
+      },
     };
   },
   activated() {
-    console.log(this.id);
-
     if (this.id != this.$route.query.id) {
       this.getissueinfo();
       this.gettabList();
@@ -1363,9 +1435,11 @@
         this.ruleForm.svyLibTemplateTagList.filter(
           (item) => item.isoperation != 3
         );
+        this.ruleForm.suitway = this.ruleForm.suitway.split(",");
       this.delScriptVOList = [];
+      this.tempDetpRelevanceslistform = [];
+      this.tempbelongWardsform = [];
       this.$forceUpdate();
-      console.log(this.ruleForm.svyTemplateLibScripts);
     }
   },
   created() {
@@ -1379,6 +1453,10 @@
     this.courtyardlist = store.getters.courtyardlist;
     this.askvaluetype = store.getters.askvaluetype;
     this.appraiselist = store.getters.appraiselist;
+    this.belongWards = store.getters.belongWards;
+    this.belongDepts = store.getters.belongDepts;
+    console.log(this.belongWards, "belongWards");
+    console.log(this.belongDepts, "belongDepts");
 
     // this.test();
   },
@@ -1396,7 +1474,6 @@
       return this.illnesslist.length - 10;
     },
   },
-
   methods: {
     // 鍏叡鏂规硶---------------
     getIndexInArray(arr, obj) {
@@ -1423,14 +1500,17 @@
     // 鑾峰彇鏁版嵁
     getissueinfo() {
       this.id = this.$route.query.id;
-      (this.ruleForm = {
+      this.queryParamsdept.tempid = this.id;
+      this.ruleForm = {
         svyTemplateLibScripts: [],
         tempDetpRelevances: [],
         svyLibTemplateTagList: [],
         scoreType: "4",
-        isAvailable: "0",
-      }),
-        (this.topicobj = {});
+        isenable: "0",
+        longTemp: "0",
+        sendDay: "5",
+      };
+      this.topicobj = {};
 
       if (this.id) {
         getQtemplateobj({ svyid: this.id }).then((res) => {
@@ -1438,7 +1518,6 @@
           this.dynamicTags = this.ruleForm.svyLibTemplateTagList.map(
             this.processElement
           );
-          this.tempDetpRelevanceslist = JSON.parse(this.ruleForm.deptNames);
           this.ruleForm.suitway = this.ruleForm.suitway.split(",");
         });
         getillness({ outid: this.id, type: 5 }).then((res) => {
@@ -1451,12 +1530,26 @@
         this.ruleForm.isenable = "1";
       }
 
-      listDept(this.queryParams).then((response) => {
-        this.deptList = this.handleTree(response.data, "deptId");
-      });
       // 鍒嗙被
       getQtemplateclassify({}).then((res) => {
         this.optionsclass = res.rows;
+      });
+      this.tempDetpRelevanceslist = [];
+      this.tempbelongWards = [];
+
+      depthospgetsonlist(this.queryParamsdept).then((res) => {
+        if (res.code == 200) {
+          let arr = res.rows;
+          arr.forEach((item) => {
+            if (item.deptType == 1) {
+              this.deptlist.push(item);
+              this.tempDetpRelevanceslist.push(item.deptCode);
+            } else if (item.deptType == 2) {
+              this.hosplist.push(item);
+              this.tempbelongWards.push(item.deptCode);
+            }
+          });
+        }
       });
     },
     submitForm(formName) {
@@ -1469,9 +1562,11 @@
       }
       if (this.id) {
         this.ruleForm.isoperation = 2;
+        this.ruleForm.tempDetpRelevances = null;
         compileQtemplate(this.ruleForm).then((res) => {
           this.$modal.msgSuccess("淇敼鎴愬姛");
           this.confirmillness();
+          this.putbelongDepts();
           this.$modal.closeLoading();
           this.$router.go(-1);
         });
@@ -1480,46 +1575,86 @@
         this.ruleForm.version = this.ruleForm.version
           ? this.ruleForm.version
           : "1.0";
+        this.ruleForm.tempDetpRelevances = null;
         compileQtemplate(this.ruleForm).then((res) => {
           this.$modal.msgSuccess("鏂板鎴愬姛");
           this.confirmillness(res.data);
+          this.putbelongDepts(res.data);
           this.$modal.closeLoading();
           this.$router.go(-1);
         });
       }
     },
-    // 绉戝澶勭悊
+    // 绉戝/闄㈠尯澶勭悊
     Departmenttreatment() {
-      this.ruleForm.deptNames = JSON.stringify(this.tempDetpRelevanceslist);
-      this.ruleForm.svyTemplateLibScripts =
-        this.ruleForm.svyTemplateLibScripts.concat(this.delScriptVOList);
-      const result = this.tempDetpRelevanceslist.map(
-        (subArr) => subArr[subArr.length - 1]
-      );
-      // id鏁扮粍鏌ユ暟缁勫璞�
-      result.forEach((item) => {
-        const condition = this.ruleForm.tempDetpRelevances.some(
-          (obj) => obj.deptId === item
-        );
-        if (!condition) {
-          listDept({ deptId: item }).then((res) => {
-            console.log(res.data[0]);
-            res.data[0].type = 2;
-            this.ruleForm.tempDetpRelevances.push(res.data[0]);
+      console.log(this.tempDetpRelevanceslist, "tempDetpRelevanceslist");
+      console.log(this.deptlist, "deptlist");
+      console.log(this.hosplist, "deptlist");
+      this.tempDetpRelevanceslist.forEach((item) => {
+        console.log(item);
+        let result = this.deptlist.some((obj) => obj.deptCode == item);
+        console.log(this.result, "result");
+
+        if (!result) {
+          this.tempDetpRelevanceslistform.push({
+            deptType: 1,
+            longTemp: this.ruleForm.longTemp,
+            deptCode: item,
+            tempid: this.id,
+            type: 1,
           });
         }
       });
-      // 鏁扮粍瀵硅薄鏌d鏁扮粍
-      this.ruleForm.tempDetpRelevances.forEach((item) => {
-        const condition = result.some((obj) => obj === item.deptId);
-        if (!condition) {
-          const index = this.ruleForm.tempDetpRelevances.indexOf(item);
-          this.ruleForm.tempDetpRelevances[index].delFlag = 1;
+      this.tempbelongWards.forEach((item) => {
+        let result = this.hosplist.some((obj) => obj.deptCode == item);
+
+        console.log(this.result, "resulthhh");
+
+        if (!result) {
+          this.tempbelongWardsform.push({
+            deptType: 2,
+            longTemp: this.ruleForm.longTemp,
+            deptCode: item,
+            tempid: this.id,
+            type: 1,
+          });
         }
       });
+      console.log(this.tempbelongWardsform, "tempbelongWardsform");
+      console.log(
+        this.tempDetpRelevanceslistform,
+        "tempDetpRelevanceslistform"
+      );
+
+      // return
       setTimeout(() => {
         this.submitForm();
-      }, 1000);
+      }, 500);
+    },
+    // 绉戝鍒犻櫎瑙﹀彂
+    removetag(row) {
+      let result = this.deptlist
+        .filter((item) => item.deptCode == row)
+        .map((item) => item.id);
+      console.log(result.length);
+      if (result.length) {
+        depthospgetsondel(result).then((res) => {
+          if (res.code) {
+          }
+        });
+      }
+    },
+    // 鍒犻櫎鍒犻櫎瑙﹀彂
+    removehpsp(row) {
+      let result = this.hosplist
+        .filter((item) => item.deptCode == row)
+        .map((item) => item.id);
+        if (result.length) {
+          depthospgetsondel(result).then((res) => {
+            if (res.code) {
+            }
+          });
+        }
     },
     // 涓嬩竴姝�
     nextstep() {
@@ -1548,7 +1683,7 @@
           });
         });
     },
-    // 鑾峰彇棰樼洰鍒楄〃
+    // 鑾峰彇闂鍒楄〃
     getaddtopiclist() {
       this.drawer = true;
       this.queryParams.scoretype = this.ruleForm.scoreType;
@@ -1559,7 +1694,7 @@
         console.log(this.userList);
       });
     },
-    // 鏂板棰樼洰
+    // 鏂板闂
     addtopic(row) {
       row.isoperation = 1;
       row.svyLibScriptOptions.forEach((item) => {
@@ -1618,7 +1753,7 @@
       console.log(this.ruleForm.svyTemplateLibScripts);
     },
 
-    // 淇敼棰樼洰淇℃伅
+    // 淇敼闂淇℃伅
     Submittopicobj() {
       this.$modal
         .confirm(
@@ -1634,7 +1769,7 @@
           this.drawer = false;
 
           this.sortFn();
-          this.$modal.msgSuccess("棰樼洰鏂板鎴愬姛锛屼繚瀛樻ā鏉垮け鏁�");
+          this.$modal.msgSuccess("闂鏂板鎴愬姛锛屼繚瀛樻ā鏉垮け鏁�");
         });
     },
     // 鏂板鍙橀噺
@@ -1738,6 +1873,24 @@
       this.illnessVisible = false;
       this.$modal.msgSuccess("缂栬緫鎴愬姛");
     },
+    // 淇濆瓨绉戝/鐥呭尯
+    putbelongDepts(id) {
+      if (this.tempDetpRelevanceslistform.length > 0) {
+        depthospgetson(this.tempDetpRelevanceslistform).then((res) => {
+          if (res.code == 200) {
+            this.$modal.msgSuccess("绉戝鏂板鎴愬姛");
+          }
+        });
+      }
+      if (this.tempbelongWardsform.length > 0) {
+        depthospgetson(this.tempbelongWardsform).then((res) => {
+          if (res.code == 200) {
+            this.$modal.msgSuccess("闄㈠尯鏂板鎴愬姛");
+          }
+        });
+      }
+    },
+
     resetQuery() {
       this.queryParams = { pageNum: 1, pageSize: 10 };
       this.getaddtopiclist();
@@ -1888,7 +2041,7 @@
     sumArray(arr) {
       // const arrsum = arr;
       // arrsum.forEach((item) => {
-      //   // 鍒ゆ柇棰樼洰鍜屾ā鏉垮眰绾�
+      //   // 鍒ゆ柇闂鍜屾ā鏉垮眰绾�
       //   console.log(item, "涓�鏉¢摼璺�");
 
       //   const totalScore = item.reduce((accumulator, current) => {
@@ -1915,7 +2068,7 @@
       if (allGreaterThanTen) {
         this.$modal.msgSuccess("鍒嗗�兼牎楠屾垚鍔�");
       } else {
-        this.$modal.msgError("棰樼洰鍒嗗�肩疮鍔犲拰妯℃澘鍒嗗�间笉绗�");
+        this.$modal.msgError("闂鍒嗗�肩疮鍔犲拰妯℃澘鍒嗗�间笉绗�");
       }
     },
 
@@ -1929,9 +2082,9 @@
         );
 
         if (notInB.length) {
-          this.$modal.msgError("棰樼洰鏈叏閮ㄤ娇鐢�");
+          this.$modal.msgError("闂鏈叏閮ㄤ娇鐢�");
         } else {
-          this.$modal.msgSuccess("棰樼洰鍏ㄩ儴浣跨敤");
+          this.$modal.msgSuccess("闂鍏ㄩ儴浣跨敤");
         }
       });
       arr.forEach((item) => {
@@ -1940,10 +2093,10 @@
           return acc;
         }, {});
         const whether = item.values(idCount).some((count) => count > 1); // 濡傛灉鏈変换浣� id 鐨勮鏁板ぇ浜� 1 灏辫繑鍥� true
-        if (!whether) this.$modal.msgError("閰嶇疆椤规湁棰樼洰閲嶅");
+        if (!whether) this.$modal.msgError("閰嶇疆椤规湁闂閲嶅");
       });
     },
-    // 棰樼洰鍜岄�夐」闂寸殑鍒嗗�煎垽鏂�
+    // 闂鍜岄�夐」闂寸殑鍒嗗�煎垽鏂�
     Scorejudgment() {
       let scorearr = this.topicobj.svyLibScriptOptions;
       let isValid = scorearr.every((score, index) => {
diff --git a/src/views/knowledge/questionnaire/index.vue b/src/views/knowledge/questionnaire/index.vue
index dccfa92..dea53d9 100644
--- a/src/views/knowledge/questionnaire/index.vue
+++ b/src/views/knowledge/questionnaire/index.vue
@@ -3,7 +3,7 @@
     <!-- 宸︿晶鏍� -->
     <div class="sidecolumn">
       <div class="sidecolumn-top">
-        <div class="top-wj">闂嵎绫诲瀷</div>
+        <div class="top-wj">闂嵎鍒嗙被</div>
         <div class="top-tj" @click="Newcategory">+娣诲姞</div>
       </div>
       <div class="center-ss">
@@ -94,7 +94,7 @@
                   </el-option>
                 </el-select>
               </el-form-item>
-              <el-form-item label="涓昏鍐呭" prop="userName">
+              <el-form-item label="闂嵎鎻忚堪" prop="userName">
                 <el-input
                   v-model="queryParams.description"
                   placeholder="璇疯緭鍏�"
@@ -141,7 +141,7 @@
                   icon="el-icon-plus"
                   size="medium"
                   @click="handleAdd"
-                  v-hasPermi="['system:user:add']"
+
                   >鏂板</el-button
                 >
               </el-col>
@@ -154,7 +154,6 @@
                   size="medium"
                   :disabled="multiple"
                   @click="handleDelete"
-                  v-hasPermi="['system:user:remove']"
                   >鍒犻櫎</el-button
                 >
               </el-col>
@@ -182,16 +181,9 @@
                 width="160"
                 :show-overflow-tooltip="true"
               />
-              <el-table-column
-                label="鐗堟湰"
-                align="center"
-                key="version"
-                prop="version"
-                :show-overflow-tooltip="true"
-              />
 
               <el-table-column
-                label="涓昏鍐呭"
+                label="闂嵎鎻忚堪"
                 align="center"
                 key="description"
                 prop="description"
@@ -207,7 +199,6 @@
                     size="medium"
                     type="text"
                     @click="illnessUpdate(scope.row)"
-                    v-hasPermi="['system:user:edit']"
                     ><span class="button-textxg"
                       ><i class="el-icon-date"></i>璇︽儏</span
                     ></el-button
@@ -261,7 +252,6 @@
                     size="medium"
                     type="text"
                     @click="goQRCode(scope.row)"
-                    v-hasPermi="['system:user:edit']"
                   >
                     <span class="button-text"
                       ><i class="el-icon-edit"></i>棰勮</span
@@ -271,7 +261,6 @@
                     size="medium"
                     type="text"
                     @click="ViewQuestionnaire(scope.row)"
-                    v-hasPermi="['system:user:edit']"
                     ><span class="button-textck"
                       ><i class="el-icon-edit"></i>鏌ョ湅</span
                     ></el-button
@@ -280,7 +269,6 @@
                     size="medium"
                     type="text"
                     @click="handleUpdate(scope.row)"
-                    v-hasPermi="['system:user:edit']"
                     ><span class="button-textxg"
                       ><i class="el-icon-edit"></i>淇敼</span
                     ></el-button
@@ -289,7 +277,6 @@
                     size="medium"
                     type="text"
                     @click="handleDelete(scope.row)"
-                    v-hasPermi="['system:user:remove']"
                     ><span class="button-textsc"
                       ><i class="el-icon-edit"></i>鍒犻櫎</span
                     ></el-button
diff --git a/src/views/login.vue b/src/views/login.vue
index 8ace361..b442523 100644
--- a/src/views/login.vue
+++ b/src/views/login.vue
@@ -95,8 +95,8 @@
     return {
       codeUrl: "",
       loginForm: {
-        username: "admin",
-        password: "admin123",
+        username: "",
+        password: "",
         rememberMe: false,
         code: "",
         uuid: "",
diff --git a/src/views/outsideChainwt.vue b/src/views/outsideChainwt.vue
index 14aa4b4..6311a42 100644
--- a/src/views/outsideChainwt.vue
+++ b/src/views/outsideChainwt.vue
@@ -159,6 +159,7 @@
       taskid: 355,
       patid: 265823,
       kcb: "",
+      excep:'',
       questionList: [
         // {
         //   scriptType: 1,
@@ -347,6 +348,7 @@
       let form = {
         param1: this.taskid,
         param2: this.patid,
+        excep:this.excep,
         serviceSubtaskDetailList: [],
       };
       const arr = structuredClone(this.questionList);
@@ -376,6 +378,18 @@
         svyLibTemplateScriptVOS: [],
       };
       const arr = structuredClone(this.questionList);
+      console.log(arr,'srr')
+      arr.forEach((item, index) => {
+        var obj = item.svyLibTemplateTargetoptions.find(
+          (items) => items.optioncontent == item.scriptResult
+        );
+        if (obj.isabnormal) {
+          console.log(obj.isabnormal);
+          form.excep = 1;
+          this.excep=1;
+        }
+      });
+
       arr.forEach((item) => {
         if (item.scriptType == 2 && item.scriptResult[0]) {
           item.scriptResult = item.scriptResult.join("&");
@@ -482,10 +496,7 @@
     }
   }
 }
-.red-star {
-  position: relative;
-  padding-right: 15px;
-}
+
 .red-star {
   ::v-deep.el-radio__label {
     position: relative;
diff --git a/src/views/outsideChainxj.vue b/src/views/outsideChainxj.vue
index c8a7b9e..b73380c 100644
--- a/src/views/outsideChainxj.vue
+++ b/src/views/outsideChainxj.vue
@@ -1,16 +1,47 @@
 <template>
   <div class="questionnaire">
-    <div class="CONTENT">
+    <!-- <div class="CONTENT">
       <div class="title">鏂板崕鍖婚櫌鍖绘姢鐭ヨ瘑瀹f暀</div>
       <div class="preview-left">
-        <!-- 鍗曢�� -->
         <div v-html="richText"></div>
       </div>
-      <!-- <el-form :model="formData" label-width="80px">
-        <el-form-item>
-          <el-button type="primary" @click="submitForm">纭鏌ョ湅</el-button>
-        </el-form-item>
-      </el-form> -->
+
+    </div> -->
+    <div class="CONTENT" >
+      <div class="preview-left">
+        <div class="toptitle">
+          <div class="title">{{ taskname ? taskname : "鏂板崕鍖婚櫌鍖绘姢鐭ヨ瘑瀹f暀" }}</div>
+          <div style="font-size: 22px; margin-bottom: 20px; line-height: 1.5">
+            {{
+              kcb
+                ? kcb
+                : "浜茬埍鐨勬偅鑰�-瀹跺睘锛屾偍濂斤紒鎴戜滑鏄禉涓尰澶т簩闄㈢殑鍖绘姢浜哄憳锛屼负浜嗘洿濂藉湴浜嗚В鎮ㄧ殑搴峰鎯呭喌锛岃鎮ㄦ娊涓�鐐瑰疂璐垫椂闂达紝瑙傜湅杩欎唤瀹f暀璧勮銆�"
+            }}
+            <!-- 浜茬埍鐨勬偅鑰�/瀹跺睘鎮ㄥソ锛屼负浜嗘洿濂界殑浜嗚В鎮ㄥ嚭闄㈠悗鐨勫悍澶嶆儏鍐碉紝缁欐偍閫傚綋鍙婃椂鐨勫仴搴锋寚瀵硷紝璇锋偍鎶戒竴鐐瑰疂璐垫椂闂达紝瀹屾垚杩欎唤鍑洪櫌闅忚闂嵎璋冩煡銆� -->
+          </div>
+        </div>
+        <el-divider></el-divider>
+        <div v-html="richText"></div>
+        <div
+          style="
+            text-align: center;
+            padding-top: 50px;
+            font-size: 24px;
+            color: #175997;
+            font-weight: 600;
+            margin-bottom: 10px;
+          "
+        >
+          鎰熻阿鎮ㄧ殑闃呰!
+        </div>
+        <div style="font-size: 20px">
+          {{
+            jsy
+              ? jsy
+              : "鐢熸椿涓婅鍔抽�哥粨鍚堬紝娉ㄦ剰浼戞伅鍜岃惀鍏伙紝閫傚綋閿荤偧锛屾垝鐑熼檺閰掞紝淇濇寔蹇冩儏鑸掔晠锛屽畾鏈熷璇娿�傞偅鏈瀹f暀鍐呭灏卞埌杩欓噷锛岀鎮ㄨ韩浣撳仴搴凤紒"
+          }}
+        </div>
+      </div>
     </div>
   </div>
 </template>
@@ -42,6 +73,9 @@
       },
       richText: "<p>Hello, <strong>world</strong>!</p>",
       url:'',
+      taskname:'',
+      kcb:'',
+      jsy:'',
     };
   },
 
@@ -53,6 +87,7 @@
     getQuestionnaire() {
       this.taskid = this.$route.query.param1;
       this.patid = this.$route.query.param2;
+      this.taskname = this.$route.query.param3;
       // // let taskid =
       // //   "OFp7tn/B6x7IzKJetvGWHdSWBj7msRlnlj6am9dyuHTH6sEt4uBbVCUXs5kcF/e4O2W6vqHf2Bz9K3/evbYDmw==";
       // // let patid =
@@ -67,6 +102,8 @@
       getExternalfollowup({ param1: this.taskid, param2: this.patid }).then((res) => {
         if (res.code == 200) {
           this.url = res.data.script[0].richText;
+          this.jsy = res.data.jsy;
+          this.kcb = res.data.kcb;
           // 涓存椂鑾峰彇鏁版嵁
       axios
         .get(this.url)
@@ -137,13 +174,10 @@
 </script>
 
 <style lang="scss" scoped>
+
 .questionnaire {
-  // background-image: url("../assets/images/chainbackground.jpg");
-  // background-repeat: no-repeat;
-  // background-position: center center;
-  // background-size: cover;
-  // height: 100vh;
   background-image: url("../assets/images/chainbackground1.jpg");
+  background-color: #f9f9fb;
   background-size: cover;
   background-attachment: fixed; /* 淇濇寔鑳屾櫙鍥哄畾 */
   background-position: center;
@@ -152,8 +186,10 @@
   margin: 0;
   padding: 0;
   .CONTENT {
-    padding: 10px;
+    padding-top: 15px;
+    padding-bottom: 15px;
     .title {
+      color: #3769f3;
       font-size: 22px;
       font-weight: bold;
       margin-bottom: 20px;
@@ -162,9 +198,14 @@
   }
 }
 .preview-left {
-  margin: 20px;
+  margin: 10px;
+  margin-bottom: 60px;
+  background-color: #fff;
+  border-radius: 5px;
   //   margin: 20px;
-  padding: 30px;
+  padding: 10px;
+  padding-bottom: 100px;
+  height: 100%;
   // background: #ffff;
   border: 1px solid #dcdfe6;
   -webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12),
@@ -175,10 +216,6 @@
     .dev-text {
       margin-bottom: 10px;
     }
-  }
-  img {
-    width: 80vw !important;
-    height: 20vh !important;
   }
 }
 </style>
diff --git a/src/views/patient/follow/index.vue b/src/views/patient/follow/index.vue
index c7f2588..d59e1d8 100644
--- a/src/views/patient/follow/index.vue
+++ b/src/views/patient/follow/index.vue
@@ -36,47 +36,10 @@
               </el-option>
             </el-select>
           </el-form-item>
-          <el-form-item label="鏄惁浼氬憳" prop="tagId">
-            <el-select
-              v-model="queryParams.whether"
-              multiple
-              placeholder="璇烽�夋嫨"
-            >
-              <el-option
-                v-for="item in whether"
-                :key="item.id"
-                :label="item.name"
-                :value="item.id"
-              >
-              </el-option>
-            </el-select>
-          </el-form-item>
-          <el-form-item label="杩囨护鏃堕棿" prop="tagId">
-            <el-date-picker
-              v-model="queryParams.value1"
-              type="daterange"
-              range-separator="鑷�"
-              start-placeholder="寮�濮嬫棩鏈�"
-              end-placeholder="缁撴潫鏃ユ湡"
-            >
-            </el-date-picker>
-          </el-form-item>
+
+
           <el-row>
-            <el-form-item label="杩囨护绫诲瀷" prop="tagId">
-              <el-select
-                v-model="queryParams.tagIds"
-                multiple
-                placeholder="璇烽�夋嫨"
-              >
-                <el-option
-                  v-for="item in Filterreason"
-                  :key="item.value"
-                  :label="item.label"
-                  :value="item.value"
-                >
-                </el-option>
-              </el-select>
-            </el-form-item>
+
             <el-form-item>
               <el-button
                 type="primary"
@@ -95,81 +58,96 @@
           </el-row>
         </el-form>
 
-        <el-row :gutter="10" class="mb8">
-          <el-col :span="1.5">
-            <el-button
-              type="primary"
-              plain
-              icon="el-icon-plus"
-              size="medium"
-              @click="handleAdd"
-              v-hasPermi="['system:user:add']"
-              >鏂板</el-button
-            >
-          </el-col>
 
-          <el-col :span="1.5">
-            <el-button
-              type="danger"
-              plain
-              icon="el-icon-delete"
-              size="medium"
-              :disabled="multiple"
-              @click="handleDelete"
-              v-hasPermi="['system:user:remove']"
-              >鍒犻櫎</el-button
-            >
-          </el-col>
-          <!-- <el-col :span="1.5"> </el-col> -->
-        </el-row>
         <el-table
           v-loading="loading"
           :data="userList"
           @selection-change="handleSelectionChange"
         >
           <el-table-column type="selection" width="50" align="center" />
-          <el-table-column
+          <!-- <el-table-column
             label="搴忓彿"
             align="center"
             key="id"
             prop="id"
+          /> -->
+          <el-table-column
+            fixed
+            label="濮撳悕"
+            align="center"
+            key="name"
+            prop="name"
           />
-          <el-table-column label="濮撳悕锛堢己锛�" align="center" key="name" prop="name" />
           <el-table-column label="鎬у埆" align="center" key="sex" prop="sex">
             <template slot-scope="scope">
               <span>{{ scope.row.sex == 1 ? "鐢�" : "濂�" }}</span>
             </template>
           </el-table-column>
-
-
           <el-table-column
-            label="瀹℃牳浜�"
+            label="骞撮緞"
             align="center"
-            key="checkBy"
-            prop="checkBy"
-            width="120"
+            key="age"
+            prop="age"
+            width="60"
           />
           <el-table-column
-            label="瀹℃牳鐘舵��"
+            label="鍑虹敓骞存湀"
             align="center"
-            key="checkFlag"
-            prop="checkFlag"
-            width="120"
-          />
+            key="birthdate"
+            prop="birthdate"
+            width="160"
+          >
+          </el-table-column>
 
-          <el-table-column
+          <!-- <el-table-column
             label="杩囨护绫诲瀷"
             align="center"
-            key="filterdesc"
-            prop="filterdesc"
+            key="notrequiredreason"
+            prop="notrequiredreason"
             width="120"
-          /><el-table-column
-            label="杩囨护鐢宠璇存槑"
+          >
+            <template slot-scope="scope">
+              <dict-tag
+                :options="dict.type.futter_patient"
+                :value="scope.row.notrequiredreason"
+              />
+            </template>
+          </el-table-column> -->
+          <el-table-column
+            label="杩囨护鍘熷洜"
             align="center"
-            key="filternotes"
-            prop="filternotes"
+            key="notrequiredreason"
+            prop="notrequiredreason"
             width="190"
           />
+          <el-table-column
+            label="灞呬綇鍦�"
+            align="center"
+            key="placeOfResidence"
+            prop="placeOfResidence"
+            width="180"
+            :show-overflow-tooltip="true"
+          />
+          <el-table-column
+            label="鎮h�呮爣绛�"
+            align="center"
+            key="tagList"
+            prop="tagList"
+            width="160"
+            :show-overflow-tooltip="true"
+          >
+            <template slot-scope="scope">
+              <span v-for="item in scope.row.tagList">{{ item.tagname }} </span>
+            </template>
+          </el-table-column>
+          <el-table-column
+            label="璇佷欢鍙风爜"
+            align="center"
+            key="idcardno"
+            prop="idcardno"
+            width="190"
+          />
+
           <el-table-column
             label="鑱旂郴鏂瑰紡"
             align="center"
@@ -178,34 +156,17 @@
             width="120"
           />
           <el-table-column
-            label="瀹跺涵浣忓潃"
+            label="寤烘。鏃ユ湡"
             align="center"
-            key="idcardno"
-            prop="idcardno"
-            width="190"
-          />
-          <el-table-column
-            label="鐢宠鏃ユ湡"
-            align="center"
-            key="applyTime"
-            prop="applyTime"
+            key="createTime"
+            prop="createTime"
             width="160"
           >
             <template slot-scope="scope">
-              <span>{{ formatTime(scope.row.applyTime) }}</span>
+              <span>{{ formatTime(scope.row.createTime) }}</span>
             </template>
           </el-table-column>
-          <el-table-column
-            label="瀹℃牳鏃ユ湡"
-            align="center"
-            key="checkTime"
-            prop="checkTime"
-            width="160"
-          >
-            <template slot-scope="scope">
-              <span>{{ formatTime(scope.row.checkTime) }}</span>
-            </template>
-          </el-table-column>
+
           <el-table-column
             label="鎿嶄綔"
             align="center"
@@ -251,124 +212,7 @@
       </el-col>
     </el-row>
 
-    <!-- 娣诲姞鎴栦慨鏀圭敤鎴烽厤缃璇濇 -->
-    <el-dialog
-      :title="amendtag ? '淇敼鎮h�呬俊鎭�' : '鏂板鎮h��'"
-      :visible.sync="Labelchange"
-      width="900px"
-    >
-      <el-form ref="form" :model="form" :rules="rules" label-width="100px">
-        <el-row>
-          <el-col :span="12">
-            <el-form-item label="濮撳悕" prop="name">
-              <el-input
-                v-model="form.name"
-                placeholder="璇疯緭鍏ュ鍚�"
-                maxlength="30"
-              />
-            </el-form-item>
-          </el-col>
-          <el-col :span="12">
-            <el-form-item label="鎬у埆" prop="sex">
-              <el-select v-model="form.sex" placeholder="璇烽�夋嫨鎬у埆">
-                <el-option
-                  v-for="dict in dict.type.sys_user_sex"
-                  :key="dict.value"
-                  :label="dict.label"
-                  :value="dict.value"
-                ></el-option>
-              </el-select>
-            </el-form-item>
-          </el-col>
-        </el-row>
-        <el-row>
-          <el-col :span="12">
-            <el-form-item label="璇佷欢绫诲瀷" prop="idcardtype">
-              <el-select v-model="form.idcardtype" placeholder="璇烽�夋嫨鎬у埆">
-                <el-option
-                  v-for="item in paperstypes"
-                  :key="item.papersname"
-                  :label="item.papersname"
-                  :value="item.papersname"
-                ></el-option>
-              </el-select>
-            </el-form-item>
-          </el-col>
-          <el-col :span="12">
-            <el-form-item label="璇佷欢鍙�" prop="idcardno">
-              <el-input
-                v-model="form.idcardno"
-                placeholder="璇疯緭鍏ヨ瘉浠跺彿"
-                maxlength="50"
-              />
-            </el-form-item>
-          </el-col>
-        </el-row>
-        <el-row>
-          <el-col :span="12">
-            <el-form-item label="鏈汉鎵嬫満鍙�" prop="telcode">
-              <el-input
-                v-model="form.telcode"
-                placeholder="璇疯緭鍏ユ墜鏈哄彿"
-                maxlength="30"
-              />
-            </el-form-item>
-          </el-col>
-          <el-col :span="12">
-            <el-form-item label="浜插睘鎵嬫満鍙�" prop="relativetelcode">
-              <el-input
-                v-model="form.relativetelcode"
-                placeholder="璇疯緭鍏ヤ翰灞炴墜鏈哄彿"
-                type="password"
-                maxlength="20"
-                show-password
-              />
-            </el-form-item>
-          </el-col>
-        </el-row>
-        <el-row>
-          <el-col :span="12">
-            <el-form-item label="骞撮緞" prop="age">
-              <el-input
-                v-model="form.age"
-                placeholder="璇疯緭鍏ュ勾榫�"
-                maxlength="30"
-              />
-            </el-form-item>
-          </el-col>
-          <el-col :span="12">
-            <el-form-item label="鎮h�呮爣绛�">
-              <!-- <el-select v-model="form.sex" placeholder="璇烽�夋嫨"> -->
-              <el-select v-model="form.tagList" multiple placeholder="璇烽�夋嫨">
-                <el-option
-                  v-for="item in optionstag"
-                  :key="item.tagid"
-                  :label="item.tagname"
-                  :value="item.tagid"
-                >
-                </el-option>
-              </el-select>
-              <!-- </el-select> -->
-            </el-form-item>
-          </el-col>
-        </el-row>
-        <el-row>
-          <el-col :span="24">
-            <el-form-item label="澶囨敞">
-              <el-input
-                v-model="form.remark"
-                type="textarea"
-                placeholder="璇疯緭鍏ュ唴瀹�"
-              ></el-input>
-            </el-form-item>
-          </el-col>
-        </el-row>
-      </el-form>
-      <div slot="footer" class="dialog-footer">
-        <el-button type="primary" @click="submitForm">纭� 瀹�</el-button>
-        <el-button @click="cancel">鍙� 娑�</el-button>
-      </div>
-    </el-dialog>
+
   </div>
 </template>
 
@@ -376,8 +220,8 @@
 import { delUser } from "@/api/system/user";
 
 import {
-  listfiltration,
-  editfiltration,
+  messagelistpatient,
+  alterpatient,
   addfiltration,
   particularpatient,
   delfiltration,
@@ -392,7 +236,7 @@
 
 export default {
   name: "Userhuanze",
-  dicts: ["sys_normal_disable", "sys_user_sex"],
+  dicts: ["sys_normal_disable", "sys_user_sex", "futter_patient"],
   components: { Treeselect },
   data() {
     return {
@@ -450,10 +294,10 @@
       propss: { multiple: true },
       optionstag: [], //鏍囩鍒楄〃
       Patientrange: [
-        {
-          name: "闂ㄨ瘖",
-          id: 1,
-        },
+        // {
+        //   name: "闂ㄨ瘖",
+        //   id: 1,
+        // },
         {
           name: "浣忛櫌",
           id: 2,
@@ -497,6 +341,8 @@
       queryParams: {
         pageNum: 1,
         pageSize: 10,
+        allhosp: "1",
+        notrequiredFlag: 1,
         idcardno: undefined,
         name: undefined,
         status: undefined,
@@ -522,7 +368,7 @@
     /** 鏌ヨ鎮h�呭垪琛� */
     getList() {
       this.loading = true;
-      listfiltration(this.queryParams).then((response) => {
+      messagelistpatient(this.queryParams).then((response) => {
         console.log(response);
         this.userList = response.rows;
         this.total = response.total;
@@ -609,11 +455,10 @@
       this.amendtag = false;
     },
 
-
     //淇敼/鏂板鎮h��
     submitForm() {
       if (this.amendtag) {
-        editfiltration(this.form)
+        alterpatient(this.form)
           .then((response) => {
             console.log(response);
           })
@@ -640,14 +485,19 @@
     handleDelete(row) {
       const userIds = row.id || this.ids;
       this.$modal
-        .confirm('鏄惁纭鍒犻櫎鐢ㄦ埛缂栧彿涓�"' + userIds + '"鐨勬暟鎹」锛�')
-        .then(function () {
-          return delfiltration(userIds);
+        .confirm('鏄惁纭鍙栨秷鐢ㄦ埛缂栧彿涓�"' + userIds + '"鐨勬暟鎹」杩囨护锛�')
+        .then( ()=> {
+          row.notrequiredFlag=0
+          alterpatient(row)
+          .then((response) => {
+            console.log(response);
+          })
+          .then(() => {
+            this.getList();
+            this.$modal.msgSuccess("淇敼鎴愬姛");
+          });
         })
-        .then(() => {
-          this.getList();
-          this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
-        })
+
         .catch(() => {});
     },
     /** 瀵煎嚭鎸夐挳鎿嶄綔 */
diff --git a/src/views/patient/patient/behospitalized.vue b/src/views/patient/patient/behospitalized.vue
index 6a2047e..7d2a37f 100644
--- a/src/views/patient/patient/behospitalized.vue
+++ b/src/views/patient/patient/behospitalized.vue
@@ -16,51 +16,42 @@
               v-model="queryParams.patname"
               placeholder="璇疯緭鍏ュ鍚�"
               clearable
-              style="width: 200px"
               @keyup.enter.native="handleQuery"
             />
           </el-form-item>
-          <el-form-item label="鎮h�呯紪鍙�" prop="patid">
+          <el-form-item label="鎮h�呬綇闄㈠彿" prop="patid">
             <el-input
               v-model="queryParams.patid"
               placeholder="璇疯緭鍏ユ偅鑰呯紪鍙�"
               clearable
-              style="width: 250px"
               @keyup.enter.native="handleQuery"
             />
           </el-form-item>
 
-          <el-form-item label="鎶ょ悊绛夌骇" prop="tagId">
-            <el-select v-model="queryParams.Patientid" placeholder="璇烽�夋嫨">
-              <el-option
-                v-for="dict in dict.type.nursinggrade"
-                :key="dict.value"
-                :label="dict.label"
-                :value="dict.value"
+          <el-form-item label="鎮h�呮潵婧�" prop="tagId">
+            <el-select
+                v-model="queryParams.searchscope"
+                placeholder="璇烽�夋嫨鎮h�呮潵婧�"
               >
-              </el-option>
-            </el-select>
+                <el-option
+                  v-for="item in source"
+                  :key="item.value"
+                  :label="item.label"
+                  :value="item.value"
+                >
+                </el-option>
+              </el-select>
           </el-form-item>
-          <el-form-item label="鎮h�呰寖鍥�" prop="tagId">
-            <el-select v-model="queryParams.Patientid" placeholder="璇烽�夋嫨">
-              <el-option
-                v-for="item in Patientrange"
-                :key="item.id"
-                :label="item.name"
-                :value="item.id"
-              >
-              </el-option>
-            </el-select>
-          </el-form-item>
-          <el-form-item label=" 鍏ラ櫌鏃ユ湡 " prop="createTime">
+          <el-form-item label=" 鍏ラ櫌鏃ユ湡鑼冨洿 " prop="createTime">
             <el-date-picker
-              clearable
-              v-model="queryParams.createTime"
-              type="date"
-              value-format="yyyy-MM-dd"
-              placeholder="璇烽�夋嫨 灏辫瘖鏃ユ湡 "
-            >
-            </el-date-picker>
+            v-model="dateRange"
+            style="width: 240px"
+            value-format="yyyy-MM-dd"
+            type="daterange"
+            range-separator="-"
+            start-placeholder="寮�濮嬫棩鏈�"
+            end-placeholder="缁撴潫鏃ユ湡"
+          ></el-date-picker>
           </el-form-item>
 
           <el-row>
@@ -118,32 +109,7 @@
               >鍒犻櫎</el-button
             >
           </el-col>
-          <el-col :span="19">
-            <div class="documentf">
-              <div class="document">
-                <el-button
-                  type="info"
-                  plain
-                  icon="el-icon-upload2"
-                  size="medium"
-                  @click="handleImport"
-                  v-hasPermi="['system:user:import']"
-                  >瀵煎叆</el-button
-                >
-              </div>
-              <div class="document">
-                <el-button
-                  type="warning"
-                  plain
-                  icon="el-icon-download"
-                  size="medium"
-                  @click="handleExport"
-                  v-hasPermi="['system:user:export']"
-                  >瀵煎嚭</el-button
-                >
-              </div>
-            </div>
-          </el-col>
+
           <!-- <el-col :span="1.5"> </el-col> -->
         </el-row>
         <el-table
@@ -160,22 +126,23 @@
             prop="id"
           /> -->
           <el-table-column
-            label="鍏ラ櫌鏃堕棿"
+            label="鍏ラ櫌鏃ユ湡"
             align="center"
-            key="createTime"
-            prop="createTime"
+            key="starttime"
+            prop="starttime"
             width="160"
           >
             <template slot-scope="scope">
-              <span>{{ formatTime(scope.row.createTime) }}</span>
+              <span>{{ formatTime(scope.row.starttime) }}</span>
             </template>
           </el-table-column>
 
           <el-table-column
             label="浣忛櫌鍙�"
             align="center"
-            key="patid"
-            prop="patid"
+            key="patno"
+            prop="patno"
+          width="120"
           />
           <el-table-column
             label="濮撳悕"
@@ -214,10 +181,17 @@
 
 
           <el-table-column
-            label="鐥呭尯"
+            label="绉戝"
             align="center"
             key="deptname"
             prop="deptname"
+            width="120"
+          />
+          <el-table-column
+            label="鐥呭尯"
+            align="center"
+            key="leavehospitaldistrictname"
+            prop="leavehospitaldistrictname"
             width="120"
           />
           <el-table-column
@@ -237,8 +211,8 @@
           <el-table-column
             label="璐d换鎶ゅ+"
             align="center"
-            key="Sister"
-            prop="Sister"
+            key="nurseName"
+            prop="nurseName"
             width="120"
           />
 
@@ -259,7 +233,6 @@
                     query: { id: scope.row.patid },
                   })
                 "
-                v-hasPermi="['system:user:edit']"
                 ><span class="button-textsc"
                   ><i class="el-icon-zoom-in"></i>鏌ョ湅</span
                 ></el-button
@@ -386,6 +359,7 @@
 import Treeselect from "@riophae/vue-treeselect";
 import { listDept } from "@/api/system/dept";
 import "@riophae/vue-treeselect/dist/vue-treeselect.css";
+import store from "@/store";
 
 export default {
   name: "behospitalized",
@@ -425,6 +399,20 @@
         { papersname: "鎶ょ収" },
         { papersname: "涓浗娓境灞呮皯韬唤璇�" },
         { papersname: "涓浗鍙版咕灞呮皯韬唤璇�" },
+      ],
+      source: [
+        {
+          value: 0,
+          label: "鎵�灞炴偅鑰�",
+        },
+        {
+          value: 1,
+          label: "绉戝鎮h��",
+        },
+        {
+          value: 2,
+          label: "鐥呭尯鎮h��",
+        },
       ],
       // 琛ㄥ崟鍙傛暟
       form: {
@@ -479,6 +467,7 @@
       queryParams: {
         pageNum: 1,
         pageSize: 10,
+        cry: 0,
         idcardno: undefined,
         name: undefined,
         status: undefined,
@@ -540,6 +529,7 @@
     },
   },
   created() {
+
     this.getList();
     this.listDept();
     this.gettabList();
@@ -548,6 +538,22 @@
     /** 鏌ヨ鎮h�呭垪琛� */
     getList() {
       this.loading = true;
+      if (this.queryParams.searchscope == 1) {
+        this.queryParams.leaveldeptcodes = store.getters.belongDepts.map(
+          (obj) => obj.deptCode
+        );
+        this.queryParams.leavehospitaldistrictcodes=null;
+      } else if (this.queryParams.searchscope == 2) {
+        this.queryParams.leavehospitaldistrictcodes =
+          store.getters.belongWards.map((obj) => obj.districtCode);
+          this.queryParams.leaveldeptcodes=null;
+      } else {
+        this.queryParams.leaveldeptcodes = store.getters.belongDepts.map(
+          (obj) => obj.deptCode
+        );
+        this.queryParams.leavehospitaldistrictcodes =
+          store.getters.belongWards.map((obj) => obj.districtCode);
+      }
       listpatient(this.queryParams).then((response) => {
         console.log(response);
         this.userList = response.rows;
diff --git a/src/views/patient/patient/hospital.vue b/src/views/patient/patient/hospital.vue
index 054c244..d8360e7 100644
--- a/src/views/patient/patient/hospital.vue
+++ b/src/views/patient/patient/hospital.vue
@@ -41,26 +41,30 @@
               </el-option>
             </el-select>
           </el-form-item>
-          <el-form-item label="鎮h�呰寖鍥�" prop="tagId">
-            <el-select v-model="queryParams.Patientid" placeholder="璇烽�夋嫨">
-              <el-option
-                v-for="item in Patientrange"
-                :key="item.id"
-                :label="item.name"
-                :value="item.id"
+          <el-form-item label="鎮h�呮潵婧�" prop="tagId">
+            <el-select
+                v-model="queryParams.searchscope"
+                placeholder="璇烽�夋嫨鎮h�呮潵婧�"
               >
-              </el-option>
-            </el-select>
+                <el-option
+                  v-for="item in source"
+                  :key="item.value"
+                  :label="item.label"
+                  :value="item.value"
+                >
+                </el-option>
+              </el-select>
           </el-form-item>
           <el-form-item label=" 鍏ラ櫌鏃ユ湡 " prop="createTime">
             <el-date-picker
-              clearable
-              v-model="queryParams.createTime"
-              type="date"
-              value-format="yyyy-MM-dd"
-              placeholder="璇烽�夋嫨 灏辫瘖鏃ユ湡 "
-            >
-            </el-date-picker>
+            v-model="dateRange"
+            style="width: 240px"
+            value-format="yyyy-MM-dd"
+            type="daterange"
+            range-separator="-"
+            start-placeholder="寮�濮嬫棩鏈�"
+            end-placeholder="缁撴潫鏃ユ湡"
+          ></el-date-picker>
           </el-form-item>
 
           <el-row>
@@ -118,32 +122,7 @@
               >鍒犻櫎</el-button
             >
           </el-col>
-          <el-col :span="19">
-            <div class="documentf">
-              <div class="document">
-                <el-button
-                  type="info"
-                  plain
-                  icon="el-icon-upload2"
-                  size="medium"
-                  @click="handleImport"
-                  v-hasPermi="['system:user:import']"
-                  >瀵煎叆</el-button
-                >
-              </div>
-              <div class="document">
-                <el-button
-                  type="warning"
-                  plain
-                  icon="el-icon-download"
-                  size="medium"
-                  @click="handleExport"
-                  v-hasPermi="['system:user:export']"
-                  >瀵煎嚭</el-button
-                >
-              </div>
-            </div>
-          </el-col>
+
           <!-- <el-col :span="1.5"> </el-col> -->
         </el-row>
         <el-table
@@ -174,8 +153,9 @@
           <el-table-column
             label="浣忛櫌鍙�"
             align="center"
-            key="patid"
-            prop="patid"
+            key="patno"
+            prop="patno"
+          width="120"
           />
           <el-table-column
             label="濮撳悕"
@@ -225,10 +205,17 @@
             width="120"
           /> -->
           <el-table-column
-            label="鐥呭尯"
+            label="绉戝"
             align="center"
             key="deptname"
             prop="deptname"
+            width="120"
+          />
+          <el-table-column
+            label="鐥呭尯"
+            align="center"
+            key="leavehospitaldistrictname"
+            prop="leavehospitaldistrictname"
             width="120"
           />
           <el-table-column
@@ -248,8 +235,8 @@
           <el-table-column
             label="璐d换鎶ゅ+"
             align="center"
-            key="Sister"
-            prop="Sister"
+            key="nurseName"
+            prop="nurseName"
             width="120"
           />
 
@@ -270,7 +257,7 @@
                     query: { id: scope.row.patid },
                   })
                 "
-                v-hasPermi="['system:user:edit']"
+
                 ><span class="button-textsc"
                   ><i class="el-icon-zoom-in"></i>鏌ョ湅</span
                 ></el-button
@@ -396,6 +383,7 @@
 import Treeselect from "@riophae/vue-treeselect";
 import { listDept } from "@/api/system/dept";
 import "@riophae/vue-treeselect/dist/vue-treeselect.css";
+import store from "@/store";
 
 export default {
   name: "behospitalized",
@@ -430,6 +418,20 @@
       amendtag: false, //鏄惁淇敼
       // 鏃ユ湡鑼冨洿
       dateRange: [],
+      source: [
+        {
+          value: 0,
+          label: "鎵�灞炴偅鑰�",
+        },
+        {
+          value: 1,
+          label: "绉戝鎮h��",
+        },
+        {
+          value: 2,
+          label: "鐥呭尯鎮h��",
+        },
+      ],
       paperstypes: [
         { papersname: "韬唤璇�" },
         { papersname: "鎶ょ収" },
@@ -489,6 +491,7 @@
       queryParams: {
         pageNum: 1,
         pageSize: 10,
+        cry: 1,
         idcardno: undefined,
         name: undefined,
         status: undefined,
@@ -497,49 +500,7 @@
       },
       // 琛ㄥ崟鏍¢獙
       rules: {
-        // userName: [
-        //   { required: true, message: "鐢ㄦ埛鍚嶇О涓嶈兘涓虹┖", trigger: "blur" },
-        //   {
-        //     min: 2,
-        //     max: 20,
-        //     message: "鐢ㄦ埛鍚嶇О闀垮害蹇呴』浠嬩簬 2 鍜� 20 涔嬮棿",
-        //     trigger: "blur",
-        //   },
-        // ],
-        // nickName: [
-        //   { required: true, message: "鐢ㄦ埛鏄电О涓嶈兘涓虹┖", trigger: "blur" },
-        // ],
-        // password: [
-        //   { required: true, message: "鐢ㄦ埛瀵嗙爜涓嶈兘涓虹┖", trigger: "blur" },
-        //   {
-        //     min: 5,
-        //     max: 20,
-        //     message: "鐢ㄦ埛瀵嗙爜闀垮害蹇呴』浠嬩簬 5 鍜� 20 涔嬮棿",
-        //     trigger: "blur",
-        //   },
-        // ],
-        // email: [
-        //   {
-        //     type: "email",
-        //     message: "璇疯緭鍏ユ纭殑閭鍦板潃",
-        //     trigger: ["blur", "change"],
-        //   },
-        // ],
-        // phonenumber: [
-        //   {
-        //     pattern: /^1[3|4|5|6|7|8|9][0-9]\d{8}$/,
-        //     message: "璇疯緭鍏ユ纭殑鎵嬫満鍙风爜",
-        //     trigger: "blur",
-        //   },
-        // ],
-        // IDnumber: [
-        //   {
-        //     pattern:
-        //       /^\d{6}((((((19|20)\d{2})(0[13-9]|1[012])(0[1-9]|[12]\d|30))|(((19|20)\d{2})(0[13578]|1[02])31)|((19|20)\d{2})02(0[1-9]|1\d|2[0-8])|((((19|20)([13579][26]|[2468][048]|0[48]))|(2000))0229))\d{3})|((((\d{2})(0[13-9]|1[012])(0[1-9]|[12]\d|30))|((\d{2})(0[13578]|1[02])31)|((\d{2})02(0[1-9]|1\d|2[0-8]))|(([13579][26]|[2468][048]|0[048])0229))\d{2}))(\d|X|x)$/,
-        //     message: "璇疯緭鍏ユ纭殑韬唤璇佸彿鐮�",
-        //     trigger: "blur",
-        //   },
-        // ],
+
       },
     };
   },
@@ -550,6 +511,7 @@
     },
   },
   created() {
+
     this.getList();
     this.listDept();
     this.gettabList();
@@ -557,6 +519,22 @@
   methods: {
     /** 鏌ヨ鎮h�呭垪琛� */
     getList() {
+      if (this.queryParams.searchscope == 1) {
+        this.queryParams.leaveldeptcodes = store.getters.belongDepts.map(
+          (obj) => obj.deptCode
+        );
+        this.queryParams.leavehospitaldistrictcodes=null;
+      } else if (this.queryParams.searchscope == 2) {
+        this.queryParams.leavehospitaldistrictcodes =
+          store.getters.belongWards.map((obj) => obj.districtCode);
+          this.queryParams.leaveldeptcodes=null;
+      } else {
+        this.queryParams.leaveldeptcodes = store.getters.belongDepts.map(
+          (obj) => obj.deptCode
+        );
+        this.queryParams.leavehospitaldistrictcodes =
+          store.getters.belongWards.map((obj) => obj.districtCode);
+      }
       this.loading = true;
       listpatient(this.queryParams).then((response) => {
         console.log(response);
diff --git a/src/views/patient/patient/index.vue b/src/views/patient/patient/index.vue
index 69a6d28..2e9b795 100644
--- a/src/views/patient/patient/index.vue
+++ b/src/views/patient/patient/index.vue
@@ -12,8 +12,8 @@
           v-model="queryParams.allhosp"
           @tab-click="handleClick"
         >
-          <el-tab-pane label="鎮h�呭垪琛�" name="0"></el-tab-pane>
-          <el-tab-pane label="浣忛櫌鎮h��" name="1"></el-tab-pane>
+          <!-- <el-tab-pane label="鎮h�呭垪琛�" name="0"></el-tab-pane> -->
+          <el-tab-pane label="鍑哄叆闄㈡偅鑰�" name="1"></el-tab-pane>
           <el-tab-pane label="闂ㄨ瘖鎮h��" name="2"></el-tab-pane>
           <el-tab-pane label="浣撴鎮h��" name="3"></el-tab-pane>
         </el-tabs>
@@ -101,7 +101,7 @@
                   @keyup.enter.native="handleQuery"
                 />
               </el-form-item>
-              <el-form-item label="濮撳悕" prop="name">
+              <el-form-item label="鎮h�呭鍚�" prop="name">
                 <el-input
                   v-model="queryParams.name"
                   placeholder="璇疯緭鍏ュ鍚�"
@@ -109,6 +109,20 @@
                   @keyup.enter.native="handleQuery"
                 />
               </el-form-item>
+              <el-form-item label="鎮h�呮潵婧�" prop="tagId">
+            <el-select
+                v-model="queryParams.searchscope"
+                placeholder="璇烽�夋嫨鎮h�呮潵婧�"
+              >
+                <el-option
+                  v-for="item in source"
+                  :key="item.value"
+                  :label="item.label"
+                  :value="item.value"
+                >
+                </el-option>
+              </el-select>
+          </el-form-item>
               <el-form-item label="鑱旂郴鐢佃瘽" prop="telcode">
                 <el-input
                   v-model="queryParams.telcode"
@@ -147,18 +161,7 @@
                   >鏂板</el-button
                 >
               </el-col>
-              <el-col :span="1.5">
-                <el-button
-                  type="success"
-                  plain
-                  icon="el-icon-edit"
-                  size="medium"
-                  :disabled="single"
-                  @click="handleUpdate"
-                  v-hasPermi="['system:user:edit']"
-                  >淇敼</el-button
-                >
-              </el-col>
+
               <el-col :span="1.5">
                 <el-button
                   type="danger"
@@ -215,13 +218,13 @@
               @selection-change="handleSelectionChange"
             >
               <el-table-column type="selection" width="50" align="center" />
-              <el-table-column
+              <!-- <el-table-column
                 fixed
                 label="搴忓彿"
                 align="center"
                 key="id"
                 prop="id"
-              />
+              /> -->
               <el-table-column
                 fixed
                 label="濮撳悕"
@@ -239,14 +242,14 @@
                 align="center"
                 key="age"
                 prop="age"
-                width="120"
+                width="60"
               />
               <el-table-column
                 label="鍑虹敓骞存湀"
                 align="center"
                 key="birthdate"
                 prop="birthdate"
-                width="160"
+                width="120"
               >
               </el-table-column>
               <el-table-column
@@ -254,7 +257,8 @@
                 align="center"
                 key="placeOfResidence"
                 prop="placeOfResidence"
-                width="120"
+                width="150"
+                :show-overflow-tooltip="true"
               />
               <el-table-column
                 label="鎮h�呮爣绛�"
@@ -270,13 +274,7 @@
                   </span>
                 </template>
               </el-table-column>
-              <el-table-column
-                label="璇佷欢绫诲瀷"
-                align="center"
-                key="idcardtype"
-                prop="idcardtype"
-                width="120"
-              /><el-table-column
+             <el-table-column
                 label="璇佷欢鍙风爜"
                 align="center"
                 key="idcardno"
@@ -329,25 +327,22 @@
                         query: { id: scope.row.id },
                       })
                     "
-                    v-hasPermi="['system:user:edit']"
                     ><span class="button-textsc"
                       ><i class="el-icon-zoom-in"></i>璇︽儏缂栬緫</span
                     ></el-button
                   >
-                  <!-- <el-button
+                  <el-button
                     size="medium"
                     type="text"
                     @click="handleUpdate(scope.row)"
-                    v-hasPermi="['system:user:edit']"
                     ><span class="button-textxga"
-                      ><i class="el-icon-edit"></i>淇敼</span
+                      ><i class="el-icon-edit"></i>鎮h�呰繃婊�</span
                     ></el-button
-                  > -->
+                  >
                   <el-button
                     size="medium"
                     type="text"
                     @click="Distributionservice(scope.row)"
-                    v-hasPermi="['system:user:edit']"
                     ><span class="button-textxg"
                       ><i class="el-icon-menu"></i>鏈嶅姟</span
                     ></el-button
@@ -510,7 +505,7 @@
             <el-form-item label="鎬у埆" prop="sex">
               <el-select v-model="form.sex" placeholder="璇烽�夋嫨鎬у埆">
                 <el-option
-                  v-for="dict in dict.type.sys_user_sex"
+                  v-for="dict in sextype"
                   :key="dict.value"
                   :label="dict.label"
                   :value="dict.value"
@@ -528,7 +523,7 @@
             </el-form-item>
           </el-col>
         </el-row>
-        <el-row>
+        <el-row  v-if="!amendtag">
           <el-col :span="8">
             <el-form-item label="姘戞棌" prop="name">
               <el-input
@@ -557,30 +552,8 @@
             </el-form-item>
           </el-col>
         </el-row>
-        <el-row>
-          <el-col :span="12">
-            <el-form-item label="璇佷欢绫诲瀷" prop="idcardtype">
-              <el-select v-model="form.idcardtype" placeholder="璇烽�夋嫨鎬у埆">
-                <el-option
-                  v-for="item in paperstypes"
-                  :key="item.papersname"
-                  :label="item.papersname"
-                  :value="item.papersname"
-                ></el-option>
-              </el-select>
-            </el-form-item>
-          </el-col>
-          <el-col :span="12">
-            <el-form-item label="璇佷欢鍙�" prop="idcardno">
-              <el-input
-                v-model="form.idcardno"
-                placeholder="璇疯緭鍏ヨ瘉浠跺彿"
-                maxlength="50"
-              />
-            </el-form-item>
-          </el-col>
-        </el-row>
-        <el-row>
+
+        <el-row v-if="!amendtag">
           <el-col :span="12">
             <el-form-item label="鍑虹敓鍦�" prop="idcardno">
               <el-input
@@ -599,8 +572,9 @@
             </el-form-item>
           </el-col>
         </el-row>
+
         <el-row>
-          <el-col :span="24">
+          <el-col :span="amendtag?12:24"v-if="!amendtag" >
             <el-form-item label="鎮h�呯被鍨�">
               <el-select v-model="form.pattype" placeholder="璇烽�夋嫨绫诲瀷">
                 <el-option
@@ -612,9 +586,32 @@
               </el-select>
             </el-form-item>
           </el-col>
+          <!-- <el-col :span="12" v-if="amendtag">
+            <el-form-item label="杩囨护璇存槑">
+              <el-select v-model="form.notrequiredreason" placeholder="璇烽�夋嫨杩囨护绫诲瀷">
+                <el-option
+                  v-for="item in dict.type.futter_patient"
+                  :key="item.value"
+                  :label="item.label"
+                  :value="item.value"
+                ></el-option>
+              </el-select>
+            </el-form-item>
+          </el-col> -->
         </el-row>
         <el-row>
-          <el-col :span="24">
+          <el-col :span="24" v-if="amendtag">
+            <el-form-item label="杩囨护鍘熷洜">
+              <el-input
+                v-model="form.notrequiredreason"
+                type="textarea"
+                placeholder="璇疯緭鍏ヨ繃婊ゅ師鍥�"
+              ></el-input>
+            </el-form-item>
+          </el-col>
+        </el-row>
+        <el-row>
+          <el-col :span="24" v-if="!amendtag">
             <el-form-item label="澶囨敞">
               <el-input
                 v-model="form.remark"
@@ -691,8 +688,7 @@
           <el-table-column prop="serial" label="搴忓彿"> </el-table-column>
           <el-table-column prop="name" label="濮撳悕"> </el-table-column>
           <el-table-column prop="sex" label="鎬у埆"> </el-table-column>
-          <el-table-column prop="certificate" label="璇佷欢绫诲瀷">
-          </el-table-column>
+
           <el-table-column prop="certificatenum" label="璇佷欢鍙风爜">
           </el-table-column>
           <el-table-column prop="goday" label="鍑虹敓鏃ユ湡"> </el-table-column>
@@ -731,8 +727,6 @@
           <el-table-column prop="serial" label="搴忓彿"> </el-table-column>
           <el-table-column prop="name" label="濮撳悕"> </el-table-column>
           <el-table-column prop="sex" label="鎬у埆"> </el-table-column>
-          <el-table-column prop="certificate" label="璇佷欢绫诲瀷">
-          </el-table-column>
           <el-table-column prop="certificatenum" label="璇佷欢鍙风爜">
           </el-table-column>
           <el-table-column prop="goday" label="鍑虹敓鏃ユ湡"> </el-table-column>
@@ -803,7 +797,7 @@
 
 export default {
   name: "Patient",
-  dicts: ["sys_normal_disable", "task_status", "sys_user_sex"],
+  dicts: ["sys_normal_disable", "task_status", "sys_user_sex",'futter_patient'],
   components: { Treeselect },
   data() {
     return {
@@ -861,10 +855,7 @@
           value: "1",
           label: "鍦ㄩ櫌鎮h��",
         },
-        {
-          value: "2",
-          label: "闂ㄨ瘖鎮h��",
-        },
+
         {
           value: "3",
           label: "浣撴鎮h��",
@@ -873,6 +864,17 @@
           value: "4",
           label: "鍑洪櫌鎮h��",
         },
+      ],
+      sextype: [
+        {
+          value: 1,
+          label: "鐢�",
+        },
+        {
+          value: 2,
+          label: "濂�",
+        },
+
       ],
 
       cardlist: [
@@ -891,13 +893,22 @@
           router: "/patient/hospital",
         },
         {
-          name: "闂ㄨ瘖鎮h��",
-          value: 56,
-          router: "/patient/outpatient",
-        },
-        {
           name: "绂讳笘鎮h��",
           value: 0,
+        },
+      ],
+      source: [
+        {
+          value: 0,
+          label: "鎵�灞炴偅鑰�",
+        },
+        {
+          value: 1,
+          label: "绉戝鎮h��",
+        },
+        {
+          value: 2,
+          label: "鐥呭尯鎮h��",
         },
       ],
       // 琛ㄥ崟鍙傛暟
@@ -943,7 +954,7 @@
       // 鏌ヨ鍙傛暟
       queryParams: {
         pageNum: 1,
-        allhosp: "0",
+        allhosp: "1",
         pageSize: 10,
         idcardno: undefined,
         name: undefined,
@@ -974,9 +985,7 @@
             trigger: "blur",
           },
         ],
-        idcardtype: [
-          { required: true, message: "璇佷欢绫诲瀷涓嶈兘涓虹┖", trigger: "blur" },
-        ],
+
         idcardno: [
           { required: true, message: "璇佷欢鍙疯兘涓虹┖", trigger: "blur" },
           {
@@ -1007,10 +1016,8 @@
   methods: {
     /** 鏌ヨ鎮h�呭垪琛� */
     getList() {
-      console.log(this.dict.type.sys_user_sex);
       this.loading = true;
       messagelistpatient(this.queryParams).then((response) => {
-        console.log(response);
         this.userList = response.rows;
         this.total = response.total;
         this.loading = false;
@@ -1071,6 +1078,22 @@
     },
     /** 鎼滅储鎸夐挳鎿嶄綔 */
     handleQuery() {
+      if (this.queryParams.searchscope == 1) {
+        this.queryParams.leaveldeptcodes = store.getters.belongDepts.map(
+          (obj) => obj.deptCode
+        );
+        this.queryParams.leavehospitaldistrictcodes=null;
+      } else if (this.queryParams.searchscope == 2) {
+        this.queryParams.leavehospitaldistrictcodes =
+          store.getters.belongWards.map((obj) => obj.districtCode);
+          this.queryParams.leaveldeptcodes=null;
+      } else {
+        this.queryParams.leaveldeptcodes = store.getters.belongDepts.map(
+          (obj) => obj.deptCode
+        );
+        this.queryParams.leavehospitaldistrictcodes =
+          store.getters.belongWards.map((obj) => obj.districtCode);
+      }
       this.queryParams.pageNum = 1;
       this.getList();
     },
@@ -1096,7 +1119,6 @@
     },
     /** 淇敼鎸夐挳鎿嶄綔 */
     handleUpdate(row) {
-      console.log(row);
       const userIds = row.id || this.ids;
       particularpatient(userIds).then((response) => {
         console.log(response);
@@ -1111,13 +1133,14 @@
         if (valid) {
           if (this.amendtag) {
             this.form.isoperation = 2;
+            this.form.notrequiredFlag = 1;
             alterpatient(this.form)
               .then((response) => {
                 console.log(response);
               })
               .then(() => {
                 this.getList();
-                this.$modal.msgSuccess("淇敼鎴愬姛");
+                this.$modal.msgSuccess("鎮h�呰繃婊ゆ垚鍔�");
               });
           } else {
             this.form.isoperation = 1;
@@ -1253,7 +1276,7 @@
   //   display: flex;
   margin-top: 20px;
   margin: 20px;
-  padding: 30px;
+  padding: 15px;
   background: #d0e9fd;
   border: 1px solid #dcdfe6;
   -webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12),
diff --git a/src/views/patient/patient/profile/index.vue b/src/views/patient/patient/profile/index.vue
index e917a31..a981c61 100644
--- a/src/views/patient/patient/profile/index.vue
+++ b/src/views/patient/patient/profile/index.vue
@@ -44,23 +44,17 @@
         >
         <el-tabs v-model="sonactiveName" @tab-click="handleClickson">
           <el-tab-pane name="outpatient"
-            ><span class="mulsz" slot="label"
-              >闂ㄨ瘖({{ mznumber }})</span
-            ></el-tab-pane
+            ><span class="mulsz" slot="label">闂ㄨ瘖</span></el-tab-pane
           >
           <el-tab-pane name="inhospital"
-            ><span class="mulsz" slot="label"
-              >鍦ㄩ櫌({{ zynumber }})
-            </span></el-tab-pane
+            ><span class="mulsz" slot="label">鍦ㄩ櫌 </span></el-tab-pane
           >
           <el-tab-pane name="checkout"
-            ><span class="mulsz" slot="label"
-              >鍑洪櫌({{ jynumber }})
-            </span></el-tab-pane
+            ><span class="mulsz" slot="label">鍑洪櫌 </span></el-tab-pane
           >
         </el-tabs>
       </el-tab-pane>
-      <el-tab-pane name="monitor">
+      <!-- <el-tab-pane name="monitor">
         <span class="mulsz" slot="label"
           ><i class="el-icon-s-data"></i> 鍋ュ悍鐩戞祴</span
         >
@@ -97,7 +91,7 @@
             </span></el-tab-pane
           >
         </el-tabs></el-tab-pane
-      >
+      > -->
       <el-tab-pane name="serve">
         <span class="mulsz" slot="label"
           ><i class="el-icon-s-custom"></i> 鏈嶅姟璁板綍</span
@@ -390,18 +384,7 @@
             key="patname"
             prop="patname"
           />
-          <el-table-column label="鎬у埆" align="center" key="sex" prop="sex">
-            <template slot-scope="scope">
-              <span>{{ scope.row.sex == 1 ? "鐢�" : "濂�" }}</span>
-            </template>
-          </el-table-column>
-          <el-table-column
-            label="骞撮緞"
-            align="center"
-            key="age"
-            prop="age"
-            width="120"
-          />
+
           <el-table-column
             label="鑱旂郴鐢佃瘽"
             align="center"
@@ -410,10 +393,17 @@
             width="120"
           />
           <el-table-column
-            label="璇婃柇"
+            label="鍏ラ櫌璇婃柇"
             align="center"
             key="diagname"
             prop="diagname"
+            width="190"
+          />
+          <el-table-column
+            label="鍑洪櫌璇婃柇"
+            align="center"
+            key="leavediagname"
+            prop="leavediagname"
             width="190"
           />
 
@@ -425,14 +415,28 @@
             width="120"
           />
           <el-table-column
-            label="鎺ヨ瘖鍖荤敓"
+            label="鎵�鍦ㄧ梾鍖�"
+            align="center"
+            key="leavehospitaldistrictname"
+            prop="leavehospitaldistrictname"
+            width="120"
+          />
+          <el-table-column
+            label="涓绘不鍖荤敓"
             align="center"
             key="drname"
             prop="drname"
             width="120"
           />
-        </el-table>
 
+          <el-table-column
+            label="璐d换鎶ゅ+"
+            align="center"
+            key="nurseName"
+            prop="nurseName"
+            width="120"
+          />
+        </el-table>
         <pagination
           v-show="total > 0"
           :total="total"
@@ -447,8 +451,9 @@
           <el-table-column
             label="浣忛櫌鍙�"
             align="center"
-            key="patid"
-            prop="patid"
+            key="patno"
+            prop="patno"
+            width="180"
           />
           <el-table-column
             label="濮撳悕"
@@ -456,26 +461,13 @@
             key="patname"
             prop="patname"
           />
-          <el-table-column label="鎬у埆" align="center" key="sex" prop="sex">
-            <template slot-scope="scope">
-              <span>{{ scope.row.sex == 1 ? "鐢�" : "濂�" }}</span>
-            </template>
-          </el-table-column>
-          <el-table-column
-            label="骞撮緞"
-            align="center"
-            key="age"
-            prop="age"
-            width="120"
-          />
           <el-table-column
             label="鑱旂郴鐢佃瘽"
             align="center"
-            key="telephone"
-            prop="telephone"
+            key="telcode"
+            prop="telcode"
             width="120"
           />
-
           <el-table-column
             label="鍏ラ櫌璇婃柇"
             align="center"
@@ -483,19 +475,26 @@
             prop="diagname"
             width="190"
           />
+          <el-table-column
+            label="鍑洪櫌璇婃柇"
+            align="center"
+            key="leavediagname"
+            prop="leavediagname"
+            width="190"
+          />
 
           <el-table-column
-            label="鐥呭尯"
+            label="灏辫瘖绉戝"
             align="center"
             key="deptname"
             prop="deptname"
             width="120"
           />
           <el-table-column
-            label="搴婁綅鍙�"
+            label="鎵�鍦ㄧ梾鍖�"
             align="center"
-            key="bedNo"
-            prop="bedNo"
+            key="leavehospitaldistrictname"
+            prop="leavehospitaldistrictname"
             width="120"
           />
           <el-table-column
@@ -505,29 +504,100 @@
             prop="drname"
             width="120"
           />
+
           <el-table-column
             label="璐d换鎶ゅ+"
             align="center"
-            key="Sister"
-            prop="Sister"
+            key="nurseName"
+            prop="nurseName"
             width="120"
           />
+          <el-table-column
+            label="搴婁綅鍙�"
+            align="center"
+            key="bedNo"
+            prop="bedNo"
+            width="120"
+          />
+
         </el-table>
       </div>
       <!-- 鍑洪櫌 -->
       <div v-if="sonactiveName == 'checkout'">
         <el-table :data="serviceDatacy" style="width: 100%">
-          <el-table-column prop="godaya" label="浣撴绫诲瀷"> </el-table-column>
-          <el-table-column prop="hospitalname" label="浣撴濂楅鍚嶇О">
-          </el-table-column>
-          <el-table-column prop="result" label="浣撴棰勭害鏃ユ湡">
-          </el-table-column>
-          <el-table-column prop="administrative" label="浣撴椤圭洰">
-          </el-table-column>
-          <el-table-column prop="administrative" label="浣撴鎶ュ憡鏃�">
-          </el-table-column>
-          <el-table-column prop="administrative" label="浣撴鎬绘鎶ュ憡">
-          </el-table-column>
+          <el-table-column
+            label="浣忛櫌鍙�"
+            align="center"
+            key="patno"
+            prop="patno"
+            width="120"
+          />
+          <el-table-column
+            label="濮撳悕"
+            align="center"
+            key="patname"
+            prop="patname"
+          />
+          <el-table-column
+            label="鑱旂郴鐢佃瘽"
+            align="center"
+            key="telcode"
+            prop="telcode"
+            width="120"
+          />
+          <el-table-column
+            label="鍏ラ櫌璇婃柇"
+            align="center"
+            key="diagname"
+            prop="diagname"
+            width="190"
+          />
+          <el-table-column
+            label="鍑洪櫌璇婃柇"
+            align="center"
+            key="leavediagname"
+            prop="leavediagname"
+            width="190"
+          />
+
+          <el-table-column
+            label="灏辫瘖绉戝"
+            align="center"
+            key="deptname"
+            prop="deptname"
+            width="120"
+          />
+          <el-table-column
+            label="鎵�鍦ㄧ梾鍖�"
+            align="center"
+            key="leavehospitaldistrictname"
+            prop="leavehospitaldistrictname"
+            width="120"
+          />
+          <el-table-column
+            label="涓绘不鍖荤敓"
+            align="center"
+            key="drname"
+            prop="drname"
+            width="120"
+          />
+
+          <el-table-column
+            label="璐d换鎶ゅ+"
+            align="center"
+            key="nurseName"
+            prop="nurseName"
+            width="120"
+          />
+
+          <el-table-column
+            label="搴婁綅鍙�"
+            align="center"
+            key="bedNo"
+            prop="bedNo"
+            width="120"
+          />
+
         </el-table>
       </div>
     </div>
@@ -548,27 +618,41 @@
               border-left: 4px solid rgb(190, 65, 134);
             "
           >
-            {{ item.name }}
+          <span v-if="item.serviceType==2">鍑洪櫌闅忚</span>
+          <span v-if="item.serviceType==1">鐩戞祴璇勪及</span>
+          <span v-if="item.serviceType==3">闂ㄨ瘖闅忚</span>
+          <span v-if="item.serviceType==4">瀹f暀鍏虫��</span>
           </div>
           <el-divider></el-divider>
           <div style="margin-top: 10px">
-            {{ item.name }}鐘舵�侊細宸茬粓姝�<span style="color: #2775b6"
-              >锛堢粓姝㈠師鍥狅細鎮h�呯棅鎰堝洖璁跨粨鏉燂紝缁堟鏃堕棿锛�2023-12-18 12:00锛�</span
+            鏈嶅姟鍚嶇О锛�<span style="color: #2775b6"
+              >{{ item.templatename }}</span
             >
           </div>
           <div style="margin-top: 10px">
-            {{ item.name }}鍙戦�佹椂闂达細<span style="color: #2775b6"
-              >2023-11-23 12:00</span
+            鍒涘缓鏃堕棿锛�<span style="color: #2775b6"
+              >{{item.createTime}}</span
             >
           </div>
           <div style="margin-top: 10px">
-            {{ item.name }}瀹屾垚鏃堕棿锛�<span style="color: #2775b6"
-              >2023-12-18 12:00</span
+            瀹屾垚鏃堕棿锛�<span style="color: #2775b6"
+              >{{ item.finishtime }}</span
             >
           </div>
           <div style="margin-top: 10px">
-            鐤肩棝绋嬪害锛�<span style="color: #2775b6">涓害</span>
+            <el-row :gutter="20">
+              <el-col :span="12"
+                >绉戝锛�
+                <span style="color: #2775b6">{{ item.deptname }}</span></el-col
+              >
+              <el-col :span="12"
+                >鐥呭尯锛�
+                <span style="color: #2775b6">{{ item.leavehospitaldistrictname }}</span></el-col
+              >
+
+            </el-row>
           </div>
+
           <div
             style="
               font-size: 20px;
@@ -577,37 +661,38 @@
               border-left: 4px solid rgb(65, 161, 190);
             "
           >
-            浜哄伐{{ item.name }}璁板綍
+            浜哄伐璁板綍
           </div>
           <div style="margin-top: 10px">
             <el-row :gutter="20">
               <el-col :span="6"
-                >{{ item.name }}鏃ユ湡锛�
-                <span style="color: #2775b6">2023-11-22 11:22</span></el-col
+                >璐熻矗浜猴細
+                <span style="color: #2775b6">{{ item.createBy }}</span></el-col
               >
               <el-col :span="6"
-                >{{ item.name }}浜猴細
-                <span style="color: #2775b6">鍚村皬榫�</span></el-col
+                >涓绘不鍖荤敓锛�
+                <span style="color: #2775b6">{{ item.drname }}</span></el-col
               >
               <el-col :span="6"
-                >鎮h�呴厤鍚堝害锛� <span style="color: #2775b6">楂�</span></el-col
+                >璐d换鎶ゅ+ <span style="color: #2775b6">{{ item.nurseName }}</span></el-col
               >
             </el-row>
           </div>
           <div style="margin-top: 10px">
-            {{ item.name }}缁撴灉锛�
-            <span style="color: #2775b6">鎮h�呯棅鎰堬紝韬綋鍊嶆</span>
+            缁撴灉鐘舵�侊細
+            <span style="color: #2775b6" v-if="item.excep==0">鏈嶅姟姝e父</span>
+            <span style="color: #B55E54" v-if="item.excep==1">寮傚父</span>
+
           </div>
-          <div style="margin-top: 10px">
-            {{ item.name }}澶囨敞锛�
+          <!-- <div style="margin-top: 10px">
+            澶囨敞锛�
             <span style="color: #2775b6">鎻愰啋娉ㄦ剰楗鍋ュ悍</span>
-          </div>
+          </div> -->
         </el-card>
       </div>
     </div>
     <!-- 鍋ュ悍鐩戞祴 -->
-    <div class="medical-record" v-show="activeName == 'monitor'">
-      <!-- 琛�鍘嬪浘鏍� -->
+    <!-- <div class="medical-record" v-show="activeName == 'monitor'">
       <div v-show="sontwoactiveName == 'blood'" style="display: flex">
         <div
           id="xyeCharts"
@@ -625,7 +710,6 @@
           </el-card>
         </div>
       </div>
-      <!-- 琛�绯� -->
       <div v-show="sontwoactiveName == 'glucose'" style="display: flex">
         <div
           id="xteCharts"
@@ -643,7 +727,6 @@
           </el-card>
         </div>
       </div>
-      <!-- 浣撻噸 -->
       <div v-show="sontwoactiveName == 'weight'" style="display: flex">
         <div
           id="tzeCharts"
@@ -661,7 +744,6 @@
           </el-card>
         </div>
       </div>
-      <!-- 蹇冪巼 -->
       <div v-show="sontwoactiveName == 'heartrate'" style="display: flex">
         <div
           id="xleCharts"
@@ -679,7 +761,6 @@
           </el-card>
         </div>
       </div>
-      <!-- 琛�姘� -->
       <div v-show="sontwoactiveName == 'bloodoxygen'" style="display: flex">
         <div
           id="xueyangeCharts"
@@ -697,7 +778,6 @@
           </el-card>
         </div>
       </div>
-      <!-- 浣撴俯 -->
       <div v-show="sontwoactiveName == 'animalheat'" style="display: flex">
         <div
           id="tweCharts"
@@ -715,7 +795,7 @@
           </el-card>
         </div>
       </div>
-    </div>
+    </div> -->
 
     <el-dialog :title="titletb" :visible.sync="AddanumberVisible">
       <el-form :model="numberform" label-width="100px">
@@ -757,6 +837,11 @@
   alterpatient,
   Patientclinic,
 } from "@/api/patient/homepage";
+
+import {
+  getsearchrResults,
+  getTaskservelist,
+} from "@/api/AiCentre/index";
 import { listPatouthosp } from "@/api/smartor/patouthosp";
 import { listpatient } from "@/api/patient/record";
 
@@ -781,7 +866,7 @@
       id: "",
       loading: false,
       activeName: "health", //涓�绫诲鑸�
-      sonactiveName: "outpatient", //鍋ュ悍鐩戞祴瀵艰埅
+      sonactiveName: "inhospital", //鍋ュ悍鐩戞祴瀵艰埅
       sontwoactiveName: "blood", //鍖荤枟妗f瀵艰埅
       dynamicTags: [],
       record: [
@@ -944,19 +1029,22 @@
         // 闂ㄨ瘖璁板綍
         listPatouthosp({ patid: this.id }).then((response) => {
           if (response.code == 200) {
-            this.serviceData = response.rows;
+            // this.serviceData = response.rows;
+            this.serviceData = [];
           }
         });
       } else if (type == 1) {
-        listpatient({ patid: this.id }).then((response) => {
+        listpatient({ patid: this.id, cry: 0 }).then((response) => {
           if (response.code == 200) {
             this.serviceDatary = response.rows;
           }
         });
       } else if (type == 2) {
-        listpatient({ patid: this.id }).then((response) => {
+        listpatient({ patid: this.id, cry: 1 }).then((response) => {
           if (response.code == 200) {
             this.serviceDatacy = response.rows;
+            console.log(this.serviceDatacy);
+            this.$forceUpdate()
           }
         });
       }
@@ -1117,13 +1205,25 @@
     // tab鍒囨崲
     handleClick(tab, event) {
       if (tab.index == "1") {
-        this.getList(0);
+        this.getList(1);
+      }else if (tab.index == "2") {
+this.handleClickfw();
       }
     },
     handleClickson(tab, event) {
-      console.log(tab.index, "son");
+      console.log(tab, "son");
       this.getList(tab.index);
     },
+    // 鏌ヨ鏈嶅姟璁板綍
+    handleClickfw(){
+      getTaskservelist({
+        patid: this.id,
+      }).then((res) => {
+        if (res.code == 200) {
+          this.record = res.rows;
+        }
+      });
+    },
     // 鑱旂郴鏂瑰紡鏂板
     Addanumber() {},
     // 鏍囩--------------------------
diff --git a/src/views/patient/propaganda/Missioncreation.vue b/src/views/patient/propaganda/Missioncreation.vue
index 81d336e..71c70bb 100644
--- a/src/views/patient/propaganda/Missioncreation.vue
+++ b/src/views/patient/propaganda/Missioncreation.vue
@@ -66,6 +66,50 @@
                     placeholder="璇疯緭鍏ヤ换鍔℃弿杩�"
                   />
                 </el-form-item>
+                <el-row>
+                  <el-col :span="20"
+                    ><el-form-item label="閫傜敤绉戝" prop="region">
+
+                      <el-select
+                        v-model="form.deptcode"
+                        style="width: 400px"
+                        size="medium"
+                        filterable
+                        placeholder="璇烽�夋嫨绉戝"
+                      >
+                        <el-option
+                          class="ruleFormaa"
+                          v-for="item in belongDepts"
+                          :key="item.deptCode"
+                          :label="item.deptName"
+                          :value="item.deptCode"
+                        >
+                        </el-option>
+                      </el-select> </el-form-item
+                  ></el-col>
+                </el-row>
+                <el-row>
+                  <el-col :span="20"
+                    ><el-form-item label="閫傜敤鐥呭尯" prop="region">
+
+                      <el-select
+                        v-model="form.leavehospitaldistrictcode"
+                        style="width: 400px"
+                        size="medium"
+                        filterable
+                        placeholder="璇烽�夋嫨鐥呭尯"
+                      >
+                        <el-option
+                          class="ruleFormaa"
+                          v-for="item in belongWards"
+                          :key="item.districtCode"
+                          :label="item.districtName"
+                          :value="item.districtCode"
+                        >
+                        </el-option>
+                      </el-select> </el-form-item
+                  ></el-col>
+                </el-row>
                 <el-form-item label="鍙戦�佽缃細" v-if="currenttype != 2">
                   <el-radio-group v-model="form.sendType">
                     <el-radio :label="1">鏃堕棿娈靛彂閫�</el-radio>
@@ -105,7 +149,7 @@
                   <div style="display: flex">
                     <div style="margin-right: 10px">
                       <span style="font-size: 18px; margin-right: 10px"
-                        >鏃堕棿娈典竴</span
+                        >鈶�</span
                       >
                       <el-time-picker
                         is-range
@@ -122,7 +166,7 @@
                     </div>
                     <div style="margin-right: 10px">
                       <span style="font-size: 18px; margin-right: 10px"
-                        >鏃堕棿娈典簩</span
+                        >鈶�</span
                       >
                       <el-time-picker
                         is-range
@@ -139,7 +183,7 @@
                     </div>
                     <div style="margin-right: 10px">
                       <span style="font-size: 18px; margin-right: 10px"
-                        >鏃堕棿娈典笁</span
+                        >鈶�</span
                       >
                       <el-time-picker
                         is-range
@@ -156,6 +200,26 @@
                     </div>
                   </div>
                 </el-form-item>
+                <el-row>
+                  <el-col :span="12"
+                    ><el-form-item label="寮�鍦虹櫧" prop="kcb">
+                      <el-input
+                        type="textarea"
+                        :rows="3"
+                        v-model="form.kcb"
+                        placeholder="璇疯緭鍏ュ紑鍦虹櫧"
+                      /> </el-form-item
+                  ></el-col>
+                  <el-col :span="12"
+                    ><el-form-item label="缁撴潫璇�" prop="jsy">
+                      <el-input
+                        type="textarea"
+                        :rows="3"
+                        v-model="form.jsy"
+                        placeholder="璇疯緭鍏ョ粨鏉熻"
+                      /> </el-form-item
+                  ></el-col>
+                </el-row>
                 <el-form-item label="鏈嶅姟褰㈠紡">
                   <el-checkbox-group v-model="checkList">
                     <el-checkbox
@@ -319,7 +383,7 @@
                     @details="detailhz"
                     @handleUpdate="handleUpdate"
                     :currentList="overallCase"
-                    :tableLabel="tableLabelhz"
+                    :tableLabel="tableLabelhzwb"
                     :serialnumber="false"
                     :searchTrue="true"
                     :multiplechoice="false"
@@ -597,27 +661,44 @@
       dialogVisiblepatient: false, //娣诲姞鎮h�呭脊妗�
       radio: 1,
       checkboxlist: [],
+      // 绉戝/鐥呭尯
+      belongWards: [],
+      belongWards: [],
       tableLabel: [],
       questionList: [],
       htmlRichText: "<p>Hello, <strong>world</strong>!</p>",
       // 鎮h�呰〃鍗�
       tableLabelhz: [
-        // { label: "搴忓彿", width: "", prop: "patid" },
-        { label: "鎮h�呭悕绉�", width: "", prop: "name" },
+        { label: "鍑洪櫌鏃ユ湡", width: "150", prop: "inhosptime" },
+        { label: "鎮h��", width: "", prop: "name" },
+        { label: "韬唤璇�", width: "200", prop: "sfzh" },
         { label: "鎬у埆", width: "", prop: "sex" },
         { label: "骞撮緞", width: "", prop: "age" },
-        { label: "灏辫瘖绉戝", width: "", prop: "deptName" },
-        { label: "鍏ラ櫌鏃ユ湡", width: "", prop: "inhosptime" },
-        { label: "鍒涘缓浜�", width: "", prop: "createBy" },
+        { label: "璐d换鎶ゅ+", width: "", prop: "nurseName" },
+        { label: "涓绘不鍖荤敓", width: "", prop: "drname" },
+        { label: "绉戝", width: "240", prop: "dept" },
+        { label: "鐥呭尯", width: "240", prop: "leavehospitaldistrictname" },
+      ],
+        // 鎮h�呰〃鍗�
+        tableLabelhzwb: [
+        { label: "鍑洪櫌鏃ユ湡", width: "150", prop: "endtime" },
+        { label: "鎮h��", width: "", prop: "name" },
+        { label: "韬唤璇�", width: "200", prop: "sfzh" },
+        { label: "鎬у埆", width: "", prop: "sex" },
+        { label: "骞撮緞", width: "", prop: "age" },
+        { label: "璐d换鎶ゅ+", width: "", prop: "nurseName" },
+        { label: "涓绘不鍖荤敓", width: "", prop: "drname" },
+        { label: "绉戝", width: "180", prop: "deptName" },
+        { label: "鐥呭尯", width: "150", prop: "leavehospitaldistrictname" },
       ],
 
       tableLabelxj: [
-        { label: "瀹f暀鍚嶇О", width: "", prop: "preachname" },
-        { label: "瀹f暀鎻忚堪", width: "", prop: "note" },
-        { label: "瀹f暀褰㈠紡", width: "", prop: "playType" },
+      { label: "鍒涘缓浜�", width: "", prop: "createBy" },
+      { label: "瀹f暀鍚嶇О", width: "180", prop: "preachname" },
+        { label: "瀹f暀鎻忚堪", width: "180", prop: "preachcontent" },
+        // { label: "瀹f暀褰㈠紡", width: "", prop: "playType" },
         { label: "閫傜敤鏂瑰紡", width: "", prop: "suitway" },
         { label: "淇敼鏃ユ湡", width: "", prop: "uploadTime" },
-        { label: "鍒涘缓浜�", width: "", prop: "createBy" },
       ],
       // 鍙橀噺
       tableLabelvariable: [
@@ -720,6 +801,8 @@
         templatename: "",
         templateid: null,
         libtemplateid: null,
+        kcb: "浜茬埍鐨勬偅鑰�-瀹跺睘锛屾偍濂斤紒鎴戜滑鏄禉涓尰澶т簩闄㈢殑鍖绘姢浜哄憳锛屼负浜嗘洿濂藉湴浜嗚В鎮ㄧ殑搴峰鎯呭喌锛岃鎮ㄦ娊涓�鐐瑰疂璐垫椂闂达紝瑙傜湅杩欎唤瀹f暀璧勮銆�",
+        jsy: "鐢熸椿涓婅鍔抽�哥粨鍚堬紝娉ㄦ剰浼戞伅鍜岃惀鍏伙紝閫傚綋閿荤偧锛屾垝鐑熼檺閰掞紝淇濇寔蹇冩儏鑸掔晠锛屽畾鏈熷璇娿�傞偅鏈瀹f暀鍐呭灏卞埌杩欓噷锛岀鎮ㄨ韩浣撳仴搴凤紒",
       },
       taskoptions: [
         {
@@ -743,6 +826,8 @@
   created() {
     this.id = this.$route.query.id;
     this.form.type = this.$route.query.type;
+    this.belongWards = store.getters.belongWards;
+    this.belongDepts = store.getters.belongDepts;
     this.form.typename = this.$route.query.typename;
     this.form.serviceType = Number(this.$route.query.serviceType);
     this.listDept();
@@ -866,6 +951,10 @@
         this.$modal.msgError("璇烽�夋嫨鐥呬汉");
         return;
       }
+      if (!this.form.templatename) {
+        this.$modal.msgError("鏈�夋嫨妯℃澘");
+        return;
+      }
       const filteredArray = this.variableList.filter(
         (item) =>
           item.name !== "濮撳悕" && item.name !== "鐢佃瘽" && item.name !== "鍦板潃"
@@ -880,6 +969,8 @@
       if (!this.form.type) {
         this.form.type = this.$route.query.type;
       }
+      this.form.leaveldeptcodes = store.getters.belongDepts.map(obj=>obj.deptCode);
+      this.form.leavehospitaldistrictcodes = store.getters.belongWards.map(obj=>obj.districtCode);
       Editsingletask(this.form).then((res) => {
         if (res.code == 200) {
           if (this.form.taskid) {
@@ -963,14 +1054,15 @@
       });
       if (this.patientqueryParams.allhosp == 1) {
         this.tableLabelhz = [
-          { label: "搴忓彿", width: "", prop: "patid" },
-          { label: "鎮h�呭悕绉�", width: "", prop: "name" },
+        { label: "鍑洪櫌鏃ユ湡", width: "150", prop: "endtime" },
+          { label: "鎮h��", width: "", prop: "name" },
+          { label: "韬唤璇�", width: "200", prop: "sfzh" },
           { label: "鎬у埆", width: "", prop: "sex" },
           { label: "骞撮緞", width: "", prop: "age" },
-          { label: "涓讳换鍖诲笀", width: "", prop: "drname" },
-          { label: "灏辫瘖绉戝", width: "", prop: "deptName" },
-          { label: "鍏ラ櫌鏃ユ湡", width: "", prop: "inhosptime" },
-          { label: "鍒涘缓浜�", width: "", prop: "createBy" },
+          { label: "璐d换鎶ゅ+", width: "", prop: "nurseName" },
+          { label: "鍖荤敓", width: "", prop: "drname" },
+          { label: "绉戝", width: "180", prop: "dept" },
+          { label: "鐥呭尯", width: "150", prop: "leavehospitaldistrictname" },
         ];
       } else if (this.patientqueryParams.allhosp == 2) {
         this.tableLabelhz = [
@@ -1085,6 +1177,16 @@
     },
     // 鑾峰彇璇︽儏
     Getdetails() {
+      this.form = {
+        patTaskRelevances: [],
+        sendType: 1,
+        templatename: "",
+        templateid: null,
+        libtemplateid: null,
+        serviceType:Number(this.$route.query.serviceType),
+        kcb: "浜茬埍鐨勬偅鑰�-瀹跺睘锛屾偍濂斤紒鎴戜滑鏄禉涓尰澶т簩闄㈢殑鍖绘姢浜哄憳锛屼负浜嗘洿濂藉湴浜嗚В鎮ㄧ殑搴峰鎯呭喌锛岃鎮ㄦ娊涓�鐐瑰疂璐垫椂闂达紝瀹屾垚杩欎唤闅忚闂嵎銆�",
+        jsy: "鐢熸椿涓婅鍔抽�哥粨鍚堬紝娉ㄦ剰浼戞伅鍜岃惀鍏伙紝閫傚綋閿荤偧锛屾垝鐑熼檺閰掞紝淇濇寔蹇冩儏鑸掔晠锛屽畾鏈熷璇娿�傞偅鏈鍥炶灏卞埌杩欓噷锛岀鎮ㄨ韩浣撳仴搴凤紒",
+      };
       if (this.id) {
         getTaskInfo({ taskid: this.id }).then((res) => {
           let filteredArray = "";
diff --git a/src/views/patient/propaganda/QuestionnaireTask.vue b/src/views/patient/propaganda/QuestionnaireTask.vue
index c9a50bf..7734577 100644
--- a/src/views/patient/propaganda/QuestionnaireTask.vue
+++ b/src/views/patient/propaganda/QuestionnaireTask.vue
@@ -80,7 +80,17 @@
                     >
                   </el-checkbox-group>
                 </el-form-item>
-                <el-form-item label="鎵ц璁剧疆" prop="sendType">
+                <el-form-item label="鏄惁闀挎湡" prop="longTask">
+                  <el-radio-group v-model="form.longTask">
+                    <el-radio :label="0">鏅�氫换鍔�</el-radio>
+                    <el-radio :label="1">闀挎湡浠诲姟</el-radio>
+                  </el-radio-group>
+                </el-form-item>
+                <el-form-item
+                  label="鎵ц璁剧疆"
+                  prop="sendType"
+                  v-if="!form.longTask"
+                >
                   <el-radio-group v-model="form.sendType">
                     <el-radio :label="1">鏃堕棿娈垫墽琛�</el-radio>
                     <el-radio :label="3">鏃堕棿鐐规墽琛�</el-radio>
@@ -89,7 +99,7 @@
                 </el-form-item>
                 <el-form-item
                   label="鎵ц鏃ユ湡"
-                  v-if="form.sendType == 1"
+                  v-if="form.sendType == 1 && !form.longTask"
                   prop="daytime"
                 >
                   <el-date-picker
@@ -106,7 +116,7 @@
 
                 <el-form-item
                   label="鎵ц鏃堕棿鐐�"
-                  v-if="form.sendType == 3"
+                  v-if="form.sendType == 3 && !form.longTask"
                   prop="daytime"
                 >
                   <div style="display: flex">
@@ -125,7 +135,7 @@
 
                 <el-form-item
                   label="鎵ц鏃堕棿娈�"
-                  v-if="form.sendType == 1"
+                  v-if="form.sendType == 1 && !form.longTask"
                   prop="daytime"
                 >
                   <div style="display: flex">
@@ -177,11 +187,68 @@
                   </div>
                 </el-form-item>
                 <el-row>
+                  <el-col :span="20"
+                    ><el-form-item label="閫傜敤绉戝" prop="region">
+                      <el-select
+                        v-model="form.deptcode"
+                        style="width: 400px"
+                        size="medium"
+                        filterable
+                        placeholder="璇烽�夋嫨绉戝"
+                      >
+                        <el-option
+                          class="ruleFormaa"
+                          v-for="item in belongDepts"
+                          :key="item.deptCode"
+                          :label="item.deptName"
+                          :value="item.deptCode"
+                        >
+                        </el-option>
+                      </el-select> </el-form-item
+                  ></el-col>
+                </el-row>
+                <el-row>
+                  <el-col :span="20"
+                    ><el-form-item label="閫傜敤鐥呭尯" prop="region">
+                      <!-- <el-cascader
+                      style="width: 400px"
+                      v-model="form.leavehospitaldistrictcode"
+                      :options="topicoptions"
+                      :props="propstask"
+                      :show-all-levels="false"
+                      clearable
+                    >
+                      <template slot-scope="{ node, data }">
+                        <span>{{ data.deptName }}</span>
+                        <span v-if="!node.isLeaf">
+                          ({{ data.children.length }})
+                        </span>
+                      </template>
+                    </el-cascader> -->
+                      <el-select
+                        v-model="form.leavehospitaldistrictcode"
+                        style="width: 400px"
+                        size="medium"
+                        filterable
+                        placeholder="璇烽�夋嫨鐥呭尯"
+                      >
+                        <el-option
+                          class="ruleFormaa"
+                          v-for="item in belongWards"
+                          :key="item.districtCode"
+                          :label="item.districtName"
+                          :value="item.districtCode"
+                        >
+                        </el-option>
+                      </el-select> </el-form-item
+                  ></el-col>
+                </el-row>
+                <el-row>
                   <el-col :span="12"
                     ><el-form-item label="寮�鍦虹櫧" prop="kcb">
                       <el-input
                         type="textarea"
-                          :rows="3"
+                        :rows="3"
                         v-model="form.kcb"
                         placeholder="璇疯緭鍏ュ紑鍦虹櫧"
                       /> </el-form-item
@@ -212,6 +279,7 @@
                       placeholder="璇风偣鍑诲彸渚ч�夋嫨"
                     />
                     <el-button
+                      style="margin-left: 10px"
                       type="primary"
                       icon="el-icon-edit"
                       @click="drawermb = true"
@@ -219,7 +287,7 @@
                     ></el-button>
 
                     <el-button
-                      v-if="form.libtemplateid"
+                      v-if="form.templatename"
                       type="success"
                       icon="el-icon-search"
                       @click="previewfnmb"
@@ -319,7 +387,7 @@
                       >
                     </el-col>
 
-                    <el-col :span="1.5">
+                    <!-- <el-col :span="1.5">
                       <el-button
                         type="danger"
                         plain
@@ -329,7 +397,7 @@
                         @click="handleDelete"
                         >鍒犻櫎</el-button
                       >
-                    </el-col>
+                    </el-col> -->
 
                     <!-- <el-col :span="1.5"> </el-col> -->
                   </el-row>
@@ -391,7 +459,7 @@
                 ></el-input>
               </el-form-item>
               <el-select
-                v-model="patientqueryParams.topica"
+                v-model="patientqueryParams.searchscope"
                 placeholder="璇烽�夋嫨鎮h�呮潵婧�"
               >
                 <el-option
@@ -447,69 +515,282 @@
         >
       </span>
     </el-dialog>
-    <el-dialog title="妯℃澘棰勮" :visible.sync="previewtf" width="60%">
-      <div class="preview-left">
-        <div v-for="item in questionList">
-          <!-- 鍗曢�� -->
-          <div
-            class="scriptTopic-dev"
-            :key="item.sort"
-            v-if="item.scriptType == 1"
-          >
-            <div class="dev-text">
-              {{ item.sort }}銆乕鍗曢�塢<span>{{ item.scriptContent }}</span>
-            </div>
-            <div class="dev-xx">
-              <el-radio-group v-model="item.remark">
-                <el-radio
-                  v-for="(items, index) in item.svyLibTemplateTargetoptions"
-                  :key="index"
-                  :label="index"
-                  >{{ items.optioncontent }}</el-radio
+    <!-- 妯℃澘棰勮 -->
+    <el-dialog title="妯℃澘棰勮" :visible.sync="previewtf" width="70%">
+      <el-tabs type="border-card">
+        <el-tab-pane label="妯℃澘鍩虹鏁版嵁"
+          ><div class="preview-left">
+            <el-form :model="objyl" label-width="100px" class="demo-objyl">
+              <el-row :gutter="10">
+                <el-col :span="14">
+                  <el-form-item label="闂嵎鍒嗙被" prop="categoryid">
+                    <el-select
+                      v-model="objyl.categoryid"
+                      size="medium"
+                      filterable
+                      placeholder="璇烽�夋嫨鍒嗙被"
+                    >
+                      <el-option-group
+                        v-for="group in optionsclass"
+                        :key="group.id"
+                        :label="group.name"
+                      >
+                        <el-option
+                          v-for="item in group.svyLibTemplateCategoryList"
+                          :key="item.id"
+                          :label="item.name"
+                          :value="item.id"
+                        >
+                        </el-option>
+                      </el-option-group>
+                    </el-select>
+                  </el-form-item>
+                </el-col>
+                <el-col :span="10">
+                  <el-form-item label="璇勪环绫诲瀷" prop="scoreType">
+                    <el-select
+                      v-model="objyl.scoreType"
+                      placeholder="璇烽�夋嫨鍒嗙被"
+                    >
+                      <el-option
+                        v-for="group in appraiselist"
+                        :key="group.value"
+                        :label="group.label"
+                        :value="group.value"
+                      >
+                      </el-option>
+                    </el-select>
+                  </el-form-item>
+                </el-col>
+              </el-row>
+              <el-row :gutter="20">
+                <el-col :span="14">
+                  <el-form-item label="鍙敤鐘舵��" prop="isenable">
+                    <el-radio-group v-model="objyl.isenable">
+                      <el-radio
+                        v-for="(item, index) in usable"
+                        :label="item.value"
+                        >{{ item.label }}</el-radio
+                      >
+                    </el-radio-group>
+                  </el-form-item>
+                </el-col>
+                <el-col :span="8">
+                  <el-form-item label="鐗堟湰鍙�" prop="name">
+                    <el-input
+                      v-model="objyl.version"
+                      placeholder="榛樿1.0"
+                    ></el-input>
+                  </el-form-item>
+                </el-col>
+              </el-row>
+              <el-form-item label="闂嵎鏍囬" prop="svyname">
+                <div style="width: 400px">
+                  <el-input v-model="objyl.svyname"></el-input>
+                </div>
+              </el-form-item>
+              <el-form-item label="闂嵎鏂瑰紡" prop="suitway">
+                <el-select
+                  style="width: 400px"
+                  v-model="objyl.suitway"
+                  size="medium"
+                  multiple
+                  filterable
+                  placeholder="璇烽�夋嫨鍒嗙被"
                 >
-              </el-radio-group>
-            </div>
-          </div>
-          <!-- 澶氶�� -->
-          <div
-            class="scriptTopic-dev"
-            :key="item.sort"
-            v-if="item.scriptType == 2"
-          >
-            <div class="dev-text">
-              {{ item.sort }}銆乕澶氶�塢<span>{{ item.scriptContent }}</span>
-            </div>
-            <div class="dev-xx">
-              <el-checkbox-group v-model="qremark">
-                <el-checkbox
-                  v-for="(items, index) in item.svyLibTemplateTargetoptions"
-                  :key="index"
-                  :label="index"
+                  <el-option
+                    class="ruleFormaa"
+                    v-for="item in mode"
+                    :key="item.value"
+                    :label="item.label"
+                    :value="item.value"
+                  >
+                  </el-option>
+                </el-select>
+              </el-form-item>
+              <el-row :gutter="20" v-if="form.longTask">
+                <el-col :span="14">
+                  <el-form-item label="闀挎湡浠诲姟" prop="longTemp">
+                    <el-radio-group v-model="objyl.longTemp">
+                      <el-radio
+                        v-for="(item, index) in longtype"
+                        :label="item.value"
+                        >{{ item.label }}</el-radio
+                      >
+                    </el-radio-group>
+                  </el-form-item>
+                </el-col>
+                <el-col :span="8">
+                  <el-form-item label="浠诲姟鍛ㄦ湡" prop="name">
+                    <el-input
+                      v-model="objyl.sendDay"
+                      placeholder="榛樿5澶╁悗"
+                    ></el-input>
+                  </el-form-item>
+                </el-col>
+              </el-row>
+              <el-row>
+                <el-col :span="20"
+                  ><el-form-item label="閫傜敤绉戝" prop="region">
+                    <el-select
+                      style="width: 400px"
+                      v-model="tempDetpRelevanceslist"
+                      size="medium"
+                      multiple
+                      filterable
+                      placeholder="璇烽�夋嫨绉戝"
+                    >
+                      <el-option
+                        class="ruleFormaa"
+                        v-for="item in belongDepts"
+                        :key="item.deptCode"
+                        :label="item.deptName"
+                        :value="item.deptCode"
+                      >
+                      </el-option>
+                    </el-select> </el-form-item
+                ></el-col>
+              </el-row>
+              <el-row>
+                <el-col :span="20"
+                  ><el-form-item label="閫傜敤鐥呭尯" prop="region">
+                    <el-select
+                      v-model="tempbelongWards"
+                      style="width: 400px"
+                      size="medium"
+                      multiple
+                      filterable
+                      placeholder="璇烽�夋嫨绉戝"
+                    >
+                      <el-option
+                        class="ruleFormaa"
+                        v-for="item in belongWards"
+                        :key="item.districtCode"
+                        :label="item.districtName"
+                        :value="item.districtCode"
+                      >
+                      </el-option>
+                    </el-select> </el-form-item
+                ></el-col>
+              </el-row>
+
+              <div class="xinz-infs">
+                <el-form-item>
+                  <template #label>
+                    閫傜敤鐤剧梾
+                    <el-tooltip
+                      class="item"
+                      effect="light"
+                      content="閫夋嫨濂介�傜敤鐤剧梾鍚庯紝鍙互鏂逛究鎮ㄩ�氳繃鐤剧梾璇婃柇鏌ユ壘鍒板搴旂殑鐥呬汉!"
+                      placement="top-start"
+                    >
+                      <i class="el-icon-warning-outline"></i>
+                    </el-tooltip>
+                  </template>
+
+                  <el-tag
+                    v-for="tag in illnesslist"
+                    :key="tag.icdid"
+                    type="warning"
+                    :disable-transitions="false"
+                  >
+                    {{ tag.icdname }}
+                  </el-tag>
+                  <!-- <el-tag v-if="hasMore" type="info">+{{ remaining }} more</el-tag> -->
+                </el-form-item>
+              </div>
+              <el-form-item label="闂嵎鎻忚堪" prop="description">
+                <el-input
+                  type="textarea"
+                  :rows="2"
+                  placeholder="璇疯緭鍏ュ唴瀹�"
+                  v-model="objyl.description"
                 >
-                  {{ items.optioncontent }}
-                </el-checkbox>
-              </el-checkbox-group>
-            </div>
-          </div>
-          <!-- 濉┖ -->
-          <div
-            class="scriptTopic-dev"
-            :key="item.sort"
-            v-if="item.scriptType == 4"
-          >
-            <div class="dev-text">
-              {{ item.sort }}銆乕闂瓟]<span>{{ item.scriptContent }}</span>
-            </div>
-            <div class="dev-xx">
-              <el-input placeholder="璇疯緭鍏ョ瓟妗�" v-model="radioas" clearable>
-              </el-input>
-            </div>
-          </div>
-        </div>
-      </div>
+                </el-input
+              ></el-form-item>
+
+              <el-form-item label="闂嵎缁撴潫璇�" prop="conclusion">
+                <el-input
+                  type="textarea"
+                  :rows="2"
+                  placeholder="璇疯緭鍏ュ唴瀹�"
+                  v-model="objyl.conclusion"
+                >
+                </el-input
+              ></el-form-item>
+            </el-form></div
+        ></el-tab-pane>
+        <el-tab-pane label="闂灞曠ず"
+          ><div class="preview-left">
+            <div v-for="item in questionList">
+              <!-- 鍗曢�� -->
+              <div
+                class="scriptTopic-dev"
+                :key="item.sort"
+                v-if="item.scriptType == 1"
+              >
+                <div class="dev-text">
+                  {{ item.sort }}銆乕鍗曢�塢<span>{{ item.scriptContent }}</span>
+                </div>
+                <div class="dev-xx">
+                  <el-radio-group v-model="item.remark">
+                    <el-radio
+                      v-for="(items, index) in item.svyLibTemplateTargetoptions"
+                      :key="index"
+                      :label="index"
+                      >{{ items.optioncontent }}</el-radio
+                    >
+                  </el-radio-group>
+                </div>
+              </div>
+              <!-- 澶氶�� -->
+              <div
+                class="scriptTopic-dev"
+                :key="item.sort"
+                v-if="item.scriptType == 2"
+              >
+                <div class="dev-text">
+                  {{ item.sort }}銆乕澶氶�塢<span>{{ item.scriptContent }}</span>
+                </div>
+                <div class="dev-xx">
+                  <el-checkbox-group v-model="qremark">
+                    <el-checkbox
+                      v-for="(items, index) in item.svyLibTemplateTargetoptions"
+                      :key="index"
+                      :label="index"
+                    >
+                      {{ items.optioncontent }}
+                    </el-checkbox>
+                  </el-checkbox-group>
+                </div>
+              </div>
+              <!-- 濉┖ -->
+              <div
+                class="scriptTopic-dev"
+                :key="item.sort"
+                v-if="item.scriptType == 4"
+              >
+                <div class="dev-text">
+                  {{ item.sort }}銆乕闂瓟]<span>{{ item.scriptContent }}</span>
+                </div>
+                <div class="dev-xx">
+                  <el-input
+                    placeholder="璇疯緭鍏ョ瓟妗�"
+                    v-model="item.radioas"
+                    clearable
+                  >
+                  </el-input>
+                </div>
+              </div>
+            </div></div
+        ></el-tab-pane>
+      </el-tabs>
+
       <span slot="footer" class="dialog-footer">
-        <!-- <el-button @click="previewGo">鍓嶅線妯℃澘璇︽儏淇敼</el-button> -->
-        <el-button type="primary" @click="previewFn">纭浣跨敤</el-button>
+        <!-- <el-button @click="previewGo">淇濆瓨妯℃澘璇︽儏淇敼</el-button> -->
+        <el-button type="primary" @click="Departmenttreatment"
+          >淇濆瓨浣跨敤</el-button
+        >
       </span>
     </el-dialog>
     <el-drawer
@@ -535,7 +816,7 @@
               <el-form-item label="闂嵎鍚嶇О">
                 <el-input v-model="topqueryParams.svyname"></el-input>
               </el-form-item>
-              <el-form-item label="閫傜敤褰㈠紡" prop="status">
+              <!-- <el-form-item label="閫傜敤褰㈠紡" prop="status">
                 <el-select v-model="topqueryParams.topica" placeholder="璇烽�夋嫨">
                   <el-option
                     v-for="item in taskoptions"
@@ -545,7 +826,7 @@
                   >
                   </el-option>
                 </el-select>
-              </el-form-item>
+              </el-form-item> -->
               <el-form-item>
                 <el-button
                   type="primary"
@@ -597,12 +878,15 @@
   getQtemplatelist,
   getQtemplateobj,
   TaskQuestioncomit,
+  deleteTaskQuestioncomit,
   Questionnairetaskgetson,
-  gethetaskinfo,
-  delhetaskinfo,
+  getTaskQuestioncomit,
+  depthospgetson,
+  getillness,
   Editsingletask,
+  getQtemplateclassify,
+  depthospgetsonlist,
 } from "@/api/AiCentre/index";
-import { listDept } from "@/api/system/dept";
 
 import SFtable from "@/components/SFtable"; //琛ㄦ牸缁勪欢
 
@@ -615,8 +899,13 @@
       id: "", //
       previewid: "", //浠诲姟妯℃澘浼犻�抜d
       libName: "",
+      objyl: {},
       overallCase: [], //閫夋嫨鎮h�呮��
       allpids: [],
+      appraiselist: [],
+      optionsclass: [],
+      illnesslist: [],
+      mode: [],
       libId: null, //妯℃澘搴撴ā鏉縤d
       Editprogress: 1, //缂栬緫杩涘害
       drawermb: false, //閫夋嫨妯℃澘寮圭獥
@@ -628,33 +917,45 @@
       checkboxlist: [],
       tableLabel: [],
       questionList: [],
+      usable: [
+        { value: "0", label: "鍙敤" },
+        { value: "1", label: "鍋滅敤" },
+      ],
+      required: [
+        { value: "1", label: "蹇呭~" },
+        { value: "2", label: "涓嶅繀濉�" },
+      ],
+      props: { multiple: true, value: "deptCode", label: "deptName" },
+      propstask: { value: "deptCode", label: "deptName" },
       // 鎮h�呰〃鍗�
       tableLabelhz: [
         { label: "鍑洪櫌鏃ユ湡", width: "150", prop: "inhosptime" },
-          { label: "鎮h��", width: "", prop: "name" },
-          { label: "韬唤璇�", width: "200", prop: "idcardno" },
-          { label: "鎬у埆", width: "", prop: "sex" },
-          { label: "骞撮緞", width: "", prop: "age" },
-          { label: "鍖荤敓", width: "", prop: "drname" },
-          { label: "绉戝", width: "240", prop: "deptname" },
-          { label: "鐥呭尯", width: "240", prop: "leavehospitaldistrictname" },
+        { label: "鎮h��", width: "", prop: "name" },
+        { label: "韬唤璇�", width: "200", prop: "idcardno" },
+        { label: "鎬у埆", width: "", prop: "sex" },
+        { label: "骞撮緞", width: "", prop: "age" },
+        { label: "璐d换鎶ゅ+", width: "", prop: "nurseName" },
+        { label: "涓绘不鍖荤敓", width: "", prop: "drname" },
+        { label: "绉戝", width: "240", prop: "dept" },
+        { label: "鐥呭尯", width: "240", prop: "leavehospitaldistrictname" },
       ],
       // 鎮h�呰〃鍗�
       tableLabelhzwb: [
-      { label: "鍑洪櫌鏃ユ湡", width: "150", prop: "inhosptime" },
-          { label: "鎮h��", width: "", prop: "name" },
-          { label: "韬唤璇�", width: "200", prop: "sfzh" },
-          { label: "鎬у埆", width: "", prop: "sex" },
-          { label: "骞撮緞", width: "", prop: "age" },
-          { label: "鍖荤敓", width: "", prop: "drname" },
-          { label: "绉戝", width: "180", prop: "deptName" },
-          { label: "鐥呭尯", width: "150", prop: "leavehospitaldistrictname" },
+        { label: "鍑洪櫌鏃ユ湡", width: "150", prop: "endtime" },
+        { label: "鎮h��", width: "", prop: "name" },
+        { label: "韬唤璇�", width: "200", prop: "sfzh" },
+        { label: "鎬у埆", width: "", prop: "sex" },
+        { label: "骞撮緞", width: "", prop: "age" },
+        { label: "鍑洪櫌澶╂暟", width: "", prop: "endDay" },
+        { label: "璐d换鎶ゅ+", width: "", prop: "nurseName" },
+        { label: "涓绘不鍖荤敓", width: "", prop: "drname" },
+        { label: "绉戝", width: "180", prop: "deptName" },
+        { label: "鐥呭尯", width: "150", prop: "leavehospitaldistrictname" },
       ],
 
       tableLabelwj: [
-        { label: "搴忓彿", width: "", prop: "svyid" },
-        { label: "闂嵎鍚嶇О", width: "", prop: "svyname" },
-        { label: "闂嵎姒傝堪", width: "", prop: "description" },
+        { label: "闂嵎鏍囬", width: "", prop: "svyname" },
+        { label: "闂嵎鎻忚堪", width: "", prop: "description" },
         { label: "淇敼鏃ユ湡", width: "", prop: "updateTime" },
         { label: "鍒涘缓浜�", width: "", prop: "createBy" },
       ],
@@ -696,7 +997,7 @@
       patientqueryParams: {
         pageNum: 1, //
         pageSize: 10,
-        topica:0,//0鍏ㄩ儴1绉戝2鐥呭尯
+        topica: 0, //0鍏ㄩ儴1绉戝2鐥呭尯
       },
       topicoptions: [{ children: [{ children: [] }] }],
       showSearch: true, //
@@ -715,6 +1016,10 @@
       patientuserList: [], //閫夋嫨鎮h�呭垪琛�
       sonuserList: [], //閫変腑鎮h�呭垪琛�
       delvariableList: [], //鍒犻櫎鍙橀噺涓存椂瀛樺偍
+      longtype: [
+        { value: 0, label: "鏅�氫换鍔�" },
+        { value: 1, label: "闀挎湡浠诲姟" },
+      ],
       variableList: [
         {
           name: "濮撳悕",
@@ -761,16 +1066,21 @@
       form: {
         patTaskRelevances: [],
         sendType: 1,
+        longTask: 0,
         templatename: "",
         templateid: null,
         libtemplateid: null,
-        kcb:'浜茬埍鐨勬偅鑰�-瀹跺睘锛屾偍濂斤紒鎴戜滑鏄禉涓尰澶т簩闄㈢殑鍖绘姢浜哄憳锛屼负浜嗘洿濂藉湴浜嗚В鎮ㄧ殑搴峰鎯呭喌锛岃鎮ㄦ娊涓�鐐瑰疂璐垫椂闂达紝瀹屾垚杩欎唤闅忚闂嵎銆�',
-        jsy:'璇锋偍娉ㄦ剰浼戞伅鍜岃惀鍏伙紝鐢熸椿涓婅鍔抽�哥粨鍚堬紝閫傚綋閿荤偧锛屾垝鐑熼檺閰掞紝淇濇寔蹇冩儏鑸掔晠锛屽畾鏈熷璇娿�傞偅鏈鍥炶灏卞埌杩欓噷锛岀鎮ㄨ韩浣撳仴搴凤紒',
+        kcb: "浜茬埍鐨勬偅鑰�/瀹跺睘锛屾偍濂斤紒鎴戜滑鏄禉涓尰澶т簩闄㈢殑鍖绘姢浜哄憳锛屼负浜嗘洿濂藉湴浜嗚В鎮ㄧ殑搴峰鎯呭喌锛岃鎮ㄦ娊涓�鐐瑰疂璐垫椂闂达紝瑙傜湅杩欎唤瀹f暀璧勮銆�",
+        jsy: "璇锋偍娉ㄦ剰浼戞伅鍜岃惀鍏伙紝鐢熸椿涓婅鍔抽�哥粨鍚堬紝閫傚綋閿荤偧锛屾垝鐑熼檺閰掞紝淇濇寔蹇冩儏鑸掔晠锛屽畾鏈熷璇娿�傞偅鏈瀹f暀鍐呭灏卞埌杩欓噷锛岀鎮ㄨ韩浣撳仴搴凤紒",
       },
       taskoptions: [
         {
           value: "1",
           label: "鍑洪櫌鐥呬汉",
+        },
+        {
+          value: "4",
+          label: "鍦ㄩ櫌鐥呬汉",
         },
         {
           value: "2",
@@ -784,7 +1094,7 @@
       source: [
         {
           value: 0,
-          label: "鎵�鏈夋偅鑰�",
+          label: "鎵�灞炴偅鑰�",
         },
         {
           value: 1,
@@ -831,6 +1141,15 @@
           label: "鍏朵粬閫氱煡",
         },
       ],
+      // 绉戝/鐥呭尯
+      belongWards: [],
+      belongWards: [],
+      deptlist: [],
+      hosplist: [],
+      tempDetpRelevanceslist: [], //绉戝鏁版嵁
+      tempDetpRelevanceslistform: [], //绉戝鏁版嵁
+      tempbelongWards: [], //鐥呭尯鏁版嵁
+      tempbelongWardsform: [], //鐥呭尯鏁版嵁
       rules: {
         taskName: [
           { required: true, message: "浠诲姟鍚嶇О涓嶈兘涓虹┖", trigger: "blur" },
@@ -841,12 +1160,14 @@
             trigger: "blur",
           },
         ],
-        taskDesc: [
-          { required: true, message: "浠诲姟鎻忚堪涓嶈兘涓虹┖", trigger: "blur" },
-        ],
         sendType: [
           { required: true, message: "鍙戦�佽缃笉鑳戒负绌�", trigger: "blur" },
         ],
+      },
+      // 绉戝闄㈠尯鏌ヨ鍏ュ弬
+      queryParamsdept: {
+        tempid: "",
+        type: 11,
       },
       quote: false,
       serviceType: null,
@@ -855,20 +1176,25 @@
   components: { SFtable },
 
   created() {
+    this.appraiselist = store.getters.appraiselist;
+    this.belongWards = store.getters.belongWards;
+    this.belongDepts = store.getters.belongDepts;
+    this.mode = store.getters.Askmode;
     this.id = this.$route.query.id;
+    this.newadd = this.$route.query.newadd;
     this.form.type = this.$route.query.type;
     this.form.typename = this.$route.query.typename;
     this.serviceType = Number(this.$route.query.serviceType);
     this.form.serviceType = Number(this.$route.query.serviceType);
-    this.listDept();
     this.Acquisitiontype();
     this.Getdetails();
+    this.getQtemplateclassify();
   },
   activated() {
     if (this.id != this.$route.query.id) {
-      this.listDept();
       this.Acquisitiontype();
       this.Getdetails();
+      this.getQtemplateclassify();
     }
   },
 
@@ -906,7 +1232,7 @@
       let queryParams = {
         pageNum: this.topqueryParams.pageNum,
         pageSize: this.topqueryParams.pageSize,
-        isavailable: "",
+        isenable: "",
       };
       this.currenttype = this.$route.query.type;
       this.title = "闂嵎鍐呭鍒楄〃";
@@ -1025,8 +1351,6 @@
     },
     // 淇濆瓨
     submitForm(formName) {
-      console.log(this.form.patTaskRelevances,'1.patTaskRelevances');
-      console.log(this.overallCase,'this.form.overallCase');
       if (this.time4 && this.form.sendType == 3)
         this.form.showTimeMorn = this.time4;
       this.form.sendTimeslot = [
@@ -1042,7 +1366,7 @@
         this.$modal.msgError("璇烽�夋嫨鏈嶅姟绫诲瀷");
         return;
       }
-      if (!this.form.patTaskRelevances[0]) {
+      if (!this.form.patTaskRelevances[0] && !this.form.longTask) {
         this.$modal.msgError("璇烽�夋嫨鐥呬汉");
         return;
       }
@@ -1051,11 +1375,13 @@
         return;
       }
       if ((this.form.sendType == 1 && this.time1) || this.form.sendType == 2) {
-      } else if (this.form.sendType == 3 && this.time4) {
+      } else if (
+        (this.form.sendType == 3 && this.time4) ||
+        this.form.longTask
+      ) {
       } else {
         return this.$modal.msgError("鏃堕棿淇℃伅缂哄け");
       }
-      console.log(this.form.patTaskRelevances,'2.patTaskRelevances');
       const filteredArray = this.variableList.filter(
         (item) =>
           item.name !== "濮撳悕" && item.name !== "鐢佃瘽" && item.name !== "鍦板潃"
@@ -1070,12 +1396,19 @@
         this.form.type = this.$route.query.type;
       }
       this.form.serviceType = this.serviceType;
+      this.form.leaveldeptcodes = store.getters.belongDepts.map(
+        (obj) => obj.deptCode
+      );
+      this.form.leavehospitaldistrictcodes = store.getters.belongWards.map(
+        (obj) => obj.districtCode
+      );
       Editsingletask(this.form).then((res) => {
         if (res.code == 200) {
           if (this.form.taskid) {
-            this.$modal.msgSuccess("鏂板鎴愬姛");
-          } else {
             this.$modal.msgSuccess("淇敼鎴愬姛");
+          } else {
+            this.puttaskid(res.data);
+            this.$modal.msgSuccess("鏂板鎴愬姛");
           }
           this.$router.push({
             path: "/followvisit/tasklist",
@@ -1084,19 +1417,46 @@
         }
       });
     },
+    // 缁欎换鍔℃ā鏉胯祴鍊间换鍔d
+    puttaskid(data) {
+      getTaskQuestioncomit(this.form.templateid).then((res) => {
+        if (res.code == 200) {
+          this.objyl = res.data;
+          this.objyl.isoperation = 2;
+          this.objyl.taskid = data.taskId;
+          TaskQuestioncomit(this.objyl).then((response) => {
+            this.previewtf = false;
+            this.form.libtemplateid = this.objyl.svyid;
+            this.form.templateid = response.data;
+            // this.putbelongDepts(response.data);
+            this.form.templatename = this.objyl.svyname;
+            this.$modal.msgSuccess("閫夋嫨妯℃澘鎴愬姛");
+          });
+        }
+      });
+    },
     // ----------------------琛ㄦ牸瀛愮粍浠朵簨浠�
 
-    // 纭閫夋嫨妯℃澘鏀惧叆浠诲姟妯℃澘
+    // 閫夋嫨棰勮
     selectfn(row, type) {
       // 妯℃澘鎯呭喌涓嬭幏鍙栨ā鏉夸俊鎭�
       if (type == 1) {
         this.libName = row.svyname;
         this.libId = row.svyid;
-        this.Tasktemplate = row;
         this.questionList = row.svyTemplateLibScripts;
         getQtemplateobj({ svyid: row.svyid }).then((res) => {
           if (res.code == 200) {
+            this.objyl = res.rows[0];
+            if (this.form.longTask) {
+              this.objyl.longTemp = 1;
+            }
+            this.queryParamsdept.type = 1;
+            this.queryParamsdept.tempid = row.svyid;
+            this.listDept();
+
+            this.objyl.suitway = this.objyl.suitway.split(",");
             this.questionList = res.rows[0].svyTemplateLibScripts;
+            this.getillness(row.svyid);
             this.previewtf = true;
           }
         });
@@ -1109,14 +1469,37 @@
     },
     // 棰勮
     previewfnmb() {
-      console.log(this.form);
-
-      getQtemplateobj({ svyid: this.form.libtemplateid }).then((res) => {
+      getTaskQuestioncomit(this.form.templateid).then((res) => {
         if (res.code == 200) {
-          this.questionList = res.rows[0].svyTemplateLibScripts;
+          console.log(res, "棰勮鏁版嵁");
+          this.objyl = res.data;
+          if (this.objyl.suitway)
+            this.objyl.suitway = this.objyl.suitway.split(",");
+          this.queryParamsdept.tempid = this.form.templateid;
+          this.queryParamsdept.type = 11;
+          this.getillness(this.form.libtemplateid);
+          // 鎵ц鑾峰彇璇ヤ换鍔℃ā鏉縤d
+          this.listDept();
           this.previewtf = true;
+          getQtemplateobj({ svyid: this.form.libtemplateid }).then((res) => {
+            if (res.code == 200) {
+              this.questionList = res.rows[0].svyTemplateLibScripts;
+              this.objyl.svyTemplateLibScripts =
+                res.rows[0].svyTemplateLibScripts;
+            }
+          });
         }
       });
+    },
+    getillness(id) {
+      if (id) {
+        getillness({ outid: id, type: 5 }).then((res) => {
+          this.illnesslist = res.rows;
+          this.illnesslist.forEach((item) => {
+            item.icdname = item.icd10name;
+          });
+        });
+      }
     },
     // 澶勭悊闂灞傚彉閲�
     Variablehandling(arr, type) {
@@ -1135,7 +1518,6 @@
             }
           });
         });
-        console.log(Variablist, "Variablist");
         const Aarr = Variablist.filter(
           (obj, index, self) =>
             index ===
@@ -1148,44 +1530,74 @@
     },
     // 瀛愪换鍔′簩绾у脊妗�
     handleAddpatient(row) {
-      console.log(this.overallCase, "ssaaa");
       this.allpids = [];
       this.overallCase.forEach((item) => {
         this.allpids.push(item.patid);
       });
       if (this.patientqueryParams.allhosp == 1) {
         this.tableLabelhz = [
-          { label: "鍑洪櫌鏃ユ湡", width: "150", prop: "inhosptime" },
+          // { label: "鍏ラ櫌鏃ユ湡", width: "170", prop: "starttime" },
+          { label: "鍑洪櫌鏃ユ湡", width: "150", prop: "endtime" },
           { label: "鎮h��", width: "", prop: "name" },
           { label: "韬唤璇�", width: "200", prop: "idcardno" },
           { label: "鎬у埆", width: "", prop: "sex" },
           { label: "骞撮緞", width: "", prop: "age" },
+          { label: "鍑洪櫌澶╂暟", width: "", prop: "endDay" },
+          { label: "璐d换鎶ゅ+", width: "", prop: "nurseName" },
           { label: "鍖荤敓", width: "", prop: "drname" },
-          { label: "绉戝", width: "180", prop: "deptname" },
+          { label: "绉戝", width: "180", prop: "dept" },
           { label: "鐥呭尯", width: "150", prop: "leavehospitaldistrictname" },
         ];
-      } else if (this.patientqueryParams.allhosp == 2) {
+      } else if (this.patientqueryParams.allhosp == 4) {
         this.tableLabelhz = [
+        { label: "鍏ラ櫌鏃ユ湡", width: "150", prop: "starttime" },
           { label: "鎮h��", width: "", prop: "name" },
+          { label: "韬唤璇�", width: "200", prop: "idcardno" },
           { label: "鎬у埆", width: "", prop: "sex" },
           { label: "骞撮緞", width: "", prop: "age" },
-          { label: "璇婃柇", width: "", prop: "diagname" },
-          { label: "绉戝", width: "", prop: "deptname" },
-        { label: "鐥呭尯", width: "", prop: "leavehospitaldistrictname" },
-          { label: "鍏ラ櫌鏃ユ湡", width: "", prop: "inhosptime" },
-          { label: "鍒涘缓浜�", width: "", prop: "createBy" },
+          { label: "鍑洪櫌澶╂暟", width: "", prop: "endDay" },
+          { label: "璐d换鎶ゅ+", width: "", prop: "nurseName" },
+          { label: "鍖荤敓", width: "", prop: "drname" },
+          { label: "绉戝", width: "180", prop: "dept" },
+          { label: "鐥呭尯", width: "150", prop: "leavehospitaldistrictname" },
         ];
       }
       if (this.allpids[0]) {
         this.patientqueryParams.pids = this.allpids;
-        console.log(this.patientqueryParams.pids);
       } else {
         this.patientqueryParams.pids = null;
       }
+      // 绫诲瀷鍒ゆ柇
+      if (this.patientqueryParams.allhosp == 1) {
+        this.patientqueryParams.cry = 1;
+      } else if (this.patientqueryParams.allhosp == 4) {
+        this.patientqueryParams.cry = 0;
+      }
+      // 鏉ユ簮鍒ゆ柇
 
+      if (this.patientqueryParams.searchscope == 1) {
+        this.patientqueryParams.leaveldeptcodes = store.getters.belongDepts.map(
+          (obj) => obj.deptCode
+        );
+        this.patientqueryParams.leavehospitaldistrictcodes = [];
+      } else if (this.patientqueryParams.searchscope == 2) {
+        this.patientqueryParams.leavehospitaldistrictcodes =
+          store.getters.belongWards.map((obj) => obj.districtCode);
+        this.patientqueryParams.leaveldeptcodes = [];
+      } else {
+        this.patientqueryParams.leaveldeptcodes = store.getters.belongDepts.map(
+          (obj) => obj.deptCode
+        );
+        this.patientqueryParams.leavehospitaldistrictcodes =
+          store.getters.belongWards.map((obj) => obj.districtCode);
+      }
       getTaskpatient(this.patientqueryParams).then((response) => {
-        console.log(response);
         this.patientuserList = response.rows;
+        this.patientuserList.forEach((item) => {
+          if (item.endtime) {
+            item.endDay = this.daysBetween(item.endtime);
+          }
+        });
         this.patienttotal = response.total;
         this.loading = false;
         this.Restorecheck();
@@ -1197,7 +1609,6 @@
     handleExport() {},
     // 閫夋嫨鎮h�呰〃鏁版嵁
     handleSelectionChange(selection) {
-      console.log("澶氶�夋偅鑰�",selection);
       this.SelectPatientslist = structuredClone(selection);
       this.multiple = !selection.length;
 
@@ -1210,27 +1621,22 @@
           item.hospType = this.patientqueryParams.allhosp;
           item.sfzh = item.idcardno;
           item.deptCode = item.deptcode;
-          item.deptName = item.deptname;
+          item.deptName = item.dept;
           item.admindate = item.inhosptime;
           item.sfzh = item.idcardno;
-          console.log(item);
           this.overallCase.push(item);
           this.form.patTaskRelevances.push(item);
-          console.log(this.form.patTaskRelevances,'patTaskRelevances');
         }
       });
     },
     // 鍒囨崲椤靛悗鎭㈠閫変腑
     Restorecheck() {
-      console.log(this.overallCase, "this.overallCase");
       const allid = this.overallCase.map((item) => item.patid);
       const overlap = this.patientuserList.filter((value) => {
         return allid.includes(value.patid);
       });
       // 淇濇寔ids鍜屽綋鍓嶉〉闈㈢殑鍚屾鎬�
       this.SelectPatientslist = overlap;
-      console.log(this.SelectPatientslist, "杩涘叆鍒嗛〉SelectPatientslist");
-
       this.toggleSelection(overlap);
     },
     // 鎸傝浇閫夋嫨鐘舵��
@@ -1243,7 +1649,6 @@
           });
           this.decision = false;
         });
-        console.log(123);
       } else {
         this.$refs.multipleTable.clearSelection();
       }
@@ -1262,18 +1667,18 @@
     },
     getList() {},
     handleQuery() {
-      // if (this.patientqueryParams.topica == 0) {
-      //   this.patientqueryParams.leavehospitaldistrictcodes =
-      //     store.getters.leavehospitaldistrictcodes;
-      //   this.patientqueryParams.leaveldeptcodes = store.getters.leaveldeptcodes;
-      // } else if (this.patientqueryParams.topica == 1) {
-      //   this.patientqueryParams.leavehospitaldistrictcodes = null;
-      //   this.patientqueryParams.leaveldeptcodes = store.getters.leaveldeptcodes;
-      // } else if (this.patientqueryParams.topica == 2) {
-      //   this.patientqueryParams.leavehospitaldistrictcodes =
-      //     store.getters.leavehospitaldistrictcodes;
-      //   this.patientqueryParams.leaveldeptcodes = null;
-      // }
+      if (this.patientqueryParams.topica == 0) {
+        this.patientqueryParams.leavehospitaldistrictcodes =
+          store.getters.leavehospitaldistrictcodes;
+        this.patientqueryParams.leaveldeptcodes = store.getters.leaveldeptcodes;
+      } else if (this.patientqueryParams.topica == 1) {
+        this.patientqueryParams.leavehospitaldistrictcodes = null;
+        this.patientqueryParams.leaveldeptcodes = store.getters.leaveldeptcodes;
+      } else if (this.patientqueryParams.topica == 2) {
+        this.patientqueryParams.leavehospitaldistrictcodes =
+          store.getters.leavehospitaldistrictcodes;
+        this.patientqueryParams.leaveldeptcodes = null;
+      }
       this.handleAddpatient();
     },
     resetQuery() {},
@@ -1307,9 +1712,10 @@
         templatename: "",
         templateid: null,
         libtemplateid: null,
-        kcb:'浜茬埍鐨勬偅鑰�-瀹跺睘锛屾偍濂斤紒鎴戜滑鏄禉涓尰澶т簩闄㈢殑鍖绘姢浜哄憳锛屼负浜嗘洿濂藉湴浜嗚В鎮ㄧ殑搴峰鎯呭喌锛岃鎮ㄦ娊涓�鐐瑰疂璐垫椂闂达紝瀹屾垚杩欎唤闅忚闂嵎銆�',
-        jsy:'鐢熸椿涓婅鍔抽�哥粨鍚堬紝娉ㄦ剰浼戞伅鍜岃惀鍏伙紝閫傚綋閿荤偧锛屾垝鐑熼檺閰掞紝淇濇寔蹇冩儏鑸掔晠锛屽畾鏈熷璇娿�傞偅鏈鍥炶灏卞埌杩欓噷锛岀鎮ㄨ韩浣撳仴搴凤紒',
+        kcb: "浜茬埍鐨勬偅鑰�/瀹跺睘锛屾偍濂斤紒鎴戜滑鏄禉涓尰澶т簩闄㈢殑鍖绘姢浜哄憳锛屼负浜嗘洿濂藉湴浜嗚В鎮ㄧ殑搴峰鎯呭喌锛岃鎮ㄦ娊涓�鐐瑰疂璐垫椂闂达紝瀹屾垚杩欎唤闅忚闂嵎銆�",
+        jsy: "璇锋偍娉ㄦ剰浼戞伅鍜岃惀鍏伙紝鐢熸椿涓婅鍔抽�哥粨鍚堬紝閫傚綋閿荤偧锛屾垝鐑熼檺閰掞紝淇濇寔蹇冩儏鑸掔晠锛屽畾鏈熷璇娿�傞偅鏈鍥炶灏卞埌杩欓噷锛岀鎮ㄨ韩浣撳仴搴凤紒",
       };
+
       this.questionList = [];
       if (this.id) {
         Questionnairetaskgetson({ taskid: this.id }).then((res) => {
@@ -1322,13 +1728,17 @@
               : [];
             this.overallCase = this.form.patTaskRelevances.concat();
             this.checkList = this.form.preachform.split(",");
-            console.log(this.form, "this.form");
+
+            this.overallCase.forEach((item) => {
+              if (item.endtime) {
+                item.endDay = this.daysBetween(item.endtime);
+              }
+            });
             if (this.form.showDate)
               this.daytime = this.form.showDate.split(",");
             if (this.form.showTimeMorn) {
               if (this.form.sendType == 3) {
                 this.time4 = this.form.showTimeMorn;
-                console.log(1122);
               } else {
                 this.time1 = this.form.showTimeMorn.split(",");
               }
@@ -1337,20 +1747,54 @@
               this.time2 = this.form.showTimeNoon.split(",");
             if (this.form.showTimeNight)
               this.time3 = this.form.showTimeNight.split(",");
-            console.log(1122);
             filteredArray = this.convertFormat1ToFormat2(this.form.textParam);
             this.variableList = this.transitionList.concat(filteredArray);
           } else {
             this.$modal.msgError(res.code);
           }
+
+        if (this.newadd) {
+          this.neWaddfn();
+        }
         });
       }
     },
+    // 渚濈収鏂板鏃跺鐞�
+    neWaddfn(){
+      this.id=null;
+      this.form.taskName='';
+      this.form.taskName='';
+      this.overallCase=[];
+      this.form.patTaskRelevances=[];
+      this.daytime=[]; //鏃ユ湡
+      this.applydaytime=[]; //璁$畻鏃ユ湡
+      this.time1=""; //涓婂崍鏃堕棿娈�
+      this.time2=""; //涓嬪崍鏃堕棿娈�
+      this.time3=""; //鏅氫笂鏃堕棿娈�
+      this.time4=""; //鏅氫笂鏃堕棿娈�
+    },
     // 鑾峰彇绉戝鍒楄〃
     listDept() {
-      listDept().then((res) => {
-        this.topicoptions = this.handleTree(res.data, "deptId");
-        console.log(this.topicoptions, "topicoptions");
+      this.tempDetpRelevanceslist = [];
+      this.tempbelongWards = [];
+      depthospgetsonlist(this.queryParamsdept).then((res) => {
+        if (res.code == 200) {
+          let arr = res.rows;
+          arr.forEach((item) => {
+            if (item.deptType == 1) {
+              this.deptlist.push(item);
+              this.tempDetpRelevanceslist.push(item.deptCode);
+            } else if (item.deptType == 2) {
+              this.hosplist.push(item);
+              this.tempbelongWards.push(item.deptCode);
+            }
+          });
+        }
+      });
+    },
+    getQtemplateclassify() {
+      getQtemplateclassify({}).then((res) => {
+        this.optionsclass = res.rows;
       });
     },
     // 鏂板娲鹃�佹偅鑰�
@@ -1367,18 +1811,14 @@
       this.variableList.splice(index, 1);
       row.isoperation = 3;
       this.delvariableList.push(row);
-      console.log(index, row);
     },
     // 鏃堕棿----------
     changeTime(row) {
-      console.log(row, "鏃堕棿");
       this.processingTime();
     },
     Totaldate(row) {
-      console.log(row, "鏃堕棿");
       this.form.sendTimeslot = [{ begantime: row, endtime: row, xh: 1 }];
       this.form.showTimeMorn = row;
-      console.log(this.form.sendTimeslot, "鏃堕棿");
     },
     changeTimeday(row) {
       const startDate = new Date(row[0]);
@@ -1447,30 +1887,68 @@
         query: { id: this.previewid, task: true, data: this.form },
       });
     },
+    // 淇濆瓨/鏇存柊浠诲姟妯℃澘
     previewFn() {
-      let id = this.Tasktemplate.id;
-      this.Tasktemplate.id = null;
-      console.log(this.Tasktemplate);
-
-      this.Tasktemplate.svyTemplateLibScripts.forEach((item) => {
+      if (Array.isArray(this.objyl.suitway)) {
+        this.objyl.suitway = this.objyl.suitway.join(",");
+      }
+      this.objyl.svyTemplateLibScripts.forEach((item) => {
         item.svyTaskTemplateTargetoptions = item.svyLibTemplateTargetoptions;
       });
-      this.Tasktemplate.svyTaskTemplateScriptVOS =
-        this.Tasktemplate.svyTemplateLibScripts;
-      this.Tasktemplate.templateid = id;
-      this.Tasktemplate.isoperation = 1;
-      TaskQuestioncomit(this.Tasktemplate).then((response) => {
-        this.previewtf = false;
-        this.form.templateid = response.data;
-        this.form.libtemplateid = this.libId;
-        this.form.templatename = this.libName;
-        this.$modal.msgSuccess("閫夋嫨妯℃澘鎴愬姛");
+      this.objyl.svyTaskTemplateScriptVOS = this.objyl.svyTemplateLibScripts;
+      this.objyl.templateid = this.objyl.svyid;
+
+      this.objyl.isoperation = 1;
+      console.log(this.objyl.id);
+
+      if (this.objyl.id) {
+        deleteTaskQuestioncomit(this.objyl.id).then((res) => {
+          if (res.code == 200) {
+            (this.objyl.id = null),
+              TaskQuestioncomit(this.objyl).then((response) => {
+                this.previewtf = false;
+                this.form.libtemplateid = this.objyl.svyid;
+                this.form.templateid = response.data;
+                this.putbelongDepts(response.data);
+                this.form.templatename = this.objyl.svyname;
+                this.$modal.msgSuccess("閫夋嫨妯℃澘鎴愬姛");
+              });
+          }
+        });
+      } else {
+        TaskQuestioncomit(this.objyl).then((response) => {
+          this.previewtf = false;
+          this.form.libtemplateid = this.objyl.svyid;
+          this.form.templateid = response.data;
+          this.putbelongDepts(response.data);
+          this.form.templatename = this.objyl.svyname;
+          this.$modal.msgSuccess("閫夋嫨妯℃澘鎴愬姛");
+        });
+      }
+    },
+    // 淇濆瓨绉戝/鐥呭尯
+    putbelongDepts(id) {
+      this.tempDetpRelevanceslistform.forEach((item) => {
+        item.tempid = id;
+      });
+      this.tempbelongWardsform.forEach((item) => {
+        item.tempid = id;
+      });
+      depthospgetson(this.tempDetpRelevanceslistform).then((res) => {
+        if (res.code == 200) {
+          this.$modal.msgSuccess("绉戝鏇存柊鎴愬姛");
+          this.tempDetpRelevanceslistform = [];
+        }
+      });
+      depthospgetson(this.tempbelongWardsform).then((res) => {
+        if (res.code == 200) {
+          this.$modal.msgSuccess("鐥呭尯鏇存柊鎴愬姛");
+          this.tempbelongWardsform = [];
+        }
       });
     },
     // 澶勭悊鏈嶅姟褰㈠紡
     formatFn(type) {
-      console.log(this.preachform, "preachform");
-      console.log(this.checkList, "checklist");
       let list = [];
       let formlist = [];
       if (type == 1) {
@@ -1496,6 +1974,33 @@
         });
         this.checkList = list;
       }
+    },
+    // 绉戝澶勭悊
+    Departmenttreatment() {
+      this.tempDetpRelevanceslist.forEach((item) => {
+        this.tempDetpRelevanceslistform.push({
+          deptType: 1,
+          longTemp: this.form.longTask,
+          deptCode: item,
+          tempid: null,
+          type: 11,
+        });
+      });
+
+      this.tempbelongWards.forEach((item) => {
+        this.tempbelongWardsform.push({
+          deptType: 2,
+          longTemp: this.form.longTask,
+          deptCode: item,
+          tempid: null,
+          type: 11,
+        });
+      });
+      console.log(33);
+
+      setTimeout(() => {
+        this.previewFn();
+      }, 1000);
     },
   },
 };
@@ -1574,6 +2079,14 @@
     }
   }
 }
+.xinz-infs {
+  font-size: 18px;
+  line-height: 48px;
+
+  .el-tag + .el-tag {
+    margin-left: 10px;
+  }
+}
 // .leftvlue-jbxx {
 //   margin-bottom: 50px;
 //   font-size: 20px;
@@ -1596,9 +2109,9 @@
   //   margin: 20px;
   padding: 30px;
   background: #ffff;
-  border: 1px solid #dcdfe6;
-  -webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12),
-    0 0 6px 0 rgba(0, 0, 0, 0.04);
+  // border: 1px solid #dcdfe6;
+  // -webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12),
+  //   0 0 6px 0 rgba(0, 0, 0, 0.04);
   .scriptTopic-dev {
     margin-bottom: 25px;
     font-size: 20px !important;
@@ -1668,7 +2181,7 @@
 // }
 ::v-deep.el-radio-group {
   span {
-    font-size: 24px;
+    font-size: 18px;
   }
 }
 ::v-deep.el-input.is-disabled .el-input__inner {
@@ -1679,7 +2192,7 @@
 }
 ::v-deep.el-checkbox-group {
   span {
-    font-size: 24px;
+    font-size: 18px;
   }
 }
 </style>
diff --git a/src/views/repositoryai/intention/index.vue b/src/views/repositoryai/intention/index.vue
index 2622f35..d88f11f 100644
--- a/src/views/repositoryai/intention/index.vue
+++ b/src/views/repositoryai/intention/index.vue
@@ -3,7 +3,7 @@
     <!-- 宸︿晶鏍� -->
     <div class="sidecolumn">
       <div class="sidecolumn-top">
-        <div class="top-wj">鎸囨爣绫诲瀷</div>
+        <div class="top-wj">鎸囨爣鍒嗙被</div>
         <div class="top-tj" @click="dialogFormVisible = true">+娣诲姞</div>
       </div>
       <div class="center-ss">
@@ -152,7 +152,7 @@
                   icon="el-icon-plus"
                   size="medium"
                   @click="handleAdd"
-                  v-hasPermi="['system:user:add']"
+
                   >鏂板</el-button
                 >
               </el-col>
@@ -165,7 +165,7 @@
                   size="medium"
                   :disabled="multiple"
                   @click="handleDelete"
-                  v-hasPermi="['system:user:remove']"
+
                   >鍒犻櫎</el-button
                 >
               </el-col>
@@ -187,8 +187,24 @@
                 prop="id"
               /> -->
               <el-table-column
-                label="鎸囨爣绫诲瀷"
+                label="鎸囨爣鍚嶇О"
                 fixed
+                align="center"
+                key="targetname"
+                prop="targetname"
+                :show-overflow-tooltip="true"
+              >
+              </el-table-column>
+              <el-table-column
+                label="鎸囨爣鎻忚堪"
+                align="center"
+                key="targetdesc"
+                prop="targetdesc"
+                :show-overflow-tooltip="true"
+                width="200"
+              />
+              <el-table-column
+                label="鎸囨爣绫诲瀷"
                 align="center"
                 key="valueType"
                 prop="valueType"
@@ -201,14 +217,7 @@
                   />
                 </template>
               </el-table-column>
-              <el-table-column
-                label="鎸囨爣鍚嶇О"
-                align="center"
-                key="targetname"
-                prop="targetname"
-                :show-overflow-tooltip="true"
-              >
-              </el-table-column>
+
 
               <!-- <el-table-column
                 label="姝e父鍊艰寖鍥�"
@@ -221,13 +230,7 @@
                   <span>{{ scope.row.warnup }}~{{ scope.row.warndown }}</span>
                 </template>
               </el-table-column> -->
-              <el-table-column
-                label="鎸囨爣鎻忚堪"
-                align="center"
-                key="targetdesc"
-                prop="targetdesc"
-                width="200"
-              /><el-table-column
+             <el-table-column
                 label="閫傜敤鍦烘櫙"
                 align="center"
                 key="suitWayList"
@@ -250,7 +253,7 @@
                     size="medium"
                     type="text"
                     @click="illnessUpdate(scope.row)"
-                    v-hasPermi="['system:user:edit']"
+
                     ><span class="button-textxg"
                       ><i class="el-icon-date"></i>璇︽儏</span
                     ></el-button
@@ -287,7 +290,7 @@
                     size="medium"
                     type="text"
                     @click="handleUpdate(scope.row)"
-                    v-hasPermi="['system:user:edit']"
+
                     ><span class="button-textxg"
                       ><i class="el-icon-edit"></i>淇敼</span
                     ></el-button
@@ -305,7 +308,7 @@
                     size="medium"
                     type="text"
                     @click="handleDelete(scope.row)"
-                    v-hasPermi="['system:user:remove']"
+
                     ><span class="button-textsc"
                       ><i class="el-icon-delete"></i>鍒犻櫎</span
                     ></el-button
@@ -353,20 +356,9 @@
                 </el-form-item>
               </el-col>
               <el-col :span="12">
-                <el-form-item label="鐗堟湰鍙�" prop="deptId">
-                  <el-input
-                    v-model="indexform.version"
-                    placeholder="榛樿1.0"
-                    maxlength="40"
-                  />
-                </el-form-item>
-              </el-col>
-            </el-row>
-            <!-- deptOptions -->
-            <el-row v-if="!measurement">
-              <el-col :span="8">
                 <el-form-item label="鎸囨爣鍒嗙被" prop="assortid">
                   <el-select
+                  style="width: 300px;"
                     v-model="indexform.assortid"
                     size="medium"
                     filterable
@@ -386,6 +378,31 @@
                       </el-option>
                     </el-option-group>
                   </el-select>
+                </el-form-item>
+
+              </el-col>
+            </el-row>
+            <el-row v-if="!measurement">
+              <el-col :span="24">
+                <el-form-item label="鎸囨爣鎻忚堪" prop="targetdesc">
+                  <el-input
+                    v-model="indexform.targetdesc"
+                    placeholder="璇疯緭鍏ユ寚鏍囨弿杩�"
+                    id="targetdesc"
+                    @focus="currentInputId = 'targetdesc'"
+                    maxlength="40"
+                  />
+                </el-form-item> </el-col
+            ></el-row>
+            <!-- deptOptions -->
+            <el-row v-if="!measurement">
+              <el-col :span="8">
+                <el-form-item label="鐗堟湰鍙�" prop="deptId">
+                  <el-input
+                    v-model="indexform.version"
+                    placeholder="榛樿1.0"
+                    maxlength="40"
+                  />
                 </el-form-item>
               </el-col>
               <el-col :span="8">
@@ -415,18 +432,7 @@
                 </el-form-item>
               </el-col>
             </el-row>
-            <el-row v-if="!measurement">
-              <el-col :span="24">
-                <el-form-item label="鎸囨爣鎻忚堪" prop="targetdesc">
-                  <el-input
-                    v-model="indexform.targetdesc"
-                    placeholder="璇疯緭鍏ユ寚鏍囨弿杩�"
-                    id="targetdesc"
-                    @focus="currentInputId = 'targetdesc'"
-                    maxlength="40"
-                  />
-                </el-form-item> </el-col
-            ></el-row>
+
             <!-- <el-form-item label="鎻掑叆濉┖" prop="scriptContent">
               <div style="display: flex; margin-bottom: 10px">
                 <div class="tsgname" @click="tsgnameto">鎻掑叆濉┖</div>
@@ -474,7 +480,7 @@
               <el-col :span="24">
                 <el-form-item prop="valueType">
                   <template #label>
-                    鍊肩被鍨�
+                    缁撴灉绫诲瀷
                     <el-tooltip
                       class="item"
                       effect="light"
@@ -495,7 +501,7 @@
             >
             <el-row v-if="!measurement">
               <el-col :span="24">
-                <el-form-item label="棰樼洰绫诲瀷" prop="scriptType">
+                <el-form-item label="閫傜敤棰樺瀷" prop="scriptType">
                   <el-radio-group
                     @input="Changtype"
                     v-model="indexform.scriptType"
@@ -810,10 +816,10 @@
           { required: true, message: "鎸囨爣鎻忚堪涓嶈兘涓虹┖", trigger: "blur" },
         ],
         valueType: [
-          { required: true, message: "鍊肩被鍨嬩笉鑳戒负绌�", trigger: "blur" },
+          { required: true, message: "缁撴灉绫诲瀷涓嶈兘涓虹┖", trigger: "blur" },
         ],
         scriptType: [
-          { required: true, message: "棰樼洰绫诲瀷涓嶈兘涓虹┖", trigger: "blur" },
+          { required: true, message: "閫傜敤棰樺瀷涓嶈兘涓虹┖", trigger: "blur" },
         ],
         suitWayList: [
           { required: true, message: "閫傜敤鍦烘櫙涓嶈兘涓虹┖", trigger: "blur" },
diff --git a/src/views/system/user/index.vue b/src/views/system/user/index.vue
index 70a1b6d..b5c2840 100644
--- a/src/views/system/user/index.vue
+++ b/src/views/system/user/index.vue
@@ -37,10 +37,19 @@
           v-show="showSearch"
           label-width="68px"
         >
-          <el-form-item label="鐢ㄦ埛鍚嶇О" prop="userName">
+          <el-form-item label="鐢ㄦ埛宸ュ彿" prop="userName">
             <el-input
               v-model="queryParams.userName"
-              placeholder="璇疯緭鍏ョ敤鎴峰悕绉�"
+              placeholder="璇疯緭鍏ョ敤鎴峰伐鍙�"
+              clearable
+              style="width: 240px"
+              @keyup.enter.native="handleQuery"
+            />
+          </el-form-item>
+          <el-form-item label="鐢ㄦ埛鏄电О" prop="nickName">
+            <el-input
+              v-model="queryParams.nickName"
+              placeholder="璇疯緭鍏ョ敤鎴锋樀绉�"
               clearable
               style="width: 240px"
               @keyup.enter.native="handleQuery"
@@ -70,7 +79,8 @@
               />
             </el-select>
           </el-form-item>
-          <el-form-item label="鍒涘缓鏃堕棿">
+
+          <!-- <el-form-item label="鍒涘缓鏃堕棿">
             <el-date-picker
               v-model="dateRange"
               style="width: 240px"
@@ -80,7 +90,7 @@
               start-placeholder="寮�濮嬫棩鏈�"
               end-placeholder="缁撴潫鏃ユ湡"
             ></el-date-picker>
-          </el-form-item>
+          </el-form-item> -->
           <el-form-item>
             <el-button
               type="primary"
@@ -174,7 +184,7 @@
             v-if="columns[0].visible"
           />
           <el-table-column
-            label="鐢ㄦ埛鍚嶇О"
+            label="鐢ㄦ埛宸ュ彿"
             align="center"
             key="userName"
             prop="userName"
@@ -304,52 +314,55 @@
               />
             </el-form-item>
           </el-col>
-          <!-- <el-col :span="12">
-            <el-form-item label="褰掑睘閮ㄩ棬" prop="deptId">
-              <treeselect
-                v-model="form.depts"
-                :options="deptOptions"
-                :multiple="true"
-                :show-count="true"
-                placeholder="璇烽�夋嫨褰掑睘閮ㄩ棬"
-              />
+          <el-col :span="12">
+            <el-form-item label="鎮h�呰寖鍥�" prop="status">
+              <el-select
+                v-model="form.searchscope"
+                placeholder="鎮h�呰寖鍥�"
+                clearable
+              >
+                <el-option
+                  v-for="dict in searchscopelist"
+                  :key="dict.value"
+                  :label="dict.label"
+                  :value="dict.value"
+                />
+              </el-select>
             </el-form-item>
-          </el-col> -->
+          </el-col>
         </el-row>
         <el-form-item label="閫傜敤绉戝" prop="region">
-                <el-cascader
-                style="width: 478px"
-                  v-model="form.leaveldeptcodes"
-                  :options="deptOptions"
-                  :props="props"
-                  :show-all-levels="false"
-                  clearable
-                >
-                  <template slot-scope="{ node, data }">
-                    <span>{{ data.label }}</span>
-                    <span v-if="!node.isLeaf">
-                      ({{ data.children.length }})
-                    </span>
-                  </template>
-                </el-cascader>
-              </el-form-item>
-              <el-form-item label="閫傜敤闄㈠尯" prop="region">
-                <el-cascader
-                style="width: 478px"
-                  v-model="form.leavehospitaldistrictcodes"
-                  :options="deptOptions"
-                  :props="props"
-                  :show-all-levels="false"
-                  clearable
-                >
-                  <template slot-scope="{ node, data }">
-                    <span>{{ data.label }}</span>
-                    <span v-if="!node.isLeaf">
-                      ({{ data.children.length }})
-                    </span>
-                  </template>
-                </el-cascader>
-              </el-form-item>
+          <el-cascader
+            style="width: 478px"
+            v-model="form.deptCodes"
+            @remove-tag="removehpsp"
+            :options="deptOptions"
+            :props="props"
+            :show-all-levels="false"
+            clearable
+          >
+            <template slot-scope="{ node, data }">
+              <span>{{ data.label }}</span>
+              <span v-if="!node.isLeaf"> ({{ data.children.length }}) </span>
+            </template>
+          </el-cascader>
+        </el-form-item>
+        <el-form-item label="閫傜敤鐥呭尯" prop="region">
+          <el-cascader
+            style="width: 478px"
+            @remove-tag="removehpsp"
+            v-model="form.wardCodes"
+            :options="deptOptions"
+            :props="props"
+            :show-all-levels="false"
+            clearable
+          >
+            <template slot-scope="{ node, data }">
+              <span>{{ data.label }}</span>
+              <span v-if="!node.isLeaf"> ({{ data.children.length }}) </span>
+            </template>
+          </el-cascader>
+        </el-form-item>
         <el-row>
           <el-col :span="12">
             <el-form-item label="鎵嬫満鍙风爜" prop="phonenumber">
@@ -374,12 +387,12 @@
           <el-col :span="12">
             <el-form-item
               v-if="form.userId == undefined"
-              label="鐢ㄦ埛鍚嶇О"
+              label="鐢ㄦ埛宸ュ彿"
               prop="userName"
             >
               <el-input
                 v-model="form.userName"
-                placeholder="璇疯緭鍏ョ敤鎴峰悕绉�"
+                placeholder="璇疯緭鍏ョ敤鎴峰伐鍙�"
                 maxlength="30"
               />
             </el-form-item>
@@ -426,6 +439,7 @@
             </el-form-item>
           </el-col>
         </el-row>
+
         <el-row>
           <el-col :span="12">
             <el-form-item label="宀椾綅">
@@ -533,12 +547,14 @@
   updateUser,
   resetUserPwd,
   adduserdept,
+  removeusertd,
   changeUserStatus,
   deptTreeSelect,
 } from "@/api/system/user";
 import { getToken } from "@/utils/auth";
 import Treeselect from "@riophae/vue-treeselect";
 import "@riophae/vue-treeselect/dist/vue-treeselect.css";
+import { type } from "jquery";
 
 export default {
   name: "User",
@@ -608,24 +624,31 @@
         status: undefined,
         deptId: undefined,
       },
+      searchscopelist: [
+        { value: "1", label: "绉戝" },
+        { value: "2", label: "鐥呭尯" },
+        { value: "0", label: "鍏ㄩ儴" },
+        { value: "9", label: "鏃�" },
+      ],
       // 鍒椾俊鎭�
       columns: [
         { key: 0, label: `鐢ㄦ埛缂栧彿`, visible: true },
-        { key: 1, label: `鐢ㄦ埛鍚嶇О`, visible: true },
+        { key: 1, label: `鐢ㄦ埛宸ュ彿`, visible: true },
         { key: 2, label: `鐢ㄦ埛鏄电О`, visible: true },
         { key: 3, label: `閮ㄩ棬`, visible: true },
         { key: 4, label: `鎵嬫満鍙风爜`, visible: true },
         { key: 5, label: `鐘舵�乣, visible: true },
         { key: 6, label: `鍒涘缓鏃堕棿`, visible: true },
       ],
+
       // 琛ㄥ崟鏍¢獙
       rules: {
         userName: [
-          { required: true, message: "鐢ㄦ埛鍚嶇О涓嶈兘涓虹┖", trigger: "blur" },
+          { required: true, message: "鐢ㄦ埛宸ュ彿涓嶈兘涓虹┖", trigger: "blur" },
           {
             min: 2,
             max: 20,
-            message: "鐢ㄦ埛鍚嶇О闀垮害蹇呴』浠嬩簬 2 鍜� 20 涔嬮棿",
+            message: "鐢ㄦ埛宸ュ彿闀垮害蹇呴』浠嬩簬 2 鍜� 20 涔嬮棿",
             trigger: "blur",
           },
         ],
@@ -686,9 +709,14 @@
     },
     /** 鏌ヨ閮ㄩ棬涓嬫媺鏍戠粨鏋� */
     getDeptTree() {
+      // 绉戝鍒楄〃
       deptTreeSelect().then((response) => {
         this.deptOptions = response.data;
       });
+      // 闄㈠尯鍒楄〃
+      //  deptTreeSelect().then((response) => {
+      //   this.deptOptions = response.data;
+      // });
     },
     // 绛涢�夎妭鐐�
     filterNode(value, data) {
@@ -774,9 +802,9 @@
     handleAdd() {
       this.reset();
       this.open = true;
-        this.title = "娣诲姞鐢ㄦ埛";
-        this.form.password = this.initPassword;
-        this.form.depts = [];
+      this.title = "娣诲姞鐢ㄦ埛";
+      this.form.password = this.initPassword;
+      this.form.depts = [];
       // getUser().then((response) => {
       //   this.postOptions = response.posts;
       //   this.roleOptions = response.roles;
@@ -790,11 +818,14 @@
       const userId = row.userId || this.ids;
       getUser(userId).then((response) => {
         this.form = response.data;
-
-        this.form.leaveldeptcodes = JSON.parse(this.form.hospInfo);
-        this.form.leavehospitaldistrictcodes = JSON.parse(this.form.deptInfo);
-        console.log(this.form.leavehospitaldistrictcodes,'leavehospitaldistrictcodes');
-        console.log(this.form.leaveldeptcodes,'leaveldeptcodes');
+        this.belongDepts = response.belongDepts;
+        this.belongWards = response.belongWards;
+        if (this.form.hospInfo)
+          this.form.deptCodes = JSON.parse(this.form.hospInfo);
+        if (this.form.deptInfo)
+          this.form.wardCodes = JSON.parse(this.form.deptInfo);
+        console.log(this.form.wardCodes, "wardCodes");
+        console.log(this.form.deptCodes, "deptCodes");
 
         this.postOptions = response.posts;
         this.roleOptions = response.roles;
@@ -803,6 +834,16 @@
         this.open = true;
         this.title = "淇敼鐢ㄦ埛";
         this.form.password = "";
+      });
+    },
+    // 鍒犻櫎绉戝
+    removehpsp(valueArray) {
+      console.log(valueArray,'鍒犻櫎绉戝');
+      console.log(this.form.userId,'鍒犻櫎');
+     let code=valueArray[valueArray.length-1];
+      removeusertd(this.form.userId,code).then((res) => {
+        if (res.code) {
+        }
       });
     },
     /** 閲嶇疆瀵嗙爜鎸夐挳鎿嶄綔 */
@@ -828,17 +869,16 @@
     },
     /** 鎻愪氦鎸夐挳 */
     submitForm: function () {
-      this.form.hospInfo = JSON.stringify(this.form.leaveldeptcodes);
-      this.form.deptInfo = JSON.stringify(this.form.leavehospitaldistrictcodes);
-      this.form.leaveldeptcodes = this.form.leaveldeptcodes.map(
+      this.form.hospInfo = JSON.stringify(this.form.deptCodes);
+      this.form.deptInfo = JSON.stringify(this.form.wardCodes);
+      this.form.deptCodes = this.form.deptCodes.map(
         (subArr) => subArr[subArr.length - 1]
       );
-      this.form.leavehospitaldistrictcodes = this.form.leavehospitaldistrictcodes.map(
+      this.form.wardCodes = this.form.wardCodes.map(
         (subArr) => subArr[subArr.length - 1]
       );
-      console.log(this.form.leavehospitaldistrictcodes,'leavehospitaldistrictcodes');
-      console.log(this.form.leaveldeptcodes,'leaveldeptcodes');
-
+      console.log(this.form.wardCodes, "wardCodes");
+      console.log(this.form.deptCodes, "deptCodes");
 
       this.$refs["form"].validate((valid) => {
         if (valid) {
@@ -846,42 +886,64 @@
             updateUser(this.form).then((response) => {
               this.$modal.msgSuccess("淇敼鎴愬姛");
               this.open = false;
-              this.getList();
+              this.adduserdept();
             });
           } else {
             addUser(this.form).then((response) => {
               this.$modal.msgSuccess("鏂板鎴愬姛");
               this.open = false;
-              this.getList();
+              this.form.userId = response.data;
+              console.log("寮�濮嬪姞閮ㄩ棬");
+
+              this.adduserdept();
             });
           }
         }
       });
     },
     // 鏂板鏁版嵁
-    adduserdept(){
-      if (this.form.leavehospitaldistrictcodes[0]) {
-        this.form.leavehospitaldistrictcodes.forEach((dept) => {
-          adduserdept({deptCode:dept,deptType:2,userId:this.form.userId}).then((response) => {
-            this.open = false;
-            this.getList();
-          });
-        })
-      }
-      if (this.form.leaveldeptcodes[0]) {
-        this.form.leaveldeptcodes.forEach((dept) => {
-          adduserdept({deptCode:dept,deptType:1,userId:this.form.userId}).then((response) => {
-            this.open = false;
-            this.getList();
-          });
-        })
-      }
+    adduserdept() {
+      if (this.form.wardCodes[0]) {
+        this.form.wardCodes.forEach((dept) => {
+          const containsId8 = null;
+          if (this.belongWards) {
+            containsId8 = this.belongWards.some(
+              (item) => item.deptCode == dept
+            );
+          }
 
-      adduserdept(this.form).then((response) => {
-        this.$modal.msgSuccess("娣诲姞鎴愬姛");
-        this.open = false;
-        this.getList();
-      });
+          if (!containsId8) {
+            adduserdept({
+              deptCode: dept,
+              deptType: 2,
+              userId: this.form.userId,
+            }).then((response) => {
+              this.open = false;
+              this.getList();
+            });
+          }
+        });
+      }
+      if (this.form.deptCodes[0]) {
+        this.form.deptCodes.forEach((dept) => {
+          const containsId8 = null;
+          if (this.belongDepts) {
+            containsId8 = this.belongDepts.some(
+              (item) => item.deptCode == dept
+            );
+          }
+          if (!containsId8) {
+            adduserdept({
+              deptCode: dept,
+              deptType: 1,
+              userId: this.form.userId,
+            }).then((response) => {
+              this.open = false;
+              this.getList();
+            });
+          }
+        });
+      }
     },
     /** 鍒犻櫎鎸夐挳鎿嶄綔 */
     handleDelete(row) {
diff --git a/vue.config.js b/vue.config.js
index 0c8cfd6..994fb51 100644
--- a/vue.config.js
+++ b/vue.config.js
@@ -9,7 +9,7 @@
 
 const name = process.env.VUE_APP_TITLE || '娴欎腑澶т簩闄㈡櫤鎱ч殢璁垮钩鍙�' // 缃戦〉鏍囬
 
-const port = process.env.port || process.env.npm_config_port || 8096 // 绔彛
+const port = process.env.port || process.env.npm_config_port || 8093 // 绔彛
 
 // vue.config.js 閰嶇疆璇存槑
 //瀹樻柟vue.config.js 鍙傝�冩枃妗� https://cli.vuejs.org/zh/config/#css-loaderoptions
@@ -35,10 +35,12 @@
     proxy: {
       // detail: https://cli.vuejs.org/config/#devserver-proxy
       [process.env.VUE_APP_BASE_API]: {
+        // target: `http://192.168.168.60:8095`,
         target: `http://192.168.1.10:8095`,
         // target:`http://localhost:8095`,
         // target: `http://192.168.101.135:8095`,
         // target: `http://192.168.101.166:8093`,
+        // target: `http://192.168.191.181:8095`,
         changeOrigin: true,
         pathRewrite: {
           ['^' + process.env.VUE_APP_BASE_API]: ''

--
Gitblit v1.9.3