From ee1d4af7e569a723afc88ab8ac1939cb2667b072 Mon Sep 17 00:00:00 2001
From: WXL <1785969728@qq.com>
Date: 星期一, 03 三月 2025 18:06:13 +0800
Subject: [PATCH] 测试完成

---
 src/components/OptionalForm/index.vue              |    7 -
 src/views/patient/propaganda/particty.vue          |   90 ++++++++++++++-------
 src/views/patient/propaganda/QuestionnaireTask.vue |  113 ++++++++++++++++++---------
 3 files changed, 133 insertions(+), 77 deletions(-)

diff --git a/src/components/OptionalForm/index.vue b/src/components/OptionalForm/index.vue
index c00251a..62bb525 100644
--- a/src/components/OptionalForm/index.vue
+++ b/src/components/OptionalForm/index.vue
@@ -199,7 +199,6 @@
       getillnesslist(this.patientqueryParams).then((res) => {
         this.donorchargeList = res.rows;
         this.patienttotal = res.total;
-        console.log(this.$refs.multipleTable, "22");
         this.Restorecheck();
       });
     },
@@ -210,8 +209,6 @@
       if (this.multipleSelection.length <= selection.length) {
         this.multipleSelection = selection;
       } else {
-        console.log(selection, "selection");
-        console.log(this.multipleSelection, "this.multipleSelection");
         this.multipleSelection.forEach((item) => {
           if (selection.includes(item)) {
           } else {
@@ -232,11 +229,7 @@
         });
       }
       // 璧嬪�肩粰鏁翠綋閫変腑鏁扮粍
-      console.log(this.overallCase);
       this.multipleSelection.forEach((item) => {
-        console.log(
-          this.overallCase.every((obj) => obj.icdname != item.icdname)
-        );
 
         if (this.overallCase.every((obj) => obj.icdname != item.icdname)) {
           this.overallCase.push(item);
diff --git a/src/views/patient/propaganda/QuestionnaireTask.vue b/src/views/patient/propaganda/QuestionnaireTask.vue
index 434e013..5ecc2b2 100644
--- a/src/views/patient/propaganda/QuestionnaireTask.vue
+++ b/src/views/patient/propaganda/QuestionnaireTask.vue
@@ -251,7 +251,7 @@
                   ></el-col>
                 </el-row>
                 <el-row v-if="form.appltype == 3">
-                  <el-col :span="20"
+                  <!-- <el-col :span="20"
                     ><el-form-item label="閫傜敤鐤剧梾" prop="region">
                       <el-select
                         v-model="illnesscodes"
@@ -273,7 +273,39 @@
                         >
                         </el-option>
                       </el-select> </el-form-item
-                  ></el-col>
+                  ></el-col> -->
+                  <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>
+                      <div style="margin-bottom: 10px">
+                        <el-button
+                          type="warning"
+                          @click="$refs.child.handleAddpatient()"
+                          >娣诲姞鐤剧梾璇婃柇</el-button
+                        >
+                      </div>
+                      <el-tag
+                        v-for="tag in diagglist"
+                        :key="tag.icdcode"
+                        @close="removediagg(tag.icd10code)"
+                        type="warning"
+                        closable
+                        :disable-transitions="false"
+                      >
+                        {{ tag.icdname }}
+                      </el-tag>
+                      <!-- <el-tag v-if="hasMore" type="info">+{{ remaining }} more</el-tag> -->
+                    </el-form-item>
+                  </div>
                 </el-row>
                 <el-row v-if="form.appltype == 4">
                   <el-col :span="20"
@@ -645,31 +677,6 @@
                 </div>
               </el-form-item>
 
-              <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"
@@ -836,6 +843,13 @@
         </div>
       </div>
     </el-drawer>
+    <Optional-Form
+      ref="child"
+      :dialogVisiblepatient="dialogVisiblepatientjb"
+      :overallCase="diagglist"
+      @addoption="dialogVisiblepatientjb = false"
+      @kkoption="dialogVisiblepatientjb = true"
+    />
   </div>
 </template>
 
@@ -864,7 +878,7 @@
   taskdiaggetlist,
   taskopergetlist,
 } from "@/api/AiCentre/index";
-
+import OptionalForm from "@/components/OptionalForm"; //姝e垯缁勪欢
 import SFtable from "@/components/SFtable"; //琛ㄦ牸缁勪欢
 import { MessageBox } from "element-ui";
 
@@ -892,6 +906,7 @@
       loading: false, // 閬僵灞�
       patientloading: false, // 閬僵灞�
       dialogVisiblepatient: false, //娣诲姞鎮h�呭脊妗�
+      dialogVisiblepatientjb: false, //娣诲姞鐤剧梾寮规
       deptcodesWards: [], //绉戝鏁版嵁
       leavehospitaldistrictcodes: [], //鐥呭尯鏁版嵁
       operationcodes: [], //鎵嬫湳鏁版嵁
@@ -1168,7 +1183,7 @@
       serviceType: null,
     };
   },
-  components: { SFtable },
+  components: { SFtable, OptionalForm },
 
   created() {
     this.appraiselist = store.getters.appraiselist;
@@ -1193,13 +1208,21 @@
       this.getQtemplateclassify();
     }
   },
