From fbb61549bf96e9e0910b676a5524b0760d29c4be Mon Sep 17 00:00:00 2001
From: WXL (wul) <wl_5969728@163.com>
Date: 星期二, 07 四月 2026 15:16:54 +0800
Subject: [PATCH] 测试完成

---
 src/views/followvisit/discharge/index.vue |  783 ++++++++++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 679 insertions(+), 104 deletions(-)

diff --git a/src/views/followvisit/discharge/index.vue b/src/views/followvisit/discharge/index.vue
index 5380922..f4d568f 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 : 0 ? item.value : 0 }}
+                {{ item.value ? item.value : 0 }}
               </div>
             </div>
           </el-card>
@@ -55,6 +55,25 @@
                   "
                 >
                   {{ ycvalue }}
+                </div>
+              </div>
+            </el-card>
+          </div>
+        </el-col>
+        <el-col :span="2.5" v-if="orgname == '鐪佺珛鍚屽痉缈犺嫅闄㈠尯'">
+          <div class="jgleftvlue">
+            <el-card shadow="hover ">
+              <div style="padding: 8px">
+                <span>璀﹀憡</span>
+                <div
+                  style="
+                    text-align: center;
+                    font-size: 18px;
+                    margin-top: 10px;
+                    font-weight: 600;
+                  "
+                >
+                  {{ jgvalue }}
                 </div>
               </div>
             </el-card>
@@ -274,9 +293,32 @@
             </div>
           </div>
         </el-col>
+        <el-col :span="1.5" v-if="orgname == '鏅畞鐣叉棌鑷不鍘夸汉姘戝尰闄�'">
+          <div class="documentf">
+            <div class="document">
+              <el-tooltip
+                content="璇峰厛閫変腑鏈嶅姟"
+                placement="top"
+                :disabled="!multiple"
+              >
+                <div class="tooltip-wrapper">
+                  <el-button
+                    type="primary"
+                    :disabled="multiple"
+                    class="purple-button"
+                    @click="scoreDialogVisible = true"
+                  >
+                    婊℃剰搴﹁皟鏌�
+                  </el-button>
+                </div>
+              </el-tooltip>
+            </div>
+          </div>
+        </el-col>
       </el-row>
       <el-table
         v-loading="loading"
+        ref="userform"
         :data="userList"
         :row-class-name="tableRowClassName"
         @selection-change="handleSelectionChange"
@@ -298,7 +340,29 @@
           align="center"
           key="sendname"
           prop="sendname"
-        />
+        >
+          <template slot-scope="scope">
+            <el-button
+              size="medium"
+              type="text"
+              @click="
+                gettoken360(scope.row.sfzh, scope.row.drcode, scope.row.drname)
+              "
+              ><span class="button-textsc">{{
+                scope.row.sendname
+              }}</span></el-button
+            >
+          </template>
+        </el-table-column>
+        <el-table-column
+          label="璇婃柇鍚嶇О"
+          align="center"
+          key="leavediagname"
+          prop="leavediagname"
+          width="120"
+          :show-overflow-tooltip="true"
+        >
+        </el-table-column>
         <el-table-column
           label="浠诲姟鐘舵��"
           align="center"
@@ -339,6 +403,11 @@
               <div v-if="scope.row.sendstate == 6">
                 <el-tag type="success" :disable-transitions="false"
                   >宸插畬鎴�</el-tag
+                >
+              </div>
+              <div v-if="scope.row.sendstate == 7">
+                <el-tag type="danger" :disable-transitions="false"
+                  >瓒呮椂</el-tag
                 >
               </div>
             </el-tooltip>
@@ -393,13 +462,14 @@
           label="搴旈殢璁挎棩鏈�"
           width="200"
           align="center"
-          key="longSendTime"
-          prop="longSendTime"
+          key="visitTime"
+          prop="visitTime"
         >
           <template slot-scope="scope">
-            <span>{{ formatTime(scope.row.longSendTime) }}</span>
+            <span>{{ formatTime(scope.row.visitTime) }}</span>
           </template></el-table-column
         >
+        <!-- 鍘� -->
         <el-table-column
           label="涓绘不鍖荤敓"
           width="120"
@@ -413,6 +483,14 @@
           align="center"
           key="updateBy"
           prop="updateBy"
