From 6bc5561b44911b925c4a1b7e7d8ea4dbfaa5239e Mon Sep 17 00:00:00 2001
From: WXL <1785969728@qq.com>
Date: 星期二, 04 六月 2024 11:04:10 +0800
Subject: [PATCH] 测试完成

---
 src/views/patient/propaganda/particty.vue |  192 ++++++++++++++++++++++++++++++++++-------------
 1 files changed, 139 insertions(+), 53 deletions(-)

diff --git a/src/views/patient/propaganda/particty.vue b/src/views/patient/propaganda/particty.vue
index 67c39e4..4e89da8 100644
--- a/src/views/patient/propaganda/particty.vue
+++ b/src/views/patient/propaganda/particty.vue
@@ -342,7 +342,7 @@
           </div>
         </div>
         <el-button type="success" @click="nextstep('ruleForm')">{{
-          quote ? "绔嬪嵆鍒涘缓" : "浠诲姟璇︽儏璁剧疆"
+          quote ? "绔嬪嵆鍒涘缓" : "浠诲姟璇︽儏閰嶇疆"
         }}</el-button>
         <el-button @click="resetForm('ruleForm')">閲嶇疆</el-button>
       </div>
@@ -531,10 +531,10 @@
                   <SFtable
                     @details="detailhz"
                     @handleUpdate="handleUpdate"
-                    @handleSelectionChange="handleSelectionChange"
-                    :currentList="form.patTaskRelevances"
+                    :currentList="overallCase"
                     :tableLabel="tableLabelhz"
                     :serialnumber="false"
+                    :multiplechoice="false"
                     :controlxz="false"
                     :typeinfo="2"
                   />
@@ -551,9 +551,9 @@
           </div>
         </div>
         <el-button type="primary" @click="laststep()">涓婁竴姝�</el-button>
-        <el-button type="success" @click="submitForm('ruleForm')"
-          >绔嬪嵆鍒涘缓</el-button
-        >
+        <el-button type="success" @click="submitForm('ruleForm')">{{
+          quote ? "绔嬪嵆鍒涘缓" : "纭浠诲姟閰嶇疆"
+        }}</el-button>
         <el-button @click="resetForm('ruleForm')">閲嶇疆</el-button>
       </div>
     </div>
@@ -563,6 +563,7 @@
       :visible.sync="dialogVisiblepatient"
       width="70%"
       :before-close="handleClosehz"
+      :close-on-click-modal="false"
     >
       <div class="examine-jic">
         <div class="jic-value">
@@ -619,6 +620,7 @@
             </el-form>
             <!-- 閫夋嫨鎮h�呭垪琛� -->
             <SFtable
+              ref="multipleTable"
               @handleUpdate="handleUpdate"
               @handleSelectionChange="handleSelectionChange"
               :currentList="patientuserList"
@@ -712,6 +714,8 @@
       id: "", //
       previewid: "", //浠诲姟妯$増浼犻�抜d
       libName: "",
+      overallCase: [], //閫夋嫨鎮h�呮��
+      allpids: [],
       libId: null, //妯℃澘搴撴ā鐗坕d
       Editprogress: 1, //缂栬緫杩涘害
       previewtf: false, //棰勮
@@ -722,7 +726,6 @@
       checkboxlist: [],
       tableLabel: [],
       questionList: [],
-
       // 鎮h�呰〃鍗�
       tableLabelhz: [
         { label: "搴忓彿", width: "", prop: "patid" },
@@ -776,6 +779,17 @@
         { label: "鍙橀噺鍚嶇О", width: "", prop: "variablename" },
         { label: "鍖归厤绗�", width: "", prop: "character" },
         { label: "鏇挎崲鍊�", width: "", prop: "Replacementvalue" },
+      ],
+      Serviceform: [
+        { label: "澶氬獟浣�", value: 1 },
+        { label: "绾歌川", value: 2 },
+        { label: "鐢佃瘽", value: 3 },
+        { label: "鐭俊", value: 4 },
+        { label: "寰俊鍏紬鍙�", value: 5 },
+        { label: "寰俊灏忕▼搴�", value: 6 },
+        { label: "鏀粯瀹�", value: 7 },
+        { label: "鏅鸿兘灏忕▼搴�", value: 8 },
+        { label: "閽夐拤", value: 9 },
       ],
       // 鏃堕棿澶勭悊
       daytime: [], //鏃ユ湡
