From ffb5cf79a2d5d7603cb97e79bd04f598eceb0352 Mon Sep 17 00:00:00 2001
From: WXL <1785969728@qq.com>
Date: 星期四, 20 三月 2025 10:41:29 +0800
Subject: [PATCH] 测试完成

---
 src/views/patient/propaganda/particty.vue |  530 +++++++++++++++++++++++++++++++++-------------------------
 1 files changed, 302 insertions(+), 228 deletions(-)

diff --git a/src/views/patient/propaganda/particty.vue b/src/views/patient/propaganda/particty.vue
index a6a2788..8da280e 100644
--- a/src/views/patient/propaganda/particty.vue
+++ b/src/views/patient/propaganda/particty.vue
@@ -70,21 +70,21 @@
                   />
                 </el-form-item>
                 <el-form-item label="鏈嶅姟褰㈠紡">
-                  <el-checkbox-group
+                  <el-radio-group
                     v-model="checkList"
                     @change="handleCheckedCitiesChange"
                   >
-                    <el-checkbox
+                    <el-radio
                       v-for="(item, index) in checkboxlist"
                       :key="index"
                       :label="item.value"
-                       @change="checkboxChange($event, item.value)"
+                      @change="checkboxChange($event, item.value)"
                     >
-                      {{ item.label }}</el-checkbox
+                      {{ item.label }}</el-radio
                     >
-                  </el-checkbox-group>
+                  </el-radio-group>
                 </el-form-item>
-                <div class="xinz-infs">
+                <!-- <div class="xinz-infs">
                   <el-form-item label="鏈嶅姟鎵ц椤哄簭" prop="daytime">
                     <el-tag
                       :key="tag.label"
@@ -94,16 +94,26 @@
                       :disable-transitions="false"
                       @close="handleClosetag(tag)"
                     >
-                      ({{index+1}}){{ tag.label }}
+                      ({{ index + 1 }}){{ tag.label }}
                     </el-tag>
                   </el-form-item>
-                </div>
-                <el-form-item label="鏄惁闀挎湡" prop="longTask">
+                </div> -->
+                <el-form-item label="鎵ц鍛ㄦ湡" prop="longTask">
                   <el-radio-group v-model="form.longTask">
-                    <el-radio :label="0">鏅�氫换鍔�</el-radio>
+                    <el-radio :label="0">鑷畾涔夊懆鏈�</el-radio>
                     <el-radio :label="1">闀挎湡浠诲姟</el-radio>
                   </el-radio-group>
                 </el-form-item>
+                <el-row :gutter="20" v-if="form.longTask">
+                  <el-col :span="8">
+                    <el-form-item label="鍛ㄦ湡鏃堕棿" prop="name">
+                      <el-input
+                        v-model="form.sendDay"
+                        placeholder="榛樿5澶╁悗"
+                      ></el-input>
+                    </el-form-item>
+                  </el-col>
+                </el-row>
                 <el-form-item
                   label="鎵ц璁剧疆"
                   prop="sendType"
@@ -208,7 +218,8 @@
                   <el-col :span="20"
                     ><el-form-item label="閫傜敤绉戝" prop="region">
                       <el-select
-                        v-model="form.deptcode"
+                        v-model="deptcodesWards"
+                        @remove-tag="removetag"
                         style="width: 400px"
                         size="medium"
                         filterable
@@ -228,24 +239,10 @@
                 <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"
+                        v-model="leavehospitaldistrictcodes"
                         style="width: 400px"
+                        @remove-tag="removehpsp"
                         size="medium"
                         filterable
                         placeholder="璇烽�夋嫨鐥呭尯"
@@ -297,6 +294,10 @@
                       placeholder="璇风偣鍑诲彸渚ч�夋嫨"
                     />
                     <el-button
+                      v-if="
+                        (form.templateid && form.sendState == 1) ||
+                        !form.templateid
+                      "
                       style="margin-left: 10px"
                       type="primary"
                       icon="el-icon-edit"
@@ -308,7 +309,7 @@
                       v-if="form.templatename"
                       type="success"
                       icon="el-icon-search"
-                      @click="previewfnmb"
+                      @click="previewfnmb()"
                       circle
                     ></el-button>
                   </el-form-item>
@@ -444,7 +445,7 @@
           </div>
         </div>
         <el-button type="primary" @click="laststep()">涓婁竴姝�</el-button>