+          width="120"
+        />
+        <el-table-column
+          v-if="orgname != '涓芥按甯備腑鍖婚櫌'"
+          label="缁忕鍖荤敓"
+          align="center"
+          key="managementDoctor"
+          prop="managementDoctor"
           width="120"
         />
         <el-table-column
@@ -518,12 +596,18 @@
           prop="remark"
         >
           <template slot-scope="scope" v-if="scope.row.remark">
-            <el-tag
-              type="warning"
-              v-if="scope.row.sendstate != 5 && scope.row.sendstate != 4"
-              >{{ scope.row.remark }}</el-tag
+            <el-tooltip
+              :content="scope.row.remark"
+              placement="top"
+              effect="dark"
             >
-            <el-tag type="warning" v-else>{{ scope.row.remark }}</el-tag>
+              <el-tag
+                type="warning"
+                v-if="scope.row.sendstate != 5 && scope.row.sendstate != 4"
+                >{{ scope.row.remark }}</el-tag
+              >
+              <el-tag type="warning" v-else>{{ scope.row.remark }}</el-tag>
+            </el-tooltip>
           </template>
         </el-table-column>
         <el-table-column
@@ -546,10 +630,12 @@
                 v-if="scope.row.isVisitAgain!=2"
                 @click="followupvisit(scope.row)"
                 ><span class="button-bb"
-                  ><i class="el-icon-s-promotion"></i></span
-              ></el-button>
-            </el-tooltip> -->
-            <!-- <el-tooltip
+                  ><i class="el-icon-s-promotion"></i>鍐嶆闅忚</span
+                ></el-button
+              >
+            </el-tooltip>
+            <el-tooltip
+              v-if="scope.row.sendstate == 1 || scope.row.sendstate == 2"
               class="item"
               effect="dark"
               content="鏆傚仠鏈嶅姟"
@@ -560,8 +646,10 @@
                 type="text"
                 @click="handlestop(scope.row)"
                 v-hasPermi="['system:user:edit']"
-                ><span class="button-sc"><i class="el-icon-delete"></i></span
-              ></el-button>
+                ><span class="button-sc"
+                  ><i class="el-icon-remove-outline"></i>鏆傚仠鏈嶅姟</span
+                ></el-button
+              >
             </el-tooltip> -->
             <el-button size="medium" type="text" @click="Seedetails(scope.row)"
               ><span class="button-zx"
@@ -588,6 +676,181 @@
         @pagination="getList"
       />
     </el-row>
