From dc77841fcc93a5078469bf8dd5d6824d1c63f073 Mon Sep 17 00:00:00 2001
From: wangrong <wangrong@shsening.com>
Date: 星期日, 20 九月 2026 15:30:03 +0800
Subject: [PATCH] 修复每日称重汇总任务
---
src/modules/report/service/ExecutorSiteDeptDaily.ts | 38 +++++++++++++++++---------------------
1 files changed, 17 insertions(+), 21 deletions(-)
diff --git a/src/modules/report/service/ExecutorSiteDeptDaily.ts b/src/modules/report/service/ExecutorSiteDeptDaily.ts
index 83bf27e..73c47f9 100644
--- a/src/modules/report/service/ExecutorSiteDeptDaily.ts
+++ b/src/modules/report/service/ExecutorSiteDeptDaily.ts
@@ -20,18 +20,17 @@
taskServiceDepartment: TaskServiceDepartment;
async execute() {
- // 鎹炲嚭鎵�鏈夊緟澶勭悊浠诲姟
+
const pendingSiteJobs = await this.reportJoblogEntity.find({
- where: {
- status: In(['INIT', 'FAILED']),
- jobName: In(['SITE_DAILY', 'DEPT_DAILY']),
- },
- order: {
- dataDate: 'ASC', // 鍏堢畻鍘嗗彶锛屽悗绠椾粖澶�
- // 纭繚鍦ㄥ悓涓�澶╁唴锛孲ITE_DAILY 鍏堣窇锛孌EPT_DAILY 鍚庤窇
- // 鍦� JS 鏁扮粍涓垜浠彲浠ヨ繘涓�姝ユ帶鍒舵帓搴忥紝鎴栬�呯敱涓氬姟閫昏緫涓ユ牸鎺у埗渚濊禆
- },
+ where: { status: In(['INIT', 'FAILED']), jobName: In(['SITE_DAILY', 'DEPT_DAILY']) },
+ order: { dataDate: 'ASC' },
});
+ // 鏄惧紡鎺掑簭锛氬悓鏃ユ湡鍐� SITE_DAILY 蹇呴』鎺掑湪 DEPT_DAILY 鍓嶉潰
+ pendingSiteJobs.sort((a, b) => {
+ const d = String(a.dataDate).localeCompare(String(b.dataDate));
+ if (d !== 0) return d;
+ return a.jobName === 'SITE_DAILY' ? -1 : 1;
+ });
for (const job of pendingSiteJobs) {
// 涓ユ牸渚濊禆妫�鏌ワ細濡傛灉鏄儴闂ㄦ棩琛ㄤ换鍔★紝蹇呴』纭繚鍚屽ぉ鐨勭珯鐐规棩琛ㄤ换鍔″凡缁忔槸 SUCCESS
@@ -78,20 +77,17 @@
} catch (error) {
// 澶辫触锛氳褰曞爢鏍堬紝绛夊緟涓嬩竴灏忔椂閲嶈瘯
-
- var errorMessage = '';
+ let errorMessage = '';
if (error instanceof Error) {
errorMessage = error.stack ?? error.message;
- }
- if (typeof error === 'string') {
+ console.error('[JOB-FAILED]', job.jobName, job.dataDate, error?.message ?? error);
+ console.error(error.stack);
+ } else if (typeof error === 'string') {
errorMessage = error;
- }
- try {
- errorMessage = JSON.stringify(error);
- } catch {
- errorMessage = String(error);
- }
-
+ } else {
+ try { errorMessage = JSON.stringify(error); }
+ catch { errorMessage = String(error); }
+ }
await this.reportJoblogEntity.update(job.id, {
status: 'FAILED',
endTime: new Date(),
--
Gitblit v1.9.1