From e6af7e6f95fb49115bf593daff0bee48648f99cf Mon Sep 17 00:00:00 2001
From: WXL <1785969728@qq.com>
Date: 星期五, 31 五月 2024 14:46:55 +0800
Subject: [PATCH] 测试完成

---
 src/views/patient/propaganda/particty.vue |   90 ++++++++++++++++++++++++++++++++------------
 1 files changed, 65 insertions(+), 25 deletions(-)

diff --git a/src/views/patient/propaganda/particty.vue b/src/views/patient/propaganda/particty.vue
index 67c39e4..5e0a46a 100644
--- a/src/views/patient/propaganda/particty.vue
+++ b/src/views/patient/propaganda/particty.vue
@@ -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"
                   />
@@ -619,6 +619,7 @@
             </el-form>
             <!-- 閫夋嫨鎮h�呭垪琛� -->
             <SFtable
+              ref="multipleTable"
               @handleUpdate="handleUpdate"
               @handleSelectionChange="handleSelectionChange"
               :currentList="patientuserList"
@@ -712,6 +713,8 @@
       id: "", //
       previewid: "", //浠诲姟妯$増浼犻�抜d
       libName: "",
+      overallCase: [], //閫夋嫨鎮h�呮��
+      allpids: [],
       libId: null, //妯℃澘搴撴ā鐗坕d
       Editprogress: 1, //缂栬緫杩涘害
       previewtf: false, //棰勮
@@ -722,7 +725,6 @@
       checkboxlist: [],
       tableLabel: [],
       questionList: [],
-
       // 鎮h�呰〃鍗�
       tableLabelhz: [
         { label: "搴忓彿", width: "", prop: "patid" },
@@ -1070,18 +1072,22 @@
     },
     // 瀛愪换鍔′簩绾у脊妗�
     handleAddpatient(row) {
+      console.log(this.overallCase, "ssaaa");
       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;
@@ -1089,10 +1095,57 @@
       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,6 +1174,7 @@
           let filteredArray = "";
           if (res.code == 200) {
             this.form = res.data;
+            this.overallCase = this.form.patTaskRelevances;
             this.checkList = this.form.serviceform.split(",");
             this.daytime = this.form.sendlimitabegin.split(",");
             if (this.form.sendlimitaend)
@@ -1147,28 +1201,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;

--
Gitblit v1.9.3