From 12eb16cb5a087588fa5f598376b1f36d15ac81a3 Mon Sep 17 00:00:00 2001
From: WXL <1785969728@qq.com>
Date: 星期五, 14 三月 2025 10:45:15 +0800
Subject: [PATCH] 测试完成

---
 src/views/followvisit/discharge/index.vue |  256 +++++++++++++++++++++++++++++++++++++++++---------
 1 files changed, 207 insertions(+), 49 deletions(-)

diff --git a/src/views/followvisit/discharge/index.vue b/src/views/followvisit/discharge/index.vue
index 718fe91..773b2af 100644
--- a/src/views/followvisit/discharge/index.vue
+++ b/src/views/followvisit/discharge/index.vue
@@ -17,7 +17,7 @@
                   font-weight: 600;
                 "
               >
-                {{ item.value }}
+                {{ item.value ? item.value : 0 }}
               </div>
             </div>
           </el-card>
@@ -26,7 +26,7 @@
           <div class="ysfleftvlue">
             <el-card shadow="hover">
               <div style="padding: 8px">
-                <span>宸插彂閫佹湭棰嗗彇</span>
+                <span>琛ㄥ崟宸插彂閫�</span>
                 <div
                   style="
                     text-align: center;
@@ -80,6 +80,17 @@
         </el-form-item>
 
         <el-form-item label="鍑洪櫌鏃堕棿">
+          <el-date-picker
+            v-model="dateRange"
+            style="width: 240px"
+            value-format="yyyy-MM-dd"
+            type="daterange"
+            range-separator="-"
+            start-placeholder="寮�濮嬫棩鏈�"
+            end-placeholder="缁撴潫鏃ユ湡"
+          ></el-date-picker>
+        </el-form-item>
+        <el-form-item label="搴旈殢璁挎椂闂�">
           <el-date-picker
             v-model="dateRange"
             style="width: 240px"
@@ -188,6 +199,19 @@
             </div>
           </div>
         </el-col>
+        <el-col :span="1.5">
+          <div class="documentf">
+            <div class="document">
+              <el-button
+                type="success"
+                plain
+                size="medium"
+                @click="buidegetTasklist()"
+                >寰呭姙鏈嶅姟</el-button
+              >
+            </div>
+          </div>
+        </el-col>
       </el-row>
       <el-table
         v-loading="loading"
@@ -200,14 +224,16 @@
         <el-table-column
           label="浠诲姟鍚嶇О"
           fixed
+          width="150"
+          show-overflow-tooltip
           align="center"
           key="taskName"
           prop="taskName"
-          width="180"
         />
         <!-- <el-table-column label="搴忓彿" fixed align="center" key="id" prop="id" /> -->
         <el-table-column
           label="濮撳悕"
+          width="100"
           align="center"
           key="sendname"
           prop="sendname"