+    <!-- 婊℃剰搴﹀脊妗� -->
+    <el-dialog
+      title="闅忚婊℃剰搴﹁瘎鍒�"
+      :visible.sync="scoreDialogVisible"
+      width="80%"
+      :close-on-click-modal="false"
+    >
+      <el-table :data="selectedRows" border style="width: 100%">
+        <el-table-column
+          label="濮撳悕"
+          width="100"
+          align="center"
+          prop="sendname"
+        />
+        <el-table-column
+          label="浠诲姟鍚嶇О"
+          width="180"
+          align="center"
+          prop="taskName"
+        />
+        <!-- 鏂板璇勫垎鍒� -->
+        <el-table-column
+          label="鐪熷疄鎬�(20)"
+          align="center"
+          key="authenticity"
+          prop="authenticity"
+          width="150"
+        >
+          <template slot-scope="scope">
+            <el-input-number
+              v-model="scope.row.authenticity"
+              :min="0"
+              :max="20"
+              :step="1"
+              size="small"
+            />
+          </template>
+        </el-table-column>
+        <el-table-column
+          label="涓�鍛ㄥ唴瀹屾垚(20)"
+          align="center"
+          key="weekFinish"
+          prop="weekFinish"
+          width="150"
+        >
+          <template slot-scope="scope">
+            <el-input-number
+              v-model="scope.row.weekFinish"
+              :min="0"
+              :max="20"
+              :step="1"
+              size="small"
+            />
+          </template>
+        </el-table-column>
+        <el-table-column
+          label="瑙勮寖鎬�(10)"
+          align="center"
+          key="standard"
+          prop="standard"
+          width="150"
+        >
+          <template slot-scope="scope">
+            <el-input-number
+              v-model="scope.row.standard"
+              :min="0"
+              :max="10"
+              :step="1"
+              size="small"
+            />
+          </template>
+        </el-table-column>
+        <el-table-column
+          label="鍙婃椂鎬�(10)"
+          align="center"
+          key="timeliness"
+          prop="timeliness"
+          width="150"
+        >
+          <template slot-scope="scope">
+            <el-input-number
+              v-model="scope.row.timeliness"
+              :min="0"
+              :max="10"
+              :step="1"
+              size="small"
+            />
+          </template>
+        </el-table-column>
+        <el-table-column
+          label="瀹f暀鎯呭喌(10)"
+          align="center"
+          key="library"
+          prop="library"
+          width="150"
+        >
+          <template slot-scope="scope">
+            <el-input-number
+              v-model="scope.row.library"
+              :min="0"
+              :max="10"
+              :step="1"
+              size="small"
+            />
+          </template>
+        </el-table-column>
+        <el-table-column
+          label="鐜婊℃剰搴�(10)"
+          align="center"
+          key="environment"
+          prop="environment"
+          width="150"
+        >
+          <template slot-scope="scope">
+            <el-input-number
+              v-model="scope.row.environment"
+              :min="0"
+              :max="10"
+              :step="1"
+              size="small"
+            />
+          </template>
+        </el-table-column>
+        <el-table-column
+          label="鍖荤敓婊℃剰搴�(10)"
+          align="center"
+          key="doctorSatisfaction"
+          prop="doctorSatisfaction"
+          width="150"
+        >
+          <template slot-scope="scope">
+            <el-input-number
+              v-model="scope.row.doctorSatisfaction"
+              :min="0"
+              :max="10"
+              :step="1"
+              size="small"
+            />
+          </template>
+        </el-table-column>
+        <el-table-column
+          label="鎶ゅ+婊℃剰搴�(10)"
+          align="center"
+          key="nurseSatisfaction"
+          prop="nurseSatisfaction"
+          width="150"
+        >
+          <template slot-scope="scope">
+            <el-input-number
+              v-model="scope.row.nurseSatisfaction"
+              :min="0"
+              :max="10"
+              :step="1"
+              size="small"
+            />
+          </template>
+        </el-table-column>
+        <el-table-column
+          label="鎬诲垎"
+          align="center"
+          key="total"
+          prop="total"
+          fixed="right"
+        >
+          <template slot-scope="scope">
+            <span>{{ calculateTotal(scope.row) }}</span>
+          </template>
+        </el-table-column>
+      </el-table>
+
+      <div slot="footer" class="dialog-footer">
+        <el-button @click="scoreDialogVisible = false">鍙栨秷</el-button>
+        <el-button type="primary" @click="saveScores">淇濆瓨</el-button>
+      </div>
+    </el-dialog>
     <!-- 娣诲姞鎴栦慨鏀瑰奖鍍忛殢璁垮璇濇 -->
     <el-dialog
       :title="amendtag ? '淇敼鎮h�呬俊鎭�' : '鏂板鎮h��'"
@@ -627,11 +890,25 @@
             </el-form-item>
           </el-col>
         </el-row>
-
+        <el-row>
+          <el-col :span="8">
+            <el-form-item label="杩囨护鍖荤敓" width="100" prop="filterDrname">
+              <el-input
+                v-model="form.filterDrname"
+                placeholder="璇疯緭鍏ュ尰鐢熷鍚�"
+                maxlength="30"
+              />
+            </el-form-item>
+          </el-col>
+        </el-row>
         <el-row>
           <el-col :span="24">
-            <el-form-item label="闂ㄨ瘖闅忚瑕佹眰">
-              <el-input type="textarea" v-model="form.desc"></el-input>
+            <el-form-item label="杩囨护鍘熷洜">
+              <el-input
+                v-model="form.notrequiredreason"
+                type="textarea"
+                placeholder="璇疯緭鍏ヨ繃婊ゅ師鍥�"
+              ></el-input>
             </el-form-item>
           </el-col>
         </el-row>
@@ -716,6 +993,78 @@
         >
       </span>
     </el-dialog>
