From a9d2b856e0f6be6475319c2dc36bf405c2f908fc Mon Sep 17 00:00:00 2001
From: WXL (wul) <wl_5969728@163.com>
Date: 星期二, 22 九月 2026 14:04:52 +0800
Subject: [PATCH] 测试完成
---
src/views/sfstatistics/percentage/index.vue | 89 ++++++++++++++++++++++++++++++++++++++++----
1 files changed, 80 insertions(+), 9 deletions(-)
diff --git a/src/views/sfstatistics/percentage/index.vue b/src/views/sfstatistics/percentage/index.vue
index 713e2a2..39b83e2 100644
--- a/src/views/sfstatistics/percentage/index.vue
+++ b/src/views/sfstatistics/percentage/index.vue
@@ -14,6 +14,7 @@
<el-select
v-model="queryParams.statisticaltype"
placeholder="璇烽�夋嫨缁熻绫诲瀷"
+ @change="handleQuery"
>
<el-option
v-for="item in Statisticallist"
@@ -57,8 +58,7 @@
<el-form-item label="鏈嶅姟绫诲瀷" prop="userName">
<el-select
- v-model="queryParams.serviceType"
- multiple
+ v-model="serviceTypeSingle"
placeholder="璇烽�夋嫨"
>
<el-option
@@ -73,6 +73,19 @@
<el-form-item label-width="200" label="搴旈殢璁挎椂闂磋寖鍥�" prop="userName">
<el-date-picker
v-model="queryParams.dateRange"
+ value-format="yyyy-MM-dd HH:mm:ss"
+ type="daterange"
+ unlink-panels
+ range-separator="鑷�"
+ start-placeholder="寮�濮嬫棩鏈�"
+ end-placeholder="缁撴潫鏃ユ湡"
+ :default-time="['00:00:00', '23:59:59']"
+ :picker-options="pickerOptions"
+ />
+ </el-form-item>
+ <el-form-item label-width="200" label="鍑洪櫌鏃堕棿鑼冨洿" prop="userName">
+ <el-date-picker
+ v-model="queryParams.dateRangecy"
value-format="yyyy-MM-dd HH:mm:ss"
type="daterange"
unlink-panels
@@ -119,6 +132,21 @@
<!-- Tab鍒囨崲鍖哄煙 -->
<div class="tab-section">
<el-tabs v-model="activeTab" @tab-click="handleTabClick">
+ <el-tab-pane
+ label="缁煎悎缁熻"
+ v-if="orgname == '涓芥按甯備腑鍖婚櫌'"
+ name="combined"
+ >
+ <CombinedFollowUp
+ ref="combinedFollowUp"
+ :query-params="queryParams"
+ :flat-array-hospit="flatArrayhospit"
+ :flat-array-dept="flatArraydept"
+ :options="options"
+ :orgname="orgname"
+ @view-details="viewDetails"
+ />
+ </el-tab-pane>
<el-tab-pane label="棣栨闅忚" name="first">
<FirstFollowUp
ref="firstFollowUp"
@@ -166,6 +194,7 @@
<ChartDialog
:visible="chartDialogVisible"
:data="chartData"
+ :statisticaltype="queryParams.statisticaltype"
:active-tab="activeTab"
@close="chartDialogVisible = false"
/>
@@ -200,7 +229,7 @@
import ChartDialog from "./components/ChartDialog.vue";
import DetailDialog from "./components/DetailDialog.vue";
import TimelyRateDialog from "./components/TimelyRateDialog.vue";
-
+import CombinedFollowUp from "./components/CombinedFollowUp.vue";
import { getSfStatisticsHyperlink } from "@/api/AiCentre/index";
export default {
@@ -212,6 +241,7 @@
ChartDialog,
DetailDialog,
TimelyRateDialog,
+ CombinedFollowUp,
},
data() {
return {
@@ -224,10 +254,15 @@
options: this.$store.getters.tasktypes,
queryParams: {
serviceType: [2],
- dateRange: this.getLastMonthRange(),
- statisticaltype: 1,
+ dateRange: [],
+ dateRangecy: this.getLastMonthRange(),
+ statisticaltype:
+ localStorage.getItem("orgname") == "缂欎簯鍘夸汉姘戝尰闄�" ||
+ localStorage.getItem("orgname") == "鏅畞鐣叉棌鑷不鍘夸汉姘戝尰闄�"
+ ? 2
+ : 1,
leavehospitaldistrictcodes: ["all"],
- deptcodes: [],
+ deptcodes: ["all"],
},
pickerOptions: {
shortcuts: [
@@ -282,6 +317,18 @@
pageSize: 10,
},
};
+ },
+ computed: {
+ // 鏈嶅姟绫诲瀷鍗曢�夛細UI 缁戝畾鍗曞�硷紝鍐呴儴浠嶄互鏁扮粍褰㈠紡浼犵粰鍚庣
+ serviceTypeSingle: {
+ get() {
+ const st = this.queryParams.serviceType;
+ return Array.isArray(st) ? st[0] : st;
+ },
+ set(val) {
+ this.queryParams.serviceType = val == null || val === "" ? [] : [val];
+ },
+ },
},
created() {
this.getDeptTree();
@@ -353,15 +400,26 @@
case "continued":
this.$refs.continuedCare.loadData();
break;
+ case "combined":
+ this.$refs.combinedFollowUp.loadData();
+ break;
}
},
handleQuery() {
+ if (!this.queryParams.dateRange) this.queryParams.dateRange = [];
+ if (!this.queryParams.dateRangecy) this.queryParams.dateRangecy = [];
+
this.queryParams.startTime = this.parseTime(
this.queryParams.dateRange[0]
);
this.queryParams.endTime = this.parseTime(this.queryParams.dateRange[1]);
-
+ this.queryParams.hospitalStartTime = this.parseTime(
+ this.queryParams.dateRangecy[0]
+ );
+ this.queryParams.hospitalEndTime = this.parseTime(
+ this.queryParams.dateRangecy[1]
+ );
if (this.queryParams.statisticaltype == 1) {
this.queryParams.deptcodes = [];
} else if (this.queryParams.statisticaltype == 2) {
@@ -388,6 +446,9 @@
case "continued":
await this.$refs.continuedCare.exportTable();
break;
+ case "combined":
+ await this.$refs.combinedFollowUp.exportTable();
+ break;
}
},
@@ -404,6 +465,8 @@
return this.$refs.secondFollowUp.tableData;
case "continued":
return this.$refs.continuedCare.tableData;
+ case "combined":
+ return this.$refs.combinedFollowUp.tableData;
default:
return [];
}
@@ -427,8 +490,14 @@
obj.deptcodes = [row.deptcode];
obj.leavehospitaldistrictcodes = [];
}
- obj.endTime = this.queryParams.endTime;
- obj.startTime = this.queryParams.startTime;
+ if (this.queryParams.endTime) {
+ obj.endTime = this.queryParams.endTime;
+ obj.startTime = this.queryParams.startTime;
+ } else {
+ obj.startTime = this.parseTime(this.queryParams.dateRange[0]);
+ obj.endTime = this.parseTime(this.queryParams.dateRange[1]);
+ }
+
obj.statisticaltype = this.queryParams.statisticaltype;
getSfStatisticsHyperlink(obj).then((response) => {
@@ -464,6 +533,8 @@
SeedetailsgGo(row) {
this.SeedetailsVisible = false;
+ this.infotitleVisible = false;
+
let type = "";
if (row.preachformson && row.preachformson.includes("3")) {
type = 1;
--
Gitblit v1.9.3