@@ -856,7 +870,6 @@
       tasktopic: null, //鏂板绫诲瀷
       SelectPatientslist: [],
       form: {
-        serviceform: [],
         patTaskRelevances: [],
         sendType: 1,
         templatename: "",
@@ -932,10 +945,7 @@
         // 鍖绘妧瀹f暀锛屾櫘閫氬鏁�
         this.title = "瀹f暀鍐呭鍒楄〃";
         this.tableLabel = this.tableLabelxj;
-        this.checkboxlist = [
-          "绾夸笅锛堝彛澶村鏁欍�佺數瑙嗗鏁欍�佺焊璐級",
-          "绾夸笂锛堢煭淇�/閽夐拤鐨勬枃鏈�佸浘鏂囬摼鎺ワ級",
-        ];
+        this.checkboxlist = ["澶氬獟浣�", "绾歌川"];
         getlibrarylist(queryParams).then((response) => {
           this.userList = response.rows;
           this.total = response.total;
@@ -948,7 +958,7 @@
         // 鍑洪櫌銆侀棬璇娿�佷笓鐥呴殢璁�
         this.title = "闅忚鍐呭鍒楄〃";
         this.tableLabel = this.tableLabelmz;
-        this.checkboxlist = ["绾夸笅", "AI璇煶澶栧懠", "浜哄伐鐢佃瘽"];
+        this.checkboxlist = ["绾歌川", "澶氬獟浣�", "鐢佃瘽", "寰俊鍏紬鍙�"];
         getFollowuplist(queryParams).then((response) => {
           this.userList = response.rows;
           this.total = response.total;
@@ -982,7 +992,8 @@
     },
     // 淇濆瓨
     submitForm(formName) {
-      this.form.serviceform = this.checkList.join(",");
+      // this.form.serviceform = this.checkList.join(",");
+      this.formatFn(1);
       this.form.hospType = this.currenttype;
       const filteredArray = this.variableList.filter(
         (item) =>
@@ -990,14 +1001,14 @@
       );
       console.log(filteredArray, "瀛樺墠鍙橀噺");
       this.form.textParam = this.convertFormat2ToFormat1(filteredArray);
-      if (this.form.id) {
+      if (this.form.taskid) {
         this.form.isoperation = 2;
       } else {
         this.form.isoperation = 1;
       }
       Editsingletask(this.form).then((res) => {
         if (res.code == 200) {
-          if (this.form.id) {
+          if (this.form.taskid) {
             this.$modal.msgSuccess("鏂板鎴愬姛");
           } else {
             this.$modal.msgSuccess("淇敼鎴愬姛");
@@ -1070,29 +1081,88 @@
     },
     // 瀛愪换鍔′簩绾у脊妗�
     handleAddpatient(row) {
+      console.log(this.overallCase, "ssaaa");
+      this.allpids = [];
+      this.overallCase.forEach((item) => {
+        this.allpids.push(item.patid);
+      });
+      if (this.allpids[0]) {
+        this.patientqueryParams.pids = this.allpids;
+        console.log(this.patientqueryParams.pids);
+      } else {
+        this.patientqueryParams.pids = null;
+      }
+
       getTaskpatient(this.patientqueryParams).then((response) => {
         console.log(response);
         this.patientuserList = response.rows;
         this.patienttotal = response.total;
         this.loading = false;
+        this.Restorecheck();
       });
       this.dialogVisiblepatient = true;
     },
     handleUpdate() {},
     handleDelete() {},
     handleExport() {},
-    // 澶氶�夋閫変腑鏁版嵁
+    // 閫変腑鎮h�呰〃
+    handlePitchionChange() {},
+    // 閫夋嫨鎮h�呰〃鏁版嵁
     handleSelectionChange(selection) {
       console.log("澶氶�夋偅鑰�");
       this.SelectPatientslist = selection;
-      this.ids = null;
-      this.ids = selection.map((item) => item.patid).join(",");
-      // let result = this.ids.join(",");
       this.multiple = !selection.length;
-      console.log(this.ids);
+
+      // 璧嬪�肩粰鏁翠綋閫変腑鏁扮粍
+      this.SelectPatientslist.forEach((item) => {
+        const isExist = this.overallCase.find((obj) => obj.name == item.name);
+        if (!isExist) {
+          item.isoperation = 1;
+          this.overallCase.push(item);
+          this.form.patTaskRelevances.push(item);
+        }
+      });
+    },
+    // 鍒囨崲椤靛悗鎭㈠閫変腑
+    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);
+    },
+    // 鎸傝浇閫夋嫨鐘舵��
+    toggleSelection(rows) {
+      if (rows) {
+        this.decision = true;
+        this.$nextTick(() => {
+          rows.forEach((row) => {
+            this.$refs.multipleTable.toggleRowSelection(row, true);
+          });
+          this.decision = false;
+        });
+        console.log(123);
+      } else {
+        this.$refs.multipleTable.clearSelection();
+      }
     },
     // 鍒犻櫎閫変腑鎮h��
-    detailhz(row, info) {},
+    detailhz(row, info) {
+      this.$modal
+        .confirm('鏄惁纭鍒犻櫎鎮h��"' + row.name + '"鐨勬湇鍔¢」锛�')
+        .then(() => {
+          let indexa = this.overallCase.indexOf(row);
+          let indexb = this.form.patTaskRelevances.indexOf(row);
+          this.overallCase.splice(indexa, 1);
+          this.form.patTaskRelevances[indexb].isoperation = 3;
+          this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+        });
+    },
     getList() {},
     handleQuery() {
       this.handleAddpatient();
@@ -1121,14 +1191,17 @@
           let filteredArray = "";
           if (res.code == 200) {
             this.form = res.data;
-            this.checkList = this.form.serviceform.split(",");
-            this.daytime = this.form.sendlimitabegin.split(",");
-            if (this.form.sendlimitaend)
-              this.time1 = this.form.sendlimitaend.split(",");
-            if (this.form.sendlimitnbegin)
-              this.time2 = this.form.sendlimitaend.split(",");
-            if (this.form.sendlimitnend)
-              this.time3 = this.form.sendlimitaend.split(",");
+            this.overallCase = this.form.patTaskRelevances.concat();
+            // this.checkList = this.form.serviceform.split(",");
+            this.formatFn(2);
+            this.daytime = this.form.showDate.split(",");
+            if (this.form.showTimeMorn)
+              this.time1 = this.form.showTimeMorn.split(",");
+            if (this.form.showTimeNoon)
+              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);
             console.log(filteredArray, "filteredArray");
             this.variableList = this.transitionList.concat(filteredArray);
@@ -1147,28 +1220,14 @@
     },
     // 鏂板娲鹃�佹偅鑰�
     AddDispatchpatients() {
-      this.SelectPatientslist.forEach((item) => {
-        item.isoperation = 1;
-      });
-      this.form.patTaskRelevances.push(...this.SelectPatientslist);
+      // this.SelectPatientslist.forEach((item) => {
+      //   item.isoperation = 1;
+      // });
+      // this.form.patTaskRelevances.push(...this.SelectPatientslist);
+      // this.overallCase.push(...this.SelectPatientslist);
       this.dialogVisiblepatient = false;
-      this.assignedVariable();
-    },
-    // 鍙橀噺澶勭悊璧嬪�兼湇鍔�
-    assignedVariable() {
-      // 鑾峰彇鎮h�呭垪琛ㄤ俊鎭惊鐜�
-      console.log(this.variableList, "this.variableList");
-      this.form.patTaskRelevances.forEach((item) => {
-        this.variableList.forEach((item1) => {});
-      });
-      // 鍙栨暟鎹~鍏呭彉閲忔暟缁�
-      // 鏁扮粍杞璞″瓨鍏�
     },
 
-    // 鍙橀噺---------------
-    // variableEdit(index, row) {
-    //   console.log(index, row);
-    // },
     variableDelete(index, row) {
       this.variableList.splice(index, 1);
       row.isoperation = 3;
@@ -1235,10 +1294,10 @@
       this.form.sendTimeslot = combinedData;
       // 灞曠ず鏁版嵁涓存椂瀛樺偍鏃ユ湡銆佹棭銆佷腑銆佹櫄
 
-      this.form.sendlimitabegin = this.daytime.join(",");
-      if (this.time1) this.form.sendlimitaend = this.time1.join(",");
-      if (this.time2) this.form.sendlimitnbegin = this.time2.join(",");
-      if (this.time3) this.form.sendlimitnend = this.time3.join(",");
+      this.form.showDate = this.daytime.join(",");
+      if (this.time1) this.form.showTimeMorn = this.time1.join(",");
+      if (this.time2) this.form.showTimeNoon = this.time2.join(",");
+      if (this.time3) this.form.showTimeNight = this.time3.join(",");
       console.log(combinedData, "combinedData");
     },
     // 鏌ョ湅妯$増
@@ -1269,6 +1328,33 @@
         this.$modal.msgSuccess("閫夋嫨妯$増鎴愬姛");
       });
     },
+    // 澶勭悊鏈嶅姟褰㈠紡
+    formatFn(type) {
+      console.log(this.Serviceform);
+      console.log(this.checkList);
+      let list = [];
+      let formlist = [];
+      if (type == 1) {
+        this.Serviceform.forEach((item) => {
+          this.checkList.forEach((obj) => {
+            if (item.label == obj) {
+              list.push(item.value);
+            }
+          });
+        });
+        this.form.preachform = list.join(",");
+      } else {
+        formlist = this.form.preachform.split(",");
+        this.Serviceform.forEach((item) => {
+          formlist.forEach((obj) => {
+            if (item.value == obj) {
+              list.push(item.label);
+            }
+          });
+        });
+        this.checkList = list;
+      }
+    },
   },
 };
 </script>

--
Gitblit v1.9.3