+    <!-- 鍐嶆闅忚 -->
+    <el-dialog title="鎮h�呭啀娆¢殢璁�" :visible.sync="dialogFormVisible">
+      <el-form ref="zcform" :rules="zcrules" :model="zcform" label-width="80px">
+        <el-form-item label="浠诲姟鍚嶇О">
+          <el-input
+            style="width: 400px"
+            disabled
+            v-model="zcform.taskName"
+          ></el-input>
+        </el-form-item>
+        <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-switch v-model="zcform.delivery"></el-switch>
+        </el-form-item> -->
+        <el-form-item label="鍑洪櫌鏃堕棿">
+          <el-input
+            style="width: 400px"
+            disabled
+            v-model="zcform.endtime"
+          ></el-input>
+        </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="闅忚璁板綍">
+          <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="setupsubtask">纭鍒涘缓鏈嶅姟</el-button>
+      </div>
+    </el-dialog>
   </div>
 </template>
 
@@ -727,7 +1076,14 @@
   resetUserPwd,
   changeUserStatus,
 } from "@/api/system/user";
-import { getTaskservelist, buidegetTasklist } from "@/api/AiCentre/index";
+import {
+  getTaskservelist,
+  buidegetTasklist,
+  addserviceSubtask,
+  query360PatInfo,
+  addsatisfaction,
+} from "@/api/AiCentre/index";
+import { alterpatient, particularpatient } from "@/api/patient/homepage";
 import Treeselect from "@riophae/vue-treeselect";
 import store from "@/store";
 import "@riophae/vue-treeselect/dist/vue-treeselect.css";
@@ -776,6 +1132,7 @@
       inputVisible: false,
       Labelchange: false,
       ycvalue: "",
+      jgvalue: "",
       yfsvalue: "",
       inputValue: "",
       preachform: "",
@@ -784,31 +1141,13 @@
       radios: [],
       previewtype: 2, //棰勮褰卞儚闅忚绫诲瀷
       total: 0, // 鎬绘潯鏁�
-      ImportQuantity: 999, //瀵煎奖鍍忛殢璁挎暟閲�
-      //棰勮褰卞儚闅忚淇℃伅
-      previewvalue: {
-        username: "杩欎釜鍖荤敓瀵逛綘鎬庝箞鏍�",
-      },
+      // 婊℃剰搴﹁皟鏌ユ暟鎹�
+      scoreDialogVisible: false,
+      selectedRows: [],
+
       value: [],
       list: [],
-      topicoptionssort: [
-        {
-          value: 0,
-          label: "鍑洪櫌鏃堕棿(姝e簭)",
-        },
-        {
-          value: 1,
-          label: "鍑洪櫌鏃堕棿(鍊掑簭)",
-        },
-        {
-          value: 2,
-          label: "鍙戦�佹椂闂�(姝e簭)",
-        },
-        {
-          value: 3,
-          label: "鍙戦�佹椂闂�(鍊掑簭)",
-        },
-      ],
+
       sourcetype: [
         {
           value: 1,
@@ -847,10 +1186,10 @@
           name: "寰呴殢璁�",
           value: 0,
         },
-        {
-          name: "宸插彂閫�",
-          value: 0,
-        },
+        // {
+        //   name: "宸插彂閫�",
+        //   value: 0,
+        // },
 
         // {
         //   name: "琛ㄥ崟宸插彂閫�",
@@ -874,11 +1213,57 @@
         qystatus: "",
         btstatus: "",
       },