@@ -219,6 +245,7 @@
               @click="
                 $router.push({
                   path: '/patient/indexls/',
+                  query: { sfzh: scope.row.sfzh },
                 })
               "
               ><span class="button-textsc">{{
@@ -243,17 +270,17 @@
             >
               <div v-if="scope.row.sendstate == 1">
                 <el-tag type="primary" :disable-transitions="false"
-                  >琚鍙�</el-tag
+                  >琛ㄥ崟宸查鍙�</el-tag
                 >
               </div>
               <div v-if="scope.row.sendstate == 2">
                 <el-tag type="primary" :disable-transitions="false"
-                  >寰呭彂閫�</el-tag
+                  >寰呴殢璁�</el-tag
                 >
               </div>
               <div v-if="scope.row.sendstate == 3">
                 <el-tag type="success" :disable-transitions="false"
-                  >宸插彂閫佹湭棰嗗彇</el-tag
+                  >琛ㄥ崟宸插彂閫�</el-tag
                 >
               </div>
               <div v-if="scope.row.sendstate == 4">
@@ -281,7 +308,7 @@
         />
 
         <el-table-column
-          label="浜哄伐澶勭悊鎰忚"
+          label="澶勭悊鎰忚"
           align="center"
           key="suggest"
           prop="suggest"
@@ -384,7 +411,7 @@
         /> -->
 
         <!-- <el-table-column label="骞撮緞" align="center" key="age" prop="age" /> -->
-        <!-- <el-table-column label="鎬у埆" align="center" key="sex" prop="sex" /> -->
+        <!-- <el-table-column label="鎬у埆"width="100" align="center" key="sex" prop="sex" /> -->
         <!-- <el-table-column label="搴婂彿" align="center" key="badNo" prop="badNo" /> -->
         <el-table-column
           label="绉戝"
@@ -466,7 +493,7 @@
           label="鎿嶄綔"
           align="center"
           fixed="right"
-          width="200"
+          width="300"
           class-name="small-padding fixed-width"
         >
           <template slot-scope="scope">
@@ -651,46 +678,67 @@
     </el-dialog>
     <!-- 鍐嶆闅忚 -->
     <el-dialog title="鎮h�呭啀娆¢殢璁�" :visible.sync="dialogFormVisible">
-      <el-form ref="form" :model="zcform" label-width="80px">
-        <el-form-item label="鎮h�呭悕绉�">
-          <el-input style="width: 400px" v-model="zcform.name"></el-input>
-        </el-form-item>
+      <el-form ref="zcform" :rules="zcrules" :model="zcform" label-width="80px">
         <el-form-item label="浠诲姟鍚嶇О">
-          <el-input style="width: 400px" v-model="zcform.name"></el-input>
+          <el-input
+            style="width: 400px"
+            disabled
+            v-model="zcform.taskName"
+          ></el-input>
         </el-form-item>
-        <el-form-item label="闅忚鏂瑰紡">
+        <el-form-item label="鎮h�呭悕绉�">
+          <el-input
+            style="width: 400px"
+            disabled
+            v-model="zcform.sendname"
+          ></el-input>
+        </el-form-item>
+        <el-form-item label="骞撮緞">
+          <el-input
+            style="width: 400px"
+            disabled
+            v-model="zcform.age"
+          ></el-input>
+        </el-form-item>
+        <el-form-item label="绉戝">
+          <el-input
+            style="width: 400px"
+            disabled
+            v-model="zcform.deptname"
+          ></el-input>
+        </el-form-item>
+        <el-form-item label="鐥呭尯">
+          <el-input
+            style="width: 400px"
+            disabled
+            v-model="zcform.leavehospitaldistrictname"
+          ></el-input>
+        </el-form-item>
+
+        <el-form-item label="闅忚鏂瑰紡" prop="resource">
           <el-radio-group v-model="zcform.resource">
             <el-radio label="1">鏈梾鍖洪殢璁�</el-radio>
             <el-radio label="2">闅忚涓績闅忚</el-radio>
           </el-radio-group>
         </el-form-item>
-        <el-form-item label="鍗冲埢鍙戦��">
+        <!-- <el-form-item label="鍗冲埢鍙戦��">
           <el-switch v-model="zcform.delivery"></el-switch>
+        </el-form-item> -->
+        <el-form-item label="闅忚鏃堕棿" prop="date1">
+          <el-date-picker
+            type="date"
+            placeholder="閫夋嫨鏃ユ湡"
+            v-model="zcform.date1"
+            style="width: 100%"
+          ></el-date-picker>
         </el-form-item>
-        <el-form-item label="闅忚鏃堕棿" v-if="!zcform.delivery">
-          <el-col :span="11">
-            <el-date-picker
-              type="date"
-              placeholder="閫夋嫨鏃ユ湡"
-              v-model="zcform.date1"
-              style="width: 100%"
-            ></el-date-picker>
-          </el-col>
-          <el-col class="line" :span="2">-</el-col>
-          <el-col :span="11">
-            <el-time-picker
-              placeholder="閫夋嫨鏃堕棿"
-              v-model="zcform.date2"
-              style="width: 100%"
-            ></el-time-picker>
-          </el-col>
+        <el-form-item label="闅忚璁板綍">
+          <el-input type="textarea" v-model="zcform.remark"></el-input>
         </el-form-item>
       </el-form>
       <div slot="footer" class="dialog-footer">
         <el-button @click="dialogFormVisible = false">鍙� 娑�</el-button>
-        <el-button type="primary" @click="dialogFormVisible = false"
-          >纭� 瀹�</el-button
-        >
+        <el-button type="primary" @click="setupsubtask">纭鍒涘缓鏈嶅姟</el-button>
       </div>
     </el-dialog>
   </div>
@@ -698,15 +746,17 @@
 
 <script>
 import {
-  listUser,
-  getUser,
   delUser,
   addUser,
   updateUser,
   resetUserPwd,
   changeUserStatus,
 } from "@/api/system/user";
-import { getTaskservelist } from "@/api/AiCentre/index";
+import {
+  getTaskservelist,
+  buidegetTasklist,
+  addserviceSubtask,
+} from "@/api/AiCentre/index";
 import Treeselect from "@riophae/vue-treeselect";
 import store from "@/store";
 import "@riophae/vue-treeselect/dist/vue-treeselect.css";
@@ -809,7 +859,7 @@
           value: 0,
         },
         {
-          name: "寰呭彂閫�",
+          name: "寰呴殢璁�",
           value: 0,
         },
         {
@@ -818,11 +868,18 @@
         },
 
         // {
-        //   name: "宸插彂閫佹湭棰嗗彇",
+        //   name: "琛ㄥ崟宸插彂閫�",
         //   value: 0,
         // },
       ],