-        <el-button type="success" @click="submitForm('ruleForm')">{{
+        <el-button type="success" @click="submitForm('11')">{{
           quote ? "绔嬪嵆鍒涘缓" : "纭浠诲姟閰嶇疆"
         }}</el-button>
         <el-button @click="resetForm('ruleForm')">閲嶇疆</el-button>
@@ -473,6 +474,12 @@
               <el-form-item label="鎮h�咃細">
                 <el-input
                   v-model="patientqueryParams.name"
+                  @keyup.enter.native="handleQuery"
+                ></el-input>
+              </el-form-item>
+              <el-form-item label="鎮h�呮爣绛撅細">
+                <el-input
+                  v-model="patientqueryParams.tagname"
                   @keyup.enter.native="handleQuery"
                 ></el-input>
               </el-form-item>
@@ -568,7 +575,7 @@
               <el-row :gutter="20">
                 <el-col :span="14">
                   <el-form-item label="鍙敤鐘舵��" prop="isenable">
-                    <el-radio-group v-model="objyl.usestate">
+                    <el-radio-group v-model="objyl.isenable">
                       <el-radio
                         v-for="(item, index) in usable"
                         :label="item.value"
@@ -591,90 +598,6 @@
                   <el-input v-model="objyl.templateName"></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-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>
@@ -794,9 +717,19 @@
 
       <span slot="footer" class="dialog-footer">
         <!-- <el-button @click="previewGo">淇濆瓨妯℃澘璇︽儏淇敼</el-button> -->
-        <el-button type="primary" @click="Departmenttreatment"
-          >淇濆瓨浣跨敤</el-button
+        <el-button
+          v-if="(form.templateid && form.sendState == 1) || !form.templateid"
+          type="primary"
+          @click="Departmenttreatment"
+          >{{ form.templateid ? "鏇挎崲浣跨敤" : "閫夋嫨浣跨敤" }}</el-button
         >
+        <!-- <el-button
+          :type="previewtftype ? 'success' : 'warning'"
+          @click="Modifytemplate"
+          >{{
+            previewtftype ? "鍓嶅線淇敼宸查�夋嫨妯℃澘" : "鏂板淇濆瓨骞跺墠寰�淇敼"
+          }}</el-button
+        > -->
       </span>
     </el-dialog>
     <el-drawer
@@ -890,13 +823,17 @@
   getillness,
   Editsingletask,
   getFollowupclassify,
+  taskdepthospgetsonlist,
+  taskdepthospgetsondel,
   depthospgetsonlist,
 } from "@/api/AiCentre/index";
+import { deptTreeSelect } from "@/api/system/user";
+import { MessageBox } from "element-ui";
 
 import SFtable from "@/components/SFtable"; //琛ㄦ牸缁勪欢
 
 export default {
-  name: "ServiceDetails",
+  name: "particty",
   data() {
     return {
       title: "瀹f暀鍐呭鍒楄〃",
@@ -904,6 +841,8 @@
       id: "", //
       previewid: "", //浠诲姟妯℃澘浼犻�抜d
       libName: "",
+      username: "",
+      templateor: false,
       objyl: {},
       overallCase: [], //閫夋嫨鎮h�呮��
       allpids: [],
@@ -915,13 +854,17 @@
       Editprogress: 1, //缂栬緫杩涘害
       drawermb: false, //閫夋嫨妯℃澘寮圭獥
       previewtf: false, //棰勮
+      previewtftype: 0, //棰勮鎯呭喌0鏂版ā鏉块瑙�1宸查�夋嫨妯℃澘淇敼
       loading: false, // 閬僵灞�
       patientloading: false, // 閬僵灞�
       dialogVisiblepatient: false, //娣诲姞鎮h�呭脊妗�
+      deptcodesWards: [], //绉戝鏁版嵁
+      leavehospitaldistrictcodes: [], //鐥呭尯鏁版嵁
       radio: 1,
       checkboxlist: [],
       tableLabel: [],
       questionList: [],
+      skip: false,
       usable: [
         { value: "0", label: "鍙敤" },
         { value: "1", label: "鍋滅敤" },
@@ -934,14 +877,15 @@
       propstask: { value: "deptCode", label: "deptName" },
       // 鎮h�呰〃鍗�
       tableLabelhz: [
-        { label: "鍑洪櫌鏃ユ湡", width: "150", prop: "inhosptime" },
+        { label: "鍑洪櫌鏃ユ湡", width: "150", prop: "endtime" },
         { label: "鎮h��", width: "", prop: "name" },
         { label: "韬唤璇�", width: "200", prop: "idcardno" },
         { label: "鐢佃瘽鍙风爜", width: "180", prop: "telcode" },
         { label: "鎬у埆", width: "", prop: "sex" },
         { label: "骞撮緞", width: "", prop: "age" },
-        { label: "璐d换鎶ゅ+", width: "", prop: "nurseName" },
-        { label: "涓绘不鍖荤敓", width: "", prop: "drname" },
+        { label: "鎮h�呮爣绛�", width: "", prop: "tag" },
+        // { label: "璐d换鎶ゅ+", width: "", prop: "nurseName" },
+        // { label: "涓绘不鍖荤敓", width: "", prop: "drname" },
         { label: "绉戝", width: "240", prop: "dept" },
         { label: "鐥呭尯", width: "240", prop: "leavehospitaldistrictname" },
       ],
@@ -954,17 +898,17 @@
         { label: "鎬у埆", width: "", prop: "sex" },
         { label: "骞撮緞", width: "", prop: "age" },
         { label: "鍑洪櫌澶╂暟", width: "", prop: "endDay" },
-        { label: "璐d换鎶ゅ+", width: "", prop: "nurseName" },
-        { label: "涓绘不鍖荤敓", width: "", prop: "drname" },
+        // { label: "璐d换鎶ゅ+", width: "", prop: "nurseName" },
+        // { label: "涓绘不鍖荤敓", width: "", prop: "drname" },
         { label: "绉戝", width: "180", prop: "deptName" },
         { label: "鐥呭尯", width: "150", prop: "leavehospitaldistrictname" },
       ],
 
       tableLabelwj: [
+        { label: "鍒涘缓浜�", width: "", prop: "createBy" },
         { label: "妯℃澘鏍囬", width: "", prop: "templateName" },
         { label: "闅忚鎻忚堪", width: "", prop: "note" },
         { label: "淇敼鏃ユ湡", width: "", prop: "updateTime" },
-        { label: "鍒涘缓浜�", width: "", prop: "createBy" },
       ],
       // 鍙橀噺
       tableLabelvariable: [
@@ -975,7 +919,7 @@
       preachform: [
         { label: "澶氬獟浣�", value: 1 },
         { label: "绾歌川", value: 2 },
-        { label: "鐢佃瘽", value: 3 },
+        { label: "鏅鸿兘璇煶", value: 3 },
         { label: "鐭俊", value: 4 },
         { label: "寰俊鍏紬鍙�", value: 5 },
         { label: "寰俊灏忕▼搴�", value: 6 },
@@ -996,7 +940,7 @@
         pageNum: 1, //
         pageSize: 10,
       },
-      checkList: [],
+      checkList: "",
       foncheckList: [],
       formatvalue: {
         format1: "",
@@ -1011,6 +955,8 @@
         pageNum: 1, //
         pageSize: 10,
         topica: 1, //0鍏ㄩ儴1绉戝2鐥呭尯
+        leaveldeptcodes: [],
+        leavehospitaldistrictcodes: [],
       },
       topicoptions: [{ children: [{ children: [] }] }],
       showSearch: true, //
@@ -1030,7 +976,7 @@
       sonuserList: [], //閫変腑鎮h�呭垪琛�
       delvariableList: [], //鍒犻櫎鍙橀噺涓存椂瀛樺偍
       longtype: [
-        { value: 0, label: "鏅�氫换鍔�" },
+        { value: 0, label: "鑷畾涔夊懆鏈�" },
         { value: 1, label: "闀挎湡浠诲姟" },
       ],
       variableList: [
@@ -1083,8 +1029,8 @@
         templatename: "",
         templateid: null,
         libtemplateid: null,
-        kcb: "浜茬埍鐨勬偅鑰�/瀹跺睘锛屾偍濂斤紒鎴戜滑鏄禉涓尰澶т簩闄㈢殑鍖绘姢浜哄憳锛屼负浜嗘洿濂藉湴浜嗚В鎮ㄧ殑搴峰鎯呭喌锛岃鎮ㄦ娊涓�鐐瑰疂璐垫椂闂达紝瑙傜湅杩欎唤瀹f暀璧勮銆�",
-        jsy: "璇锋偍娉ㄦ剰浼戞伅鍜岃惀鍏伙紝鐢熸椿涓婅鍔抽�哥粨鍚堬紝閫傚綋閿荤偧锛屾垝鐑熼檺閰掞紝淇濇寔蹇冩儏鑸掔晠锛屽畾鏈熷璇娿�傞偅鏈瀹f暀鍐呭灏卞埌杩欓噷锛岀鎮ㄨ韩浣撳仴搴凤紒",
+        kcb: "浜茬埍鐨勬偅鑰�/瀹跺睘锛屾偍濂斤紒鎴戜滑鏄棤閿″効绔ュ尰闄㈢殑鍖绘姢浜哄憳锛屼负浜嗘洿濂藉湴浜嗚В鎮ㄧ殑搴峰鎯呭喌锛岃鎮ㄦ娊涓�鐐瑰疂璐垫椂闂达紝杩涜鏈鍥炶鏈嶅姟銆�",
+        jsy: "璇锋偍娉ㄦ剰浼戞伅鍜岃惀鍏伙紝鐢熸椿涓婅鍔抽�哥粨鍚堬紝閫傚綋閿荤偧锛屾垝鐑熼檺閰掞紝淇濇寔蹇冩儏鑸掔晠锛屽畾鏈熷璇娿�傞偅鏈鍥炶鍐呭灏卞埌杩欓噷锛岀鎮ㄨ韩浣撳仴搴凤紒",
       },
       taskoptions: [
         {
@@ -1156,7 +1102,6 @@
       ],
       // 绉戝/鐥呭尯
       belongWards: [],
-      belongWards: [],
       deptlist: [],
       hosplist: [],
       tempDetpRelevanceslist: [], //绉戝鏁版嵁
@@ -1176,12 +1121,19 @@
         sendType: [
           { required: true, message: "鍙戦�佽缃笉鑳戒负绌�", trigger: "blur" },
         ],
+        // deptcode: [
+        //   { required: true, message: "閫傜敤绉戝涓嶈兘涓虹┖", trigger: "blur" },
+        // ],
+        // leavehospitaldistrictcode: [
+        //   { required: true, message: "閫傜敤鐥呭尯涓嶈兘涓虹┖", trigger: "blur" },
+        // ],
       },
       // 绉戝闄㈠尯鏌ヨ鍏ュ弬
       queryParamsdept: {
         tempid: "",
-        type: 11,
+        type: 2,
       },
+      belongDepts: [],
       quote: false,
       serviceType: null,
     };
@@ -1192,6 +1144,7 @@
     this.appraiselist = store.getters.appraiselist;
     this.belongWards = store.getters.belongWards;
     this.belongDepts = store.getters.belongDepts;
+    this.username = store.getters.name;
     this.mode = store.getters.Askmode;
     this.id = this.$route.query.id;
     this.newadd = this.$route.query.newadd;
@@ -1204,7 +1157,15 @@
     this.getFollowupclassify();
   },
   activated() {
+    console.log(this.id, "CS", this.$route.query.id);
     if (this.id != this.$route.query.id) {
+      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.Acquisitiontype();
       this.Getdetails();
       this.getFollowupclassify();
@@ -1212,11 +1173,6 @@
   },
 
   methods: {
-    // {
-    //   濮撳悕: { "${name}": "榫欏偛澶�" },
-    //   鍦板潃: { "${dzz}": "榫欏" },
-    //   鐢佃瘽: { "${dhh}": "鍏釜鍏�" },
-    // }
     // 鍙橀噺杞崲瀵硅薄杞暟缁�
     convertFormat1ToFormat2(data) {
       let result = [];
@@ -1240,6 +1196,26 @@
       });
       return result;
     },
+
+    flattenArray(multiArray) {
+      let result = [];
+
+      // 閫掑綊鍑芥暟锛岀敤浜庡皢澶氱骇鏁扮粍杞崲涓轰竴缁存暟缁勶紝鍙寘鍚渶搴曞眰鐨勫厓绱�
+      function flatten(element) {
+        // 濡傛灉褰撳墠鍏冪礌鏈夊瓙鍏冪礌锛岀户缁�掑綊
+        if (element.children && element.children.length > 0) {
+          element.children.forEach((child) => flatten(child));
+        } else {
+          // 鍏嬮殕鍏冪礌浠ラ伩鍏嶄慨鏀瑰師濮嬫暟鎹�
+          let item = JSON.parse(JSON.stringify(element));
+          result.push(item); // 灏嗘渶搴曞眰鐨勫厓绱犳坊鍔犲埌缁撴灉鏁扮粍
+        }
+      }
+
+      // 浠庨《灞傚厓绱犲紑濮嬮�掑綊
+      multiArray.forEach((element) => flatten(element));
+      return result; // 杩斿洖鍙寘鍚渶搴曞眰鍏冪礌鐨勪竴缁存暟缁�
+    },
     // 鑾峰彇褰撳墠绫诲瀷
     Acquisitiontype() {
       let queryParams = {
@@ -1261,6 +1237,10 @@
             label: "绾歌川",
           },
           {
+            value: "4",
+            label: "鐭俊",
+          },
+          {
             value: "5",
             label: "寰俊鍏紬鍙�",
           },
@@ -1269,7 +1249,7 @@
         this.checkboxlist = [
           {
             value: "3",
-            label: "鐢佃瘽",
+            label: "鏅鸿兘璇煶",
           },
           {
             value: "4",
@@ -1284,10 +1264,10 @@
             label: "寰俊灏忕▼搴�",
           },
 
-          {
-            value: "8",
-            label: "鏅鸿兘鏈哄櫒浜�",
-          },
+          // {
+          //   value: "8",
+          //   label: "鏅鸿兘鏈哄櫒浜�",
+          // },
         ];
       } else if (this.form.serviceType == 7 || this.form.serviceType == 5) {
         this.checkboxlist = [
@@ -1301,7 +1281,7 @@
           },
           {
             value: "3",
-            label: "鐢佃瘽",
+            label: "鏅鸿兘璇煶",
           },
           {
             value: "4",
@@ -1324,7 +1304,7 @@
           },
           {
             value: "3",
-            label: "鐢佃瘽",
+            label: "鏅鸿兘璇煶",
           },
           {
             value: "4",
@@ -1339,10 +1319,10 @@
             label: "寰俊灏忕▼搴�",
           },
 
-          {
-            value: "8",
-            label: "鏅鸿兘鏈哄櫒浜�",
-          },
+          // {
+          //   value: "8",
+          //   label: "鏅鸿兘鏈哄櫒浜�",
+          // },
         ];
       }
       getFollowuplist(this.topqueryParams).then((response) => {
@@ -1362,7 +1342,8 @@
       });
     },
     // 淇濆瓨
-    submitForm(formName) {
+    submitForm(type) {
+      if (this.templateor && type) this.templateor = false;
       if (this.time4 && this.form.sendType == 3)
         this.form.showTimeMorn = this.time4;
       this.form.sendTimeslot = [
@@ -1372,20 +1353,29 @@
           xh: 1,
         },
       ];
-      if (this.checkList[0]) {
-        this.form.preachform = this.checkList.join(",");
+
+      if (this.checkList) {
+        this.form.preachform = this.checkList;
       } else {
         this.$modal.msgError("璇烽�夋嫨鏈嶅姟绫诲瀷");
+        return;
+      }
+
+      if (this.deptcodesWards[0] || this.leavehospitaldistrictcodes[0]) {
+      } else {
+        this.$modal.msgError("璇烽�夋嫨绉戝鎴栫梾鍖�");
         return;
       }
       if (!this.form.patTaskRelevances[0] && !this.form.longTask) {
         this.$modal.msgError("璇烽�夋嫨鐥呬汉");
         return;
       }
-      if (!this.form.templatename) {
+
+      if (!this.form.templatename && !this.templateor) {
         this.$modal.msgError("鏈�夋嫨妯℃澘");
         return;
       }
+
       if ((this.form.sendType == 1 && this.time1) || this.form.sendType == 2) {
       } else if (
         (this.form.sendType == 3 && this.time4) ||
@@ -1408,18 +1398,14 @@
         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
-      );
+      this.form.deptcode = this.deptcodesWards.join(",");
+      this.form.leavehospitaldistrictcode =
+        this.leavehospitaldistrictcodes.join(",");
       Editsingletask(this.form).then((res) => {
         if (res.code == 200) {
           if (this.form.taskid) {
             this.$modal.msgSuccess("淇敼鎴愬姛");
           } else {
-            this.puttaskid(res.data);
             this.$modal.msgSuccess("鏂板鎴愬姛");
           }
           this.$router.push({
@@ -1429,24 +1415,7 @@
         }
       });
     },
-    // 缁欎换鍔℃ā鏉胯祴鍊间换鍔d
-    puttaskid(data) {
-      getTaskparticty(this.form.templateid).then((res) => {
-        if (res.code == 200) {
-          this.objyl = res.data;
-          this.objyl.isoperation = 2;
-          this.objyl.taskid = data.taskId;
-          Taskparticty(this.objyl).then((response) => {
-            this.previewtf = false;
-            this.form.libtemplateid = this.objyl.id;
-            this.form.templateid = response.data;
-            // this.putbelongDepts(response.data);
-            this.form.templatename = this.objyl.templateName;
-            this.$modal.msgSuccess("閫夋嫨妯℃澘鎴愬姛");
-          });
-        }
-      });
-    },
+
     // ----------------------琛ㄦ牸瀛愮粍浠朵簨浠�
 
     // 閫夋嫨棰勮
@@ -1459,13 +1428,13 @@
         getvFollowup({ id: row.id }).then((res) => {
           if (res.code == 200) {
             this.objyl = res.data;
-            if (this.form.longTask) {
-              this.objyl.longTemp = 1;
-            }
-            this.queryParamsdept.type = 1;
+            // if (this.form.longTask) {
+            //   this.objyl.sendDay = 5;
+            // }
+            this.queryParamsdept.type = 2;
             this.queryParamsdept.tempid = row.id;
-            this.listDept();
-
+            this.tempDetpRelevanceslist = [];
+            this.tempbelongWards = [];
             this.objyl.suitway = this.objyl.suitway.split(",");
             this.questionList = res.data.ivrLibaTemplateScriptVOList;
             this.getillness(row.id);
@@ -1486,16 +1455,18 @@
           if (this.objyl.suitway)
             this.objyl.suitway = this.objyl.suitway.split(",");
           this.queryParamsdept.tempid = this.form.templateid;
-          this.queryParamsdept.type = 11;
+          this.queryParamsdept.type = 21;
+          // 鐤剧梾
           this.getillness(this.form.libtemplateid);
-          // 鎵ц鑾峰彇璇ヤ换鍔℃ā鏉縤d
-          this.listDept();
-          this.previewtf = true;
+
           getvFollowup({ id: this.form.libtemplateid }).then((res) => {
             if (res.code == 200) {
+              this.previewtf = true;
+              this.previewtftype = 1;
               this.questionList = res.data.ivrLibaTemplateScriptVOList;
               this.objyl.ivrLibaTemplateScriptVOList =
                 res.data.ivrLibaTemplateScriptVOList;
+            } else {
             }
           });
         }
@@ -1551,12 +1522,13 @@
           { label: "鍑洪櫌鏃ユ湡", width: "150", prop: "endtime" },
           { label: "鎮h��", width: "", prop: "name" },
           { label: "韬唤璇�", width: "200", prop: "idcardno" },
-        { label: "鐢佃瘽鍙风爜", width: "180", prop: "telcode" },
+          { label: "鐢佃瘽鍙风爜", width: "180", prop: "telcode" },
           { label: "鎬у埆", width: "", prop: "sex" },
           { label: "骞撮緞", width: "", prop: "age" },
+        { label: "鎮h�呮爣绛�", width: "", prop: "tag" },
           { label: "鍑洪櫌澶╂暟", width: "", prop: "endDay" },
-          { label: "璐d换鎶ゅ+", width: "", prop: "nurseName" },
-          { label: "鍖荤敓", width: "", prop: "drname" },
+          // { label: "璐d换鎶ゅ+", width: "", prop: "nurseName" },
+          // { label: "鍖荤敓", width: "", prop: "drname" },
           { label: "绉戝", width: "180", prop: "dept" },
           { label: "鐥呭尯", width: "150", prop: "leavehospitaldistrictname" },
         ];
@@ -1565,12 +1537,13 @@
           { label: "鍏ラ櫌鏃ユ湡", width: "150", prop: "starttime" },
           { label: "鎮h��", width: "", prop: "name" },
           { label: "韬唤璇�", width: "200", prop: "idcardno" },
-        { label: "鐢佃瘽鍙风爜", width: "180", prop: "telcode" },
+          { label: "鐢佃瘽鍙风爜", width: "180", prop: "telcode" },
           { label: "鎬у埆", width: "", prop: "sex" },
           { label: "骞撮緞", width: "", prop: "age" },
+        { label: "鎮h�呮爣绛�", width: "", prop: "tag" },
           { label: "鍑洪櫌澶╂暟", width: "", prop: "endDay" },
-          { label: "璐d换鎶ゅ+", width: "", prop: "nurseName" },
-          { label: "鍖荤敓", width: "", prop: "drname" },
+          // { label: "璐d换鎶ゅ+", width: "", prop: "nurseName" },
+          // { label: "鍖荤敓", width: "", prop: "drname" },
           { label: "绉戝", width: "180", prop: "dept" },
           { label: "鐥呭尯", width: "150", prop: "leavehospitaldistrictname" },
         ];
@@ -1585,6 +1558,7 @@
         this.patientqueryParams.cry = 1;
       } else if (this.patientqueryParams.allhosp == 4) {
         this.patientqueryParams.cry = 0;
+        this.patientqueryParams.allhosp = "1";
       }
       // 鏉ユ簮鍒ゆ柇
 
@@ -1637,6 +1611,9 @@
           item.deptName = item.dept;
           item.admindate = item.inhosptime;
           item.sfzh = item.idcardno;
+          if (this.patientqueryParams.allhosp==6) {
+          item.patfrom = 1;
+          }
           this.overallCase.push(item);
           this.form.patTaskRelevances.push(item);
         }
@@ -1674,7 +1651,11 @@
           let indexa = this.overallCase.indexOf(row);
           let indexb = this.form.patTaskRelevances.indexOf(row);
           this.overallCase.splice(indexa, 1);
-          this.form.patTaskRelevances[indexb].isoperation = 3;
+          if (!this.form.taskid) {
+            this.form.patTaskRelevances.splice(indexa, 1);
+          } else {
+            this.form.patTaskRelevances[indexb].isoperation = 3;
+          }
           this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
         });
     },
