From 178748c899579629631376764b91b0fc69797d6d Mon Sep 17 00:00:00 2001
From: zhihao <18915542763@163.com>
Date: Thu, 9 Jul 2026 11:12:00 +0800
Subject: [PATCH] =?UTF-8?q?czh-20260709-=E5=A2=9E=E5=8A=A0=E8=BF=9B?=
=?UTF-8?q?=E8=A1=8C=E4=B8=AD=E9=80=BE=E6=9C=9F=E4=BB=BB=E5=8A=A1=E6=95=B0?=
=?UTF-8?q?=E9=87=8F=E6=98=BE=E7=A4=BA?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../bg/bgpartymatter/BgPartymatterList.vue | 4 ++--
src/views/bg/bqtakepulse/BgTakepulseList.vue | 4 ++--
src/views/bg/utils/feedbackStatusCount.ts | 17 ++++++++++++++---
3 files changed, 18 insertions(+), 7 deletions(-)
diff --git a/src/views/bg/bgpartymatter/BgPartymatterList.vue b/src/views/bg/bgpartymatter/BgPartymatterList.vue
index 14ac732..2f59142 100644
--- a/src/views/bg/bgpartymatter/BgPartymatterList.vue
+++ b/src/views/bg/bgpartymatter/BgPartymatterList.vue
@@ -97,7 +97,7 @@
未开始 {{ getFeedbackStatusCount(record).notStarted }}
- 进行中 {{ getFeedbackStatusCount(record).inProgress }}
+ 进行中 {{ getFeedbackStatusCount(record).inProgress }}(已逾期 {{ getFeedbackStatusCount(record).overdue }})
已完成 {{ getFeedbackStatusCount(record).completed }}
(共 {{ getFeedbackStatusCount(record).total }} 条)
@@ -327,7 +327,7 @@
}
function getFeedbackStatusCount(record: Recordable) {
- return countFeedbackStatus(getFeedbackTableData(record), 'bpmStatus');
+ return countFeedbackStatus(getFeedbackTableData(record), 'bpmStatus', 'planTime');
}
function clearFeedbackTableData() {
diff --git a/src/views/bg/bqtakepulse/BgTakepulseList.vue b/src/views/bg/bqtakepulse/BgTakepulseList.vue
index c706d02..34a2917 100644
--- a/src/views/bg/bqtakepulse/BgTakepulseList.vue
+++ b/src/views/bg/bqtakepulse/BgTakepulseList.vue
@@ -97,7 +97,7 @@
未开始 {{ getFeedbackStatusCount(record).notStarted }}
- 进行中 {{ getFeedbackStatusCount(record).inProgress }}
+ 进行中 {{ getFeedbackStatusCount(record).inProgress }}(已逾期 {{ getFeedbackStatusCount(record).overdue }})
已完成 {{ getFeedbackStatusCount(record).completed }}
(共 {{ getFeedbackStatusCount(record).total }} 条)
@@ -275,7 +275,7 @@
}
function getFeedbackStatusCount(record: Recordable) {
- return countFeedbackStatus(getFeedbackTableData(record), 'bpmStatus');
+ return countFeedbackStatus(getFeedbackTableData(record), 'bpmStatus', 'planTime');
}
function clearFeedbackTableData() {
diff --git a/src/views/bg/utils/feedbackStatusCount.ts b/src/views/bg/utils/feedbackStatusCount.ts
index 6597e51..8c652e8 100644
--- a/src/views/bg/utils/feedbackStatusCount.ts
+++ b/src/views/bg/utils/feedbackStatusCount.ts
@@ -3,20 +3,31 @@ export interface FeedbackStatusCount {
inProgress: number;
completed: number;
total: number;
+ overdue: number;
}
export function countFeedbackStatus(
list: Recordable[] | undefined | null,
statusField: string,
+ dateField?: string,
): FeedbackStatusCount {
- const result: FeedbackStatusCount = { notStarted: 0, inProgress: 0, completed: 0, total: 0 };
+ const result: FeedbackStatusCount = { notStarted: 0, inProgress: 0, completed: 0, total: 0, overdue: 0 };
if (!Array.isArray(list)) return result;
result.total = list.length;
+ const today = new Date();
+ today.setHours(0, 0, 0, 0);
for (const item of list) {
const v = String(item?.[statusField] ?? '');
if (v === '1') result.notStarted++;
- else if (v === '2') result.inProgress++;
- else if (v === '3') result.completed++;
+ else if (v === '2') {
+ result.inProgress++;
+ if (dateField) {
+ const planTime = item?.[dateField];
+ if (planTime && new Date(planTime) < today) {
+ result.overdue++;
+ }
+ }
+ } else if (v === '3') result.completed++;
}
return result;
}