+      // endOut: 1,
+      endOut: localStorage.getItem("orgname") == "涓芥按甯備腑鍖婚櫌" ? 0 : 1, //0 鍑洪櫌鏃堕棿(姝e簭)    1 鍑洪櫌鏃堕棿(鍊掑簭)   2 鍙戦�佹椂闂�(姝e簭)    3 鍙戦�佹椂闂�(鍊掑簭)  7搴旈殢璁挎棩鏈�(鍊掑簭) 搴旈殢璁挎棩鏈�(姝e簭)
+      endOuts: [
+        {
+          value: 0,
+          label: "鎴鑷冲綋鏃ユ湇鍔�",
+        },
+        {
+          value: 1,
+          label: "鍏ㄩ儴鏈嶅姟",
+        },
+      ],
+      topicoptionssort: [
+        {
+          value: 0,
+          label: "鍑洪櫌鏃堕棿(姝e簭)",
+        },
+        {
+          value: 1,
+          label: "鍑洪櫌鏃堕棿(鍊掑簭)",
+        },
+        {
+          value: 2,
+          label: "鍙戦�佹椂闂�(姝e簭)",
+        },
+        {
+          value: 3,
+          label: "鍙戦�佹椂闂�(鍊掑簭)",
+        },
+        {
+          value: 7,
+          label: "搴旈殢璁挎棩鏈�(姝e簭)",
+        },
+        {
+          value: 8,
+          label: "搴旈殢璁挎棩鏈�(鍊掑簭)",
+        },
+         {
+          value: 9,
+          label: "鎸夌収鎮h�呮帓搴�",
+        },
+      ],
       // 鏌ヨ鍙傛暟
       topqueryParams: {
         pageNum: 1,
         pageSize: 10,
+        sendstate:
+          localStorage.getItem("orgname") == "鐪佺珛鍚屽痉缈犺嫅闄㈠尯" ? null : 2,
+        sort: localStorage.getItem("orgname") == "涓芥按甯備腑鍖婚櫌" ? 8 : 2, //0 鍑洪櫌鏃堕棿(姝e簭)    1 鍑洪櫌鏃堕棿(鍊掑簭)   2 鍙戦�佹椂闂�(姝e簭)    3 鍙戦�佹椂闂�(鍊掑簭)  7搴旈殢璁挎棩鏈�(鍊掑簭) 搴旈殢璁挎棩鏈�(姝e簭)
         serviceType: 2,
+        searchscope: 3,
         visitCount: 1,
         scopetype: [],
         leaveldeptcodes: [],
@@ -917,6 +1302,10 @@
           value: 6,
           label: "宸插畬鎴�",
         },
+         {
+          value: 7,
+          label: "瓒呮椂",
+        },
       ],
       sextype: [
         {
@@ -933,7 +1322,7 @@
           value: 1,
           label: "寮傚父",
         },
-         {
+        {
           value: 2,
           label: "璀﹀憡",
         },
@@ -985,12 +1374,25 @@
       rules: {},
     };
   },
-  watch: {},
+  watch: {
+    // 鐩戝惉璺敱鍙傛暟鍙樺寲
+    "$route.query": {
+      handler(newQuery, oldQuery) {
+        if (newQuery.errtype !== oldQuery.errtype) {
+          console.log(22);
+
+          this.loadData(); // 閲嶆柊鍔犺浇鏁版嵁
+        }
+      },
+      immediate: true,
+    },
+  },
   created() {
     this.serviceState = store.getters.serviceState;
     this.checkboxlist = store.getters.checkboxlist;
-    this.errtype = this.$route.query.errtype;
     this.orgname = localStorage.getItem("orgname");
+    this.errtype = this.$route.query.errtype;
+
     this.leavehospitaldistrictcode =
       this.$route.query.leavehospitaldistrictcode;
     this.sourcetype[0].children = store.getters.belongDepts.map((dept) => {
@@ -1005,13 +1407,20 @@
         value: dept.districtCode,
       };
     });