@@ -1692,6 +1673,16 @@
           store.getters.leavehospitaldistrictcodes;
         this.patientqueryParams.leaveldeptcodes = null;
       }
+      if (
+        !this.patientqueryParams.leavehospitaldistrictcodes ||
+        !this.patientqueryParams.leavehospitaldistrictcodes[0]
+      )
+        this.patientqueryParams.leavehospitaldistrictcodes = null;
+      if (
+        !this.patientqueryParams.leaveldeptcodes ||
+        !this.patientqueryParams.leaveldeptcodes[0]
+      )
+        this.patientqueryParams.leaveldeptcodes = null;
       this.handleAddpatient();
     },
     resetQuery() {},
@@ -1722,10 +1713,11 @@
       this.form = {
         patTaskRelevances: [],
         sendType: 1,
+        sendDay: 5,
         templatename: "",
         templateid: null,
         libtemplateid: null,
-        kcb: "浜茬埍鐨勬偅鑰�/瀹跺睘锛屾偍濂斤紒鎴戜滑鏄禉涓尰澶т簩闄㈢殑鍖绘姢浜哄憳锛屼负浜嗘洿濂藉湴浜嗚В鎮ㄧ殑搴峰鎯呭喌锛岃鎮ㄦ娊涓�鐐瑰疂璐垫椂闂达紝瀹屾垚杩欎唤闅忚闅忚銆�",
+        kcb: "浜茬埍鐨勬偅鑰�/瀹跺睘锛屾偍濂斤紒鎴戜滑鏄棤閿″効绔ュ尰闄㈢殑鍖绘姢浜哄憳锛屼负浜嗘洿濂藉湴浜嗚В鎮ㄧ殑搴峰鎯呭喌锛岃鎮ㄦ娊涓�鐐瑰疂璐垫椂闂达紝瀹屾垚杩欎唤闅忚銆�",
         jsy: "璇锋偍娉ㄦ剰浼戞伅鍜岃惀鍏伙紝鐢熸椿涓婅鍔抽�哥粨鍚堬紝閫傚綋閿荤偧锛屾垝鐑熼檺閰掞紝淇濇寔蹇冩儏鑸掔晠锛屽畾鏈熷璇娿�傞偅鏈鍥炶灏卞埌杩欓噷锛岀鎮ㄨ韩浣撳仴搴凤紒",
       };
 
