From cb3c799e1bd6a7cf5dd5c7e3cadee238bf67b729 Mon Sep 17 00:00:00 2001
From: WXL (wul) <wl_5969728@163.com>
Date: 星期五, 10 十月 2025 14:26:10 +0800
Subject: [PATCH] 随访详情本人所属功能及服务形式补偿流程组件维护

---
 src/views/patient/propaganda/particty.vue |  128 +++++++++++++++++++++++++++++-------------
 1 files changed, 88 insertions(+), 40 deletions(-)

diff --git a/src/views/patient/propaganda/particty.vue b/src/views/patient/propaganda/particty.vue
index fd0f263..d67c424 100644
--- a/src/views/patient/propaganda/particty.vue
+++ b/src/views/patient/propaganda/particty.vue
@@ -69,7 +69,7 @@
                     placeholder="璇疯緭鍏ヤ换鍔℃弿杩�"
                   />
                 </el-form-item>
-                <el-form-item label="鏈嶅姟褰㈠紡">
+                <!-- <el-form-item label="鏈嶅姟褰㈠紡">
                   <el-radio-group
                     v-model="checkList"
                     @change="handleCheckedCitiesChange"
@@ -78,11 +78,20 @@
                       v-for="(item, index) in checkboxlist"
                       :key="index"
                       :label="item.value"
-                      @change="checkboxChange($event, item.value)"
                     >
                       {{ item.label }}</el-radio
                     >
                   </el-radio-group>
+                </el-form-item> -->
+                <el-form-item label="鏈嶅姟褰㈠紡">
+                  <SortCheckbox
+                    v-model="checkList"
+                    :options="checkboxlist"
+                    :initialselectedOrder="selectedOrder"
+                    value-key="value"
+                    label-key="label"
+                    @change="checkSelectionChange"
+                  />
                 </el-form-item>
                 <!-- <div class="xinz-infs">
                   <el-form-item label="鏈嶅姟鎵ц椤哄簭" prop="daytime">
@@ -216,7 +225,7 @@
                 </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="1">绉戝鍏宠仈</el-radio>
                     <el-radio label="2">鐥呭尯鍏宠仈</el-radio>
                     <el-radio label="3">鐤剧梾鍏宠仈</el-radio>
                     <el-radio label="4">鎵嬫湳鍏宠仈</el-radio>
@@ -224,7 +233,7 @@
                 </el-form-item>
                 <el-row v-if="form.appltype == 1">
                   <el-col :span="20"
-                    ><el-form-item label="閫傜敤璇鹃缁�" prop="region">
+                    ><el-form-item label="閫傜敤绉戝" prop="region">
                       <el-select
                         v-model="deptcodesWards"
                         @remove-tag="removetag"
@@ -232,7 +241,7 @@
                         size="medium"
                         multiple
                         filterable
-                        placeholder="璇烽�夋嫨璇鹃缁�"
+                        placeholder="璇烽�夋嫨绉戝"
                       >
                         <el-option
                           class="ruleFormaa"
@@ -471,7 +480,7 @@
                         size="medium"
                         :disabled="!patientqueryParams.allhosp"
                         @click="handleQuery"
-                        >鏂板</el-button
+                        >娣诲姞鎮h��</el-button
                       >
                     </el-col>
 
@@ -887,7 +896,7 @@
 import { messagelistpatient } from "@/api/patient/homepage";
 import store from "@/store";
 import {
-  getTaskpatient,
+  getTaskpatientQC,
   getillnesslist,
   getbaseopera,
   getFollowuplist,
@@ -909,6 +918,7 @@
 } from "@/api/AiCentre/index";
 import { deptTreeSelect } from "@/api/system/user";
 import OptionalForm from "@/components/OptionalForm";
+import SortCheckbox from "@/components/SortCheckbox"; //琛ㄦ牸缁勪欢
 import { MessageBox } from "element-ui";
 
 import SFtable from "@/components/SFtable"; //琛ㄦ牸缁勪欢
@@ -940,7 +950,7 @@
       patientloading: false, // 閬僵灞�
       dialogVisiblepatient: false, //娣诲姞鎮h�呭脊妗�
       dialogVisiblepatientjb: false,