-
+      zcrules: {
+        date1: [
+          { required: true, message: "璇烽�夋嫨闅忚鏂瑰紡", trigger: "change" },
+        ],
+        resource: [
+          { required: true, message: "璇烽�夋嫨闅忚鏃堕棿", trigger: "blur" },
+        ],
+      },
       // 琛ㄥ崟鍙傛暟
       form: {
         phonenumber: "",
@@ -836,6 +893,8 @@
       topqueryParams: {
         pageNum: 1,
         pageSize: 10,
+        sendstate:2,
+        sort: 1,
         serviceType: 2,
         searchscope: 3,
         scopetype: [],
@@ -848,15 +907,15 @@
       topicoptions: [
         {
           value: 1,
-          label: "琚鍙�",
+          label: "琛ㄥ崟宸查鍙�",
         },
         {
           value: 2,
-          label: "寰呭彂閫�",
+          label: "寰呴殢璁�",
         },
         {
           value: 3,
-          label: "宸插彂閫佹湭棰嗗彇",
+          label: "琛ㄥ崟宸插彂閫�",
         },
         {
           value: 4,
@@ -939,6 +998,14 @@
         console.log(this.topqueryParams.leavehospitaldistrictcodes, "11");
       }
       this.loading = true;
+      if (
+        this.topqueryParams.leavehospitaldistrictcodes[0] &&
+        this.topqueryParams.leaveldeptcodes[0]
+      ) {
+        this.topqueryParams.deptOrDistrict = 2;
+      } else {
+        this.topqueryParams.deptOrDistrict = 1;
+      }
       getTaskservelist(this.topqueryParams).then((response) => {
         this.userList = response.rows[0].serviceSubtaskList;
         this.total = response.total;
@@ -979,7 +1046,69 @@
         this.total = response.total;
       });
     },
-    // 鏌ョ湅褰卞儚闅忚璇︽儏
+    buidegetTasklist(type) {
+      if (this.topqueryParams.searchscope == 3) {
+        this.topqueryParams.leaveldeptcodes = store.getters.belongDepts.map(
+          (obj) => obj.deptCode
+        );
+        this.topqueryParams.leavehospitaldistrictcodes =
+          store.getters.belongWards.map((obj) => obj.districtCode);
+      }
+      // 鎺ュ彈寮傚父璺宠浆
+      if (this.errtype) {
+        this.topqueryParams.leavehospitaldistrictcodes.push(
+          this.leavehospitaldistrictcode
+        );
+      }
+      let obj = {
+        pageNum: 1,
+        pageSize: 10,
+        leavehospitaldistrictcodes:
+          this.topqueryParams.leavehospitaldistrictcodes,
+        sendstates: [2, 3],
+        leaveldeptcodes: this.topqueryParams.leaveldeptcodes,
+      };
+      buidegetTasklist(obj).then((response) => {
+        this.userList = response.rows[0].serviceSubtaskList;
+        this.total = response.total;
+        if (refresh) {
+          this.cardlist[0].value =
+            Number(response.rows[0].wzx) + Number(response.rows[0].ysf);
+          this.cardlist[1].value = response.rows[0].wzx;
+          this.cardlist[2].value = response.rows[0].ysf;
+          this.ycvalue = response.rows[0].yc;
+          this.cardlist[3].value = response.rows[0].fssb;
+          this.cardlist[4].value = response.rows[0].dfs;
+          this.cardlist[5].value = response.rows[0].yfs2;
+          this.yfsvalue = response.rows[0].yfs;
+        }
+        this.loading = false;
+        this.userList.forEach((item) => {
+          let idArray = null;
+          if (item.endtime) {
+            item.endDay = this.daysBetween(item.endtime);
+          }
+
+          if (item.preachform) {
+            if (item.endtime) {
+              item.preachformson = item.preachform;
+              idArray = item.preachform.split(",");
+            }
+
+            item.preachform = idArray.map((value) => {
+              // 鏌ユ壘id瀵瑰簲鐨勫璞�
+              const item = this.checkboxlist.find(
+                (item) => item.value == value
+              );
+              // 濡傛灉鎵惧埌瀵瑰簲鐨刬d锛岃繑鍥瀕abel鍊硷紝鍚﹀垯杩斿洖null
+              return item ? item.label : null;
+            });
+          }
+        });
+        this.total = response.total;
+      });
+    },
+    // 鏌ョ湅闂ㄨ瘖闅忚璇︽儏
     Referencequestion(row) {
       this.previewVisible = true;
     },
@@ -1076,7 +1205,9 @@
         pageNum: 1,
         pageSize: 10,
         serviceType: 2,
+        sendstate:2,
         searchscope: 2,
+        sort: 1,
       };
       this.handleQuery(1);
     },