-    this.topqueryParams.leaveldeptcodes = store.getters.belongDepts.map(
-      (obj) => obj.deptCode
-    );
-    this.topqueryParams.leavehospitaldistrictcodes =
-      store.getters.belongWards.map((obj) => obj.districtCode);
-    if (this.errtype) {
+    if (this.errtype == 1) {
       this.toleadExport(2);
+    } else if (this.errtype == 2) {
+      // 寰呴殢璁�
+      this.toleadExport(3);
+    } else if (this.errtype == 3) {
+      // 澶辫触
+      this.toleadExport(4);
+    } else if (this.errtype == 4) {
+      // 寮傚父
+      this.toleadExport(2);
+    } else if (this.errtype == 5) {
+      // 鍏ㄩ儴
+      this.toleadExport(5);
     } else {
       this.getList(1);
     }
@@ -1020,10 +1429,27 @@
     });
   },
   activated() {
-    this.getList(1);
+    this.errtype = this.$route.query.errtype;
+    if (this.errtype == 1) {
+      this.toleadExport(2);
+    } else if (this.errtype == 2) {
+      // 寰呴殢璁�
+      this.toleadExport(3);
+    } else if (this.errtype == 3) {
+      // 澶辫触
+      this.toleadExport(4);
+    } else if (this.errtype == 4) {
+      // 寮傚父
+      this.toleadExport(2);
+    } else if (this.errtype == 5) {
+      // 鍏ㄩ儴
+      this.toleadExport(5);
+    } else {
+      this.getList(1);
+    }
   },
   methods: {
-    /** 鏌ヨ闂ㄨ瘖闅忚鏈嶅姟鍒楄〃 */
+    /** 鏌ヨ闅忚鏈嶅姟鍒楄〃 */
     getList(refresh) {
       // 榛樿鍏ㄩ儴
       if (this.topqueryParams.searchscope == 3) {
@@ -1033,13 +1459,13 @@
         this.topqueryParams.leavehospitaldistrictcodes =
           store.getters.belongWards.map((obj) => obj.districtCode);
       }
-      // if (this.endOut == 0) {
-        // this.topqueryParams.endSendDateTime = this.formatDateToYYYYMMDDHHMMSS(
-        //   this.getEndOfDay()
-        // );
-      // } else {
-      //   this.topqueryParams.endSendDateTime = null;
-      // }
+      if (this.endOut == 0) {
+        this.topqueryParams.endSendDateTime = this.formatDateToYYYYMMDDHHMMSS(
+          this.getEndOfDay()
+        );
+      } else {
+        this.topqueryParams.endSendDateTime = null;
+      }
       // 鎺ュ彈寮傚父璺宠浆
       if (this.errtype) {
         this.topqueryParams.leavehospitaldistrictcodes.push(
@@ -1047,23 +1473,29 @@
         );
       }
       this.loading = true;
-      if (!this.topqueryParams.leavehospitaldistrictcodes)
-        this.topqueryParams.leavehospitaldistrictcodes = [];
-      if (!this.topqueryParams.leaveldeptcodes)
-        this.topqueryParams.leaveldeptcodes = [];
-
+      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;
         if (refresh) {
           this.cardlist[0].value =
-            Number(response.rows[0].wzx) + Number(response.rows[0].ysf);
+            Number(response.rows[0].wzx) +
+            Number(response.rows[0].ysf) +
+            Number(response.rows[0].fssb);
           // this.cardlist[1].value = response.rows[0].wzx;
           this.cardlist[1].value = response.rows[0].ysf;
           this.ycvalue = response.rows[0].yc;
+          this.jgvalue = response.rows[0].jg;
           this.cardlist[2].value = response.rows[0].fssb;
           this.cardlist[3].value = response.rows[0].dsf;
-          this.cardlist[4].value = response.rows[0].yfs2;
+          // this.cardlist[4].value = response.rows[0].yfs2;
           this.yfsvalue = response.rows[0].yfs;
         }
         this.loading = false;
@@ -1091,6 +1523,26 @@
         });
         this.total = response.total;
       });
+    },
+    loadData() {
+      this.errtype = this.$route.query.errtype;
+      if (this.errtype == 1) {
+        this.toleadExport(2);
+      } else if (this.errtype == 2) {
+        // 寰呴殢璁�
+        this.toleadExport(3);
+      } else if (this.errtype == 3) {
+        // 澶辫触
+        this.toleadExport(4);
+      } else if (this.errtype == 4) {
+        // 寮傚父
+        this.toleadExport(2);
+      } else if (this.errtype == 5) {
+        // 鍏ㄩ儴
+        this.toleadExport(5);
+      } else {
+        this.getList(1);
+      }
     },
     // 鏃堕棿
     getEndOfDay() {
@@ -1122,11 +1574,13 @@
       return now.toISOString().slice(0, 10); // 鎴彇鍓�10涓瓧绗︼紝鍗� YYYY-MM-DD
     },
     buidegetTasklist(type) {
-      this.topqueryParams.leaveldeptcodes = store.getters.belongDepts.map(
-        (obj) => obj.deptCode
-      );
-      this.topqueryParams.leavehospitaldistrictcodes =
-        store.getters.belongWards.map((obj) => obj.districtCode);
+      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(
@@ -1144,17 +1598,16 @@
       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].dsf;
-          this.cardlist[5].value = response.rows[0].yfs2;
-          this.yfsvalue = response.rows[0].yfs;
-        }
+        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.jgvalue = response.rows[0].jg;
+        this.cardlist[3].value = response.rows[0].fssb;
+        this.cardlist[4].value = response.rows[0].dsf;
+        // this.cardlist[5].value = response.rows[0].yfs2;
+        this.yfsvalue = response.rows[0].yfs;
         this.loading = false;
         this.userList.forEach((item) => {
           let idArray = null;
@@ -1235,19 +1688,21 @@
     },
     /** 鎼滅储鎸夐挳鎿嶄綔 */
     handleQuery(refresh) {
-      this.topqueryParams.leaveldeptcodes = store.getters.belongDepts.map(
-        (obj) => obj.deptCode
-      );
-      this.topqueryParams.leavehospitaldistrictcodes =
-        store.getters.belongWards.map((obj) => obj.districtCode);
+      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);
+      }
       this.topqueryParams.pageNum = 1;