-      deptcodesWards: [], //璇鹃缁勬暟鎹�
+      deptcodesWards: [], //绉戝鏁版嵁
       leavehospitaldistrictcodes: [], //鐥呭尯鏁版嵁
       operationcodes: [], //鎵嬫湳鏁版嵁
       illnesscodes: [], //鐤剧梾鏁版嵁
@@ -951,6 +961,8 @@
       skip: false,
       donorchargeList: [],
       baseoperaList: [],
+      selectedOrder: [],
+
       usable: [
         { value: "0", label: "鍙敤" },
         { value: "1", label: "鍋滅敤" },
@@ -971,7 +983,7 @@
         { label: "骞撮緞", width: "", prop: "age" },
         { label: "璐d换鎶ゅ+", width: "", prop: "nurseName" },
         { label: "涓绘不鍖荤敓", width: "", prop: "drname" },
-        { label: "璇鹃缁�", width: "240", prop: "dept" },
+        { label: "绉戝", width: "240", prop: "dept" },
         { label: "鐥呭尯", width: "240", prop: "leavehospitaldistrictname" },
       ],
       // 鎮h�呰〃鍗�
@@ -985,7 +997,7 @@
         { label: "鍑洪櫌澶╂暟", width: "", prop: "endDay" },
         { label: "璐d换鎶ゅ+", width: "", prop: "nurseName" },
         { label: "涓绘不鍖荤敓", width: "", prop: "drname" },
-        { label: "璇鹃缁�", width: "180", prop: "deptName" },
+        { label: "绉戝", width: "180", prop: "deptName" },
         { label: "鐥呭尯", width: "150", prop: "leavehospitaldistrictname" },
       ],
 
@@ -1025,7 +1037,7 @@
         pageNum: 1, //
         pageSize: 10,
       },
-      checkList: "",
+      checkList: [],
       foncheckList: [],
       formatvalue: {
         format1: "",
@@ -1039,7 +1051,7 @@
       patientqueryParams: {
         pageNum: 1, //
         pageSize: 10,
-        topica: 1, //0鍏ㄩ儴1璇鹃缁�2鐥呭尯
+        topica: 1, //0鍏ㄩ儴1绉戝2鐥呭尯
         leaveldeptcodes: [],
         leavehospitaldistrictcodes: [],
       },
@@ -1122,11 +1134,11 @@
       },
       taskoptions: [
         {
-          value: "1",
+          value: "4",
           label: "鍑洪櫌鐥呬汉",
         },
         {
-          value: "4",
+          value: "1",
           label: "鍦ㄩ櫌鐥呬汉",
         },
         {
@@ -1149,7 +1161,7 @@
         },
         {
           value: 1,
-          label: "璇鹃缁勬偅鑰�",
+          label: "绉戝鎮h��",
         },
         {
           value: 2,
@@ -1158,14 +1170,14 @@
       ],
 
       tasktypes: store.getters.tasktypes,
-      // 璇鹃缁�/鐥呭尯
+      // 绉戝/鐥呭尯
       belongWards: [],
       deptlist: [],
       hosplist: [],
       diagglist: [],
       operlist: [],
-      tempDetpRelevanceslist: [], //璇鹃缁勬暟鎹�
-      tempDetpRelevanceslistform: [], //璇鹃缁勬暟鎹�
+      tempDetpRelevanceslist: [], //绉戝鏁版嵁
+      tempDetpRelevanceslistform: [], //绉戝鏁版嵁
       tempbelongWards: [], //鐥呭尯鏁版嵁
       tempbelongWardsform: [], //鐥呭尯鏁版嵁
       rules: {
@@ -1182,13 +1194,13 @@
           { required: true, message: "鍙戦�佽缃笉鑳戒负绌�", trigger: "blur" },
         ],
         // deptcode: [
-        //   { required: true, message: "閫傜敤璇鹃缁勪笉鑳戒负绌�", trigger: "blur" },
+        //   { required: true, message: "閫傜敤绉戝涓嶈兘涓虹┖", trigger: "blur" },
         // ],
         // leavehospitaldistrictcode: [
         //   { required: true, message: "閫傜敤鐥呭尯涓嶈兘涓虹┖", trigger: "blur" },
         // ],
       },