@@ -1218,7 +1349,6 @@
       if (row.preachformson) {
         if (row.preachformson.includes("3")) {
           type = 1;
-          console.log(type, "rwo");
         }
       }
       this.$router.push({
@@ -1232,7 +1362,8 @@
       });
     },
     // 鍐嶆闅忚
-    followupvisit() {
+    followupvisit(row) {
+      this.zcform = row;
       this.dialogFormVisible = true;
     },
     onSubmit() {},
@@ -1254,7 +1385,7 @@
           }).then((res) => {
             if (res.code == 200) {
               objson.sendstate = 4;
-              objson.remark = '鏈嶅姟鏆傚仠';
+              objson.remark = "鏈嶅姟鏆傚仠";
               Editsingletaskson(objson).then((res) => {
                 if (res.code) {
                   this.$modal.msgSuccess("璁板綍鎴愬姛");
@@ -1295,6 +1426,33 @@
       }
       return "";
     },
+    // 鍒涘缓鍐嶆闅忚鏈嶅姟
+    setupsubtask() {
+      this.$refs['zcform'].validate((valid) => {
+        if (valid) {
+          let form = structuredClone(this.zcform);
+          form.longSendTime = this.formatTime(form.date1);
+          if (form.resource) {
+            if (form.resource == 2) {
+              form.serviceType = 10;
+            }
+          } else {
+            this.$modal.msgError("鏈�夋嫨闅忚鏂瑰紡");
+          }
+          form.id = null;
+          form.sendstate = 2;
+          form.preachform = form.preachformson;
+          addserviceSubtask(form).then((res) => {
+            if (res.code == 200) {
+              this.$modal.msgSuccess("鍒涘缓鎴愬姛");
+            } else {
+              this.$modal.msgError("鍒涘缓澶辫触");
+            }
+            this.dialogFormVisible = false;
+          });
+        }
+      });
+    },
   },
 };
 </script>

--
Gitblit v1.9.3