@@ -1740,7 +1732,7 @@
               ? this.form.patTaskRelevances
               : [];
             this.overallCase = this.form.patTaskRelevances.concat();
-            this.checkList = this.form.preachform.split(",");
+            this.checkList = this.form.preachform;
 
             this.overallCase.forEach((item) => {
               if (item.endtime) {
@@ -1755,6 +1747,9 @@
               } else {
                 this.time1 = this.form.showTimeMorn.split(",");
               }
+            }
+            if (this.form.taskid) {
+              this.listDept();
             }
             if (this.form.showTimeNoon)
               this.time2 = this.form.showTimeNoon.split(",");
@@ -1776,6 +1771,7 @@
     neWaddfn() {
       this.id = null;
       this.form.taskName = "";
+      this.form.sendState = null;
       this.form.taskid = null;
       this.overallCase = [];
       this.form.patTaskRelevances = [];
@@ -1788,22 +1784,48 @@
     },
     // 鑾峰彇绉戝鍒楄〃
     listDept() {
-      this.tempDetpRelevanceslist = [];
-      this.tempbelongWards = [];
-      depthospgetsonlist(this.queryParamsdept).then((res) => {
+      this.leavehospitaldistrictcodes = [];
+      this.deptcodesWards = [];
+      this.queryParamsdept.taskId = this.form.taskid;
+      taskdepthospgetsonlist(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);
+              this.deptcodesWards.push(item.deptCode);
             } else if (item.deptType == 2) {
               this.hosplist.push(item);
-              this.tempbelongWards.push(item.deptCode);
+              this.leavehospitaldistrictcodes.push(item.deptCode);
             }
           });
         }
       });