-      // 璇鹃缁勯櫌鍖烘煡璇㈠叆鍙�
+      // 绉戝闄㈠尯鏌ヨ鍏ュ弬
       queryParamsdept: {
         tempid: "",
         type: 2,
@@ -1198,7 +1210,7 @@
       serviceType: null,
     };
   },
-  components: { SFtable, OptionalForm },
+  components: { SFtable, OptionalForm, SortCheckbox },
 
   created() {
     this.appraiselist = store.getters.appraiselist;
@@ -1451,7 +1463,8 @@
         this.leavehospitaldistrictcodes = [];
       }
       if (this.checkList) {
-        this.form.preachform = this.checkList;
+        this.form.preachform = this.checkList.join(",");
+        this.form.preachformList = this.selectedOrder;
       } else {
         this.$modal.msgError("璇烽�夋嫨鏈嶅姟绫诲瀷");
         return;
@@ -1467,10 +1480,10 @@
         this.$modal.msgError("璇烽�夋嫨浠诲姟鍏宠仈鏉′欢");
         return;
       }
-      if (!this.form.patTaskRelevances[0] && !this.form.longTask) {
-        this.$modal.msgError("璇烽�夋嫨鐥呬汉");
-        return;
-      }
+      // if (!this.form.patTaskRelevances[0] && !this.form.longTask) {
+      //   this.$modal.msgError("璇烽�夋嫨鐥呬汉");
+      //   return;
+      // }
 
       if (!this.form.templatename && !this.templateor) {
         this.$modal.msgError("鏈�夋嫨妯℃澘");
@@ -1633,7 +1646,7 @@
           { label: "鍑洪櫌澶╂暟", width: "", prop: "endDay" },
           { label: "璐d换鎶ゅ+", width: "", prop: "nurseName" },
           { label: "鍖荤敓", width: "", prop: "drname" },
-          { label: "璇鹃缁�", width: "180", prop: "dept" },
+          { label: "绉戝", width: "180", prop: "dept" },
           { label: "鐥呭尯", width: "150", prop: "leavehospitaldistrictname" },
         ];
       } else if (this.patientqueryParams.allhosp == 4) {
@@ -1647,7 +1660,21 @@
           { label: "鍑洪櫌澶╂暟", width: "", prop: "endDay" },
           { label: "璐d换鎶ゅ+", width: "", prop: "nurseName" },
           { label: "鍖荤敓", width: "", prop: "drname" },
-          { label: "璇鹃缁�", width: "180", prop: "dept" },
+          { label: "绉戝", width: "180", prop: "dept" },
+          { label: "鐥呭尯", width: "150", prop: "leavehospitaldistrictname" },
+        ];
+      } else if (this.patientqueryParams.allhosp == 2) {
+        this.tableLabelhz = [
+          { label: "灏辫瘖鏃ユ湡", width: "150", prop: "admitdate" },
+          { label: "鎮h��", width: "", prop: "name" },
+          { label: "韬唤璇�", width: "200", prop: "idcardno" },
+          { label: "鐢佃瘽鍙风爜", width: "180", prop: "telcode" },
+          { 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: "dept" },
           { label: "鐥呭尯", width: "150", prop: "leavehospitaldistrictname" },
         ];
       }
@@ -1656,12 +1683,11 @@
       } else {
         this.patientqueryParams.pids = null;
       }
-      // 绫诲瀷鍒ゆ柇
       if (this.patientqueryParams.allhosp == 1) {
         this.patientqueryParams.cry = 1;
       } else if (this.patientqueryParams.allhosp == 4) {
-        this.patientqueryParams.cry = 0;
-        this.patientqueryParams.allhosp = "1";
+        //  this.patientqueryParams.cry = 0;
+        //  this.patientqueryParams.allhosp = "1";
       }
       // 鏉ユ簮鍒ゆ柇
 
@@ -1681,7 +1707,7 @@
         this.patientqueryParams.leavehospitaldistrictcodes =
           store.getters.belongWards.map((obj) => obj.districtCode);
       }