-
+  computed: {
+    displayedTags() {
+      // 杩斿洖鍓�10涓猼ag
+      return this.illnesslist.slice(0, 10);
+    },
+    hasMore() {
+      // 鍒ゆ柇鏄惁鏈夋洿澶氱殑tag
+      return this.illnesslist.length > 10;
+    },
+    remaining() {
+      // 璁$畻鍓╀綑鐨則ag鏁伴噺
+      return this.illnesslist.length - 10;
+    },
+  },
   methods: {
-    // {
-    //   濮撳悕: { "${name}": "榫欏偛澶�" },
-    //   鍦板潃: { "${dzz}": "榫欏" },
-    //   鐢佃瘽: { "${dhh}": "鍏釜鍏�" },
-    // }
     // 鍙橀噺杞崲瀵硅薄杞暟缁�
     convertFormat1ToFormat2(data) {
       let result = [];
@@ -1278,7 +1301,12 @@
           //   label: "鏅鸿兘鏈哄櫒浜�",
           // },
         ];
-      } else if (this.form.serviceType == 7|| this.form.serviceType == 10|| this.form.serviceType == 11|| this.form.serviceType == 9) {
+      } else if (
+        this.form.serviceType == 7 ||
+        this.form.serviceType == 10 ||
+        this.form.serviceType == 11 ||
+        this.form.serviceType == 9
+      ) {
         this.checkboxlist = [
           {
             value: "1",
@@ -1399,7 +1427,7 @@
       if (
         this.deptcodesWards[0] ||
         this.leavehospitaldistrictcodes[0] ||
-        this.illnesscodes[0] ||
+        this.diagglist[0] ||
         this.operationcodes[0]
       ) {
       } else {
@@ -1443,8 +1471,9 @@
       this.form.leavehospitaldistrictcode =
         this.leavehospitaldistrictcodes.join(",");
       this.form.opcode = this.operationcodes.join(",");
-      this.form.icd10code = this.illnesscodes.join(",");
-
+      this.form.icd10code = this.diagglist
+        .map((item) => item.icdcode)
+        .join(",");
       Editsingletask(this.form).then((res) => {
         if (res.code == 200) {
           if (this.form.taskid) {
@@ -1916,7 +1945,12 @@
         if (res.code == 200) {
           let arr = res.rows;
           arr.forEach((item) => {
+            getillnesslist({
+              icdcode: item.icd10code,
+            }).then((res) => {
+              item.icdname = res.rows[0].icdname;
             this.diagglist.push(item);
+            });
             this.illnesscodes.push(item.icd10code);
           });
         }
@@ -1979,6 +2013,7 @@
       if (result.length) {
         taskdiaghospgetsondel(result).then((res) => {
           if (res.code) {
+            this.diagglist=this.diagglist.filter(item => item.icd10code != row);
             this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
           }
         });
diff --git a/src/views/patient/propaganda/particty.vue b/src/views/patient/propaganda/particty.vue
index 1ac40ab..4529018 100644
--- a/src/views/patient/propaganda/particty.vue
+++ b/src/views/patient/propaganda/particty.vue
@@ -216,10 +216,10 @@
                 </el-form-item>
                 <el-form-item label="浠诲姟鍏宠仈" prop="longTask">
                   <el-radio-group v-model="form.appltype">
-                    <el-radio :label="1">绉戝鍏宠仈</el-radio>
-                    <el-radio :label="2">鐥呭尯鍏宠仈</el-radio>
-                    <el-radio :label="3">鐤剧梾鍏宠仈</el-radio>
-                    <el-radio :label="4">鎵嬫湳鍏宠仈</el-radio>
+                    <el-radio label="1">绉戝鍏宠仈</el-radio>
+                    <el-radio label="2">鐥呭尯鍏宠仈</el-radio>
+                    <el-radio label="3">鐤剧梾鍏宠仈</el-radio>
+                    <el-radio label="4">鎵嬫湳鍏宠仈</el-radio>
                   </el-radio-group>
                 </el-form-item>
                 <el-row v-if="form.appltype == 1">
@@ -267,31 +267,41 @@
                         </el-option>
                       </el-select> </el-form-item
                   ></el-col>
+
                 </el-row>
                 <el-row v-if="form.appltype == 3">
-                  <el-col :span="20"
-                    ><el-form-item label="閫傜敤鐤剧梾" prop="region">
-                      <el-select
-                        v-model="illnesscodes"
-                        style="width: 400px"
-                        @remove-tag="removediagg"
-                        :remote-method="remotedonor"
-                        size="medium"
-                        multiple
-                        filterable
-                        remote
-                        placeholder="璇烽�夋嫨鐥呭尯"
-                      >
-                        <el-option
-                          class="ruleFormaa"
-                          v-for="item in donorchargeList"
-                          :key="item.icdcode"
-                          :label="item.icdname"
-                          :value="item.icdcode"
+                  <div class="xinz-infs">
+                    <el-form-item>
+                      <template #label>
+                        <el-tooltip
+                          class="item"
+                          effect="light"
+                          content="閫夋嫨濂介�傜敤鐤剧梾鍚庯紝鍙互鏂逛究鎮ㄩ�氳繃鐤剧梾璇婃柇鏌ユ壘鍒板搴旂殑鐥呬汉!"
+                          placement="top-start"
                         >
-                        </el-option>
-                      </el-select> </el-form-item
-                  ></el-col>
+                          <i class="el-icon-warning-outline"></i>
+                        </el-tooltip>
+                      </template>
+                      <div style="margin-bottom: 10px">
+                        <el-button
+                          type="warning"
+                          @click="$refs.child.handleAddpatient()"
+                          >娣诲姞鐤剧梾璇婃柇</el-button
+                        >
+                      </div>
+                      <el-tag
+                        v-for="tag in diagglist"
+                        :key="tag.icdcode"
+                        @close="removediagg(tag.icd10code)"
+                        type="warning"
+                        closable
+                        :disable-transitions="false"
+                      >
+                        {{ tag.icdname }}
+                      </el-tag>
+                      <!-- <el-tag v-if="hasMore" type="info">+{{ remaining }} more</el-tag> -->
+                    </el-form-item>
+                  </div>
                 </el-row>
                 <el-row v-if="form.appltype == 4">
                   <el-col :span="20"
@@ -858,6 +868,13 @@
         </div>
       </div>
     </el-drawer>
+    <Optional-Form
+      ref="child"
+      :dialogVisiblepatient="dialogVisiblepatientjb"
+      :overallCase="diagglist"
+      @addoption="dialogVisiblepatientjb = false"
+      @kkoption="dialogVisiblepatientjb = true"
+    />
   </div>
 </template>
 
@@ -882,8 +899,11 @@
   taskdepthospgetsondel,
   taskoperhospgetsondel,
   taskdiaghospgetsondel,
+  taskdiaggetlist,
+  taskopergetlist,
 } from "@/api/AiCentre/index";
 import { deptTreeSelect } from "@/api/system/user";
+import OptionalForm from "@/components/OptionalForm";
 import { MessageBox } from "element-ui";
 
 import SFtable from "@/components/SFtable"; //琛ㄦ牸缁勪欢
@@ -914,6 +934,7 @@
       loading: false, // 閬僵灞�
       patientloading: false, // 閬僵灞�
       dialogVisiblepatient: false, //娣诲姞鎮h�呭脊妗�
+      dialogVisiblepatientjb: false,
       deptcodesWards: [], //绉戝鏁版嵁
       leavehospitaldistrictcodes: [], //鐥呭尯鏁版嵁
       operationcodes: [], //鎵嬫湳鏁版嵁
@@ -1198,7 +1219,7 @@
       serviceType: null,
     };
   },
-  components: { SFtable },
+  components: { SFtable, OptionalForm },
 
   created() {
     this.appraiselist = store.getters.appraiselist;
@@ -1445,11 +1466,11 @@
       if (
         this.deptcodesWards[0] ||
         this.leavehospitaldistrictcodes[0] ||
-        this.illnesscodes[0] ||
+        this.diagglist[0] ||
         this.operationcodes[0]
       ) {
       } else {
-        this.$modal.msgError("璇烽�夋嫨绉戝鎴栫梾鍖�");
+        this.$modal.msgError("璇烽�夋嫨浠诲姟鍏宠仈鏉′欢");
         return;
       }
       if (!this.form.patTaskRelevances[0] && !this.form.longTask) {
@@ -1488,8 +1509,9 @@
       this.form.leavehospitaldistrictcode =
         this.leavehospitaldistrictcodes.join(",");
       this.form.opcode = this.operationcodes.join(",");
-      this.form.icd10code = this.illnesscodes.join(",");
-      Editsingletask(this.form).then((res) => {
+      this.form.icd10code = this.diagglist
+        .map((item) => item.icdcode)
+        .join(",");      Editsingletask(this.form).then((res) => {
         if (res.code == 200) {
           if (this.form.taskid) {
             this.$modal.msgSuccess("淇敼鎴愬姛");
@@ -1890,7 +1912,12 @@
         if (res.code == 200) {
           let arr = res.rows;
           arr.forEach((item) => {
+            getillnesslist({
+              icdcode: item.icd10code,
+            }).then((res) => {
+              item.icdname = res.rows[0].icdname;
             this.diagglist.push(item);
+            });
             this.illnesscodes.push(item.icd10code);
           });
         }
@@ -1991,6 +2018,7 @@
       if (result.length) {
         taskdiaghospgetsondel(result).then((res) => {
           if (res.code) {
+            this.diagglist=this.diagglist.filter(item => item.icd10code != row);
             this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
           }
         });

--
Gitblit v1.9.3