+    },
+    // 浠诲姟绉戝鍒犻櫎瑙﹀彂
+    removetag(row) {
+      let result = this.deptlist
+        .filter((item) => item.deptCode == row)
+        .map((item) => item.id);
+
+      if (result.length) {
+        taskdepthospgetsondel(result).then((res) => {
+          if (res.code) {
+          }
+        });
+      }
+    },
+    // 闄㈠尯鍒犻櫎鍒犻櫎瑙﹀彂
+    removehpsp(row) {
+      let result = this.hosplist
+        .filter((item) => item.deptCode == row)
+        .map((item) => item.id);
+      if (result.length) {
+        taskdepthospgetsondel(result).then((res) => {
+          if (res.code) {
+          }
+        });
+      }
     },
     getFollowupclassify() {
       getFollowupclassify({}).then((res) => {
@@ -1905,6 +1927,12 @@
       this.objyl.ivrTaskTemplateScriptVOList =
         this.objyl.ivrLibaTemplateScriptVOList;
       this.objyl.isoperation = 1;
+      if (this.form.id) {
+        this.objyl.taskid = this.form.id;
+      }
+      // if (!this.objyl.sendDay) {
+      //   this.objyl.sendDay = "5";
+      // }
       if (this.form.templateid) {
         deleteTaskparticty(this.form.templateid).then((res) => {
           if (res.code == 200) {
@@ -1914,7 +1942,16 @@
               this.form.templateid = response.data;
               this.putbelongDepts(response.data);
               this.form.templatename = this.objyl.templateName;
-              this.$modal.msgSuccess("閫夋嫨妯℃澘鎴愬姛");
+              this.$modal.msgSuccess("鏇挎崲妯℃澘鎴愬姛");
+              this.drawermb = false; //閫夋嫨妯℃澘寮圭獥
+              this.previewtf = false; //棰勮
+              if (this.skip) {
+                // 璺宠浆鍓嶅線淇敼
+                this.$router.push({
+                  path: "/knowledge/taskub/",
+                  query: { id: response.data },
+                });
+              }
             });
           }
         });
@@ -1926,6 +1963,15 @@
           this.putbelongDepts(response.data);
           this.form.templatename = this.objyl.templateName;
           this.$modal.msgSuccess("閫夋嫨妯℃澘鎴愬姛");
+          this.drawermb = false; //閫夋嫨妯℃澘寮圭獥
+          this.previewtf = false; //棰勮
+          if (this.skip) {
+            // 璺宠浆鍓嶅線淇敼
+            this.$router.push({
+              path: "/knowledge/taskub/",
+              query: { id: response.data },
+            });
+          }
         });
       }
     },