-      getTaskpatient(this.patientqueryParams).then((response) => {
+      getTaskpatientQC(this.patientqueryParams).then((response) => {
         this.patientuserList = response.rows;
         this.patientuserList.forEach((item) => {
           if (item.endtime) {
@@ -1716,6 +1742,13 @@
           item.sfzh = item.idcardno;
           if (this.patientqueryParams.allhosp == 6) {
             item.patfrom = 1;
+          }
+          if (this.patientqueryParams.allhosp == 1) {
+            item.visittime = item.endtime;
+          } else if (this.patientqueryParams.allhosp == 4) {
+            item.visittime = item.starttime;
+          } else if (this.patientqueryParams.allhosp == 2) {
+            item.visittime = item.admitdate;
           }
           this.overallCase.push(item);
           this.form.patTaskRelevances.push(item);
@@ -1764,6 +1797,10 @@
     },
     getList() {},
     handleQuery() {
+      console.log(
+        "this.patientqueryParams.allhosp",
+        this.patientqueryParams.allhosp
+      );
       if (this.patientqueryParams.topica == 0) {
         this.patientqueryParams.leavehospitaldistrictcodes =
           store.getters.leavehospitaldistrictcodes;
@@ -1787,7 +1824,13 @@
       )
         this.patientqueryParams.leaveldeptcodes = null;
       this.handleAddpatient();
+
+      console.log(
+        "this.patientqueryParams.allhosp",
+        this.patientqueryParams.allhosp
+      );
     },
+
     resetQuerymb() {
       this.topqueryParams = { svyname: "" };
       this.handleQuerymb();
@@ -1796,7 +1839,7 @@
       this.patientqueryParams = {
         pageNum: 1, //
         pageSize: 10,
-        topica: 1, //0鍏ㄩ儴1璇鹃缁�2鐥呭尯
+        topica: 1, //0鍏ㄩ儴1绉戝2鐥呭尯
         leaveldeptcodes: [],
         leavehospitaldistrictcodes: [],
       };
@@ -1851,7 +1894,8 @@
               ? this.form.patTaskRelevances
               : [];
             this.overallCase = this.form.patTaskRelevances.concat();
-            this.checkList = this.form.preachform;
+            this.checkList = this.form.preachform.split(",");
+            this.selectedOrder = this.form.preachformList;
 
             this.overallCase.forEach((item) => {
               if (item.endtime) {
@@ -1900,7 +1944,7 @@
       this.time3 = ""; //鏅氫笂鏃堕棿娈�
       this.time4 = ""; //鏅氫笂鏃堕棿娈�
     },
-    // 鑾峰彇璇鹃缁勫垪琛�
+    // 鑾峰彇绉戝鍒楄〃
     listDept() {
       this.leavehospitaldistrictcodes = [];
       this.deptcodesWards = [];
@@ -1970,7 +2014,7 @@
       }
     },
 
-    // 浠诲姟璇鹃缁勫垹闄よЕ鍙�
+    // 浠诲姟绉戝鍒犻櫎瑙﹀彂
     removetag(row) {
       let result = this.deptlist
         .filter((item) => item.deptCode == row)
@@ -2174,7 +2218,7 @@
         });
       }
     },
-    // 淇濆瓨璇鹃缁�/鐥呭尯
+    // 淇濆瓨绉戝/鐥呭尯
     putbelongDepts(id) {
       this.tempDetpRelevanceslistform.forEach((item) => {
         item.tempid = id;
@@ -2184,7 +2228,7 @@
       });
       depthospgetson(this.tempDetpRelevanceslistform).then((res) => {
         if (res.code == 200) {
-          this.$modal.msgSuccess("璇鹃缁勬洿鏂版垚鍔�");
+          this.$modal.msgSuccess("绉戝鏇存柊鎴愬姛");
           this.tempDetpRelevanceslistform = [];
         }
       });
@@ -2195,7 +2239,11 @@
         }
       });
     },
-    checkboxChange(checked, value) {},
+    checkSelectionChange(selectedValues, selectedOrder) {
+      this.selectedOrder = selectedValues;
+      console.log("褰撳墠閫変腑:", selectedValues);
+      console.log("閫変腑椤哄簭:", selectedOrder);
+    },
     // 鏈嶅姟褰㈠紡閫夊彇
     handleCheckedCitiesChange(row) {
       console.log(row, "鏈嶅姟");
@@ -2212,7 +2260,7 @@
         (obj) => obj.value !== tag.value
       );
     },
-    // 璇鹃缁勫鐞�
+    // 绉戝澶勭悊
     Departmenttreatment() {
       if (!this.form.taskid) {
         this.templateor = true;

--
Gitblit v1.9.3