-
-      this.topqueryParams.startOutHospTime = this.dateRange[0];
-      this.topqueryParams.endOutHospTime = this.dateRange[1];
-      this.topqueryParams.startSendDateTime = this.dateRangefs[0];
-      this.topqueryParams.endSendDateTime = this.dateRangefs[1];
-      console.log(221);
-
+      // 鍒ゆ柇鏄笉鏄伐浣滃彴蹇嵎鏌ヨ
+      if (this.errtype != 2) {
+        this.topqueryParams.startOutHospTime = this.dateRange[0];
+        this.topqueryParams.endOutHospTime = this.dateRange[1];
+        this.topqueryParams.startSendDateTime = this.dateRangefs[0];
+        this.topqueryParams.endSendDateTime = this.dateRangefs[1];
+      }
       this.getList(refresh);
     },
     // 鎮h�呰寖鍥村鐞�
@@ -1259,10 +1714,13 @@
       if (type == 1) {
         this.topqueryParams.leaveldeptcodes.push(code);
         this.topqueryParams.leavehospitaldistrictcodes = [];
+        this.topqueryParams.searchscope = 1;
       } else if (type == 2) {
         this.topqueryParams.leavehospitaldistrictcodes.push(code);
         this.topqueryParams.leaveldeptcodes = [];
+        this.topqueryParams.searchscope = 2;
       } else {
+        this.topqueryParams.searchscope = 3;
       }
     },
     /** 閲嶇疆鎸夐挳鎿嶄綔 */
@@ -1275,6 +1733,11 @@
         sendstate: 2,
         sort: 2, //0 鍑洪櫌鏃堕棿(姝e簭)    1 鍑洪櫌鏃堕棿(鍊掑簭)   2 鍙戦�佹椂闂�(姝e簭)    3 鍙戦�佹椂闂�(鍊掑簭)
         serviceType: 2,
+        searchscope: 3,
+        visitCount: 1,
+        scopetype: [],
+        leaveldeptcodes: [],
+        leavehospitaldistrictcodes: [],
       };
       this.handleQuery(1);
     },
@@ -1485,9 +1948,9 @@
     Seedetails(row) {
       let type = "";
       console.log(row, "rwo");
-        if (row.type == 1) {
-          type = 1;
-        }
+      if (row.type == 1) {
+        type = 1;
+      }
       this.$router.push({
         path: "/followvisit/record/detailpage/",
         query: {
@@ -1499,15 +1962,81 @@
         },
       });
     },
