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