@@ -1950,9 +1996,7 @@
         }
       });
     },
-    checkboxChange(checked, value){
-
-    },
+    checkboxChange(checked, value) {},
     // 鏈嶅姟褰㈠紡閫夊彇
     handleCheckedCitiesChange(row) {
       console.log(row, "鏈嶅姟");
@@ -1965,36 +2009,66 @@
       console.log(tag, "tag");
       console.log(this.foncheckList, "foncheckList");
       this.checkList = this.checkList.filter((item) => item != tag.value);
-      this.foncheckList = this.foncheckList.filter(obj => obj.value !== tag.value);
-      console.log(this.checkList, "checkList");
-
+      this.foncheckList = this.foncheckList.filter(
+        (obj) => obj.value !== tag.value
+      );
     },
     // 绉戝澶勭悊
     Departmenttreatment() {
-      this.tempDetpRelevanceslist.forEach((item) => {
-        this.tempDetpRelevanceslistform.push({
-          deptType: 1,
-          longTemp: this.form.longTask,
-          deptCode: item,
-          tempid: null,
-          type: 11,
-        });
-      });
+      if (!this.form.taskid) {
+        this.templateor = true;
+        MessageBox.confirm(
+          "褰撳墠涓烘柊澧炰换鍔℃湭淇濆瓨涓嶅彲鍏宠仈妯℃澘锛屾槸鍚﹀厛淇濆瓨浠诲姟锛�",
+          "鍔熻兘鎻愮ず",
+          {
+            confirmButtonText: "淇濆瓨浠诲姟",
+            cancelButtonText: "鍙栨秷",
+            type: "warning",
+          }
+        )
+          .then(() => {
+            if (Array.isArray(this.objyl.suitway)) {
+              this.objyl.suitway = this.objyl.suitway.join(",");
+            }
+            this.objyl.templateid = this.objyl.id;
+            this.objyl.isoperation = 1;
+            this.objyl.ivrLibaTemplateScriptVOList.forEach((item) => {
+              item.ivrTaskScriptTargetoptionList =
+                item.ivrLibaScriptTargetoptionList;
+            });
+            this.objyl.ivrTaskTemplateScriptVOList =
+              this.objyl.ivrLibaTemplateScriptVOList;
+            this.form.ivrTaskTemplateVO = this.objyl;
 
-      this.tempbelongWards.forEach((item) => {
-        this.tempbelongWardsform.push({
-          deptType: 2,
-          longTemp: this.form.longTask,
-          deptCode: item,
-          tempid: null,
-          type: 11,
+            this.submitForm();
+          })
+          .catch(() => {});
+      } else {
+        setTimeout(() => {
+          this.previewFn();
+        }, 1000);
+      }
+    },
+    // 鍓嶅線淇敼
+    Modifytemplate() {
+      if (this.form.templateid && this.previewtftype) {
+        this.$modal.confirm("鏄惁鍓嶅線淇敼浠诲姟妯℃澘璇︾粏鍐呭锛�").then(() => {
+          this.drawermb = false; //閫夋嫨妯℃澘寮圭獥
+          this.previewtf = false; //棰勮
+          this.$router.push({
+            path: "/knowledge/taskub/",
+            query: { id: this.form.templateid },
+          });
         });
-      });
-      console.log(33);
-
-      setTimeout(() => {
-        this.previewFn();
-      }, 1000);
+      } else {
+        this.$modal
+          .confirm("褰撳墠涓哄熀纭�棰勮鏄惁鍒涘缓浠诲姟妯℃澘骞跺墠寰�淇敼璇︽儏锛�")
+          .then(() => {
+            // 璧板彇鍏堢粦瀹氬悗淇敼鎿嶄綔
+            this.Departmenttreatment();
+            this.skip = true;
+          });
+      }
     },
   },
 };

--
Gitblit v1.9.3