+    // 鍐嶆闅忚
+    followupvisit(row) {
+      this.zcform = row;
+      this.zcform.endtime = this.formatTime(this.zcform.endtime);
+      this.dialogFormVisible = true;
+    },
+    onSubmit() {},
+    // 鏆傚仠鏈嶅姟
+    handlestop(row) {
+      let objson = row;
+      this.$modal
+        .confirm(
+          '鏄惁纭鏆傚仠浠诲姟鍚嶇О涓�"' +
+            row.taskName +
+            '鎮h�呭悕绉颁负"' +
+            row.sendname +
+            '"鐨勬暟鎹」锛�'
+        )
+        .then(() => {
+          getTaskservelist({
+            patid: row.patid,
+            taskid: row.taskid,
+          }).then((res) => {
+            if (res.code == 200) {
+              objson.sendstate = 4;
+              objson.remark = "鏈嶅姟鏆傚仠";
+              Editsingletaskson(objson).then((res) => {
+                if (res.code) {
+                  this.$modal.msgSuccess("璁板綍鎴愬姛");
+                  this.getList(1);
+                }
+              });
+            }
+          });
+        })
+        .catch(() => {});
+    },
+    // 鎮h�呰繃婊よЕ鍙�
+    handleUpdate(row) {
+      particularpatient(row.patid).then((response) => {
+        this.form = response.data;
+        this.form.filterDrname = store.getters.nickName;
+      });
+      this.amendtag = true;
+      this.Labelchange = true;
+    },
     // 渚挎嵎鎸夐挳
     toleadExport(too) {
+      console.log(too, "too");
+
       if (too == 1) {
         this.topqueryParams.sendstate = 4;
         this.topqueryParams.excep = null;
       } else if (too == 2) {
         this.topqueryParams.excep = 1;
+        this.topqueryParams.sendstate = null;
+      } else if (too == 3) {
+        this.topqueryParams.endSendDateTime = this.formatDateToYYYYMMDDHHMMSS(
+          this.getEndOfDay()
+        );
+        console.log(1111, this.topqueryParams.endSendDateTime);
+
+        this.topqueryParams.excep = null;
+        this.topqueryParams.sendstate = 2;
+        this.topqueryParams.scopetype = null;
+      } else if (too == 4) {
+        this.topqueryParams.excep = null;
+        this.topqueryParams.sendstate = 5;
+        this.topqueryParams.scopetype = null;
+      } else if (too == 5) {
+        this.topqueryParams.excep = null;
+        this.topqueryParams.sendstate = null;
+        this.topqueryParams.scopetype = null;
       }
-      this.handleQuery();
+      this.handleQuery(1);
     },
     /** 瀵煎嚭鎸夐挳鎿嶄綔 */
     handleExport() {
@@ -1529,6 +2058,48 @@
         return "remind-row";
       }
       return "";
+    },
+    // 鍒涘缓鍐嶆闅忚鏈嶅姟
+    setupsubtask() {
+      this.$refs["zcform"].validate((valid) => {
+        if (valid) {
+          this.zcform.remark =
+            this.zcform.remark + "銆�" + this.getCurrentTime() + "銆�";
+          let form = structuredClone(this.zcform);
+          form.visitTime = this.formatTime(form.date1);
+          form.finishtime = "";
+          if (form.resource) {
+            if (form.resource == 2) {
+              form.serviceType = 13;
+            }
+          } else {
+            this.$modal.msgError("鏈�夋嫨闅忚鏂瑰紡");
+          }
+          form.id = null;
+          form.sendstate = 2;
+          form.preachform = form.preachformson;
+          form.longTask = 0;
+          addserviceSubtask(form).then((res) => {
+            if (res.code == 200) {
+              this.$modal.msgSuccess("鍒涘缓鎴愬姛");
+            } else {
+              this.$modal.msgError("鍒涘缓澶辫触");
+            }
+            this.dialogFormVisible = false;
+          });
+        }
+      });
+    },
+    getCurrentTime() {
+      const now = new Date();
+      const year = now.getFullYear();
+      const month = String(now.getMonth() + 1).padStart(2, "0");
+      const day = String(now.getDate()).padStart(2, "0");
+      const hours = String(now.getHours()).padStart(2, "0");
+      const minutes = String(now.getMinutes()).padStart(2, "0");
+      const seconds = String(now.getSeconds()).padStart(2, "0");
+
+      return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`;
     },
   },
 };
@@ -1645,6 +2216,10 @@
   background: #f88d96;
   cursor: pointer; /* 榧犳爣鎮诞鏃跺彉涓烘墜褰� */
 }
+::v-deep.jgleftvlue .el-card__body:hover {
+  background: #f7f075;
+  cursor: pointer; /* 榧犳爣鎮诞鏃跺彉涓烘墜褰� */
+}
 
 ::v-deep.ysfleftvlue .el-card__body {
   background: #d0fdd8;

--
Gitblit v1.9.3