From 330c02e3e9d2f7f911a45e963261c8db5d287722 Mon Sep 17 00:00:00 2001 From: "CANCERYS\\kw093" Date: Fri, 6 Nov 2026 18:02:51 +0800 Subject: [PATCH] =?UTF-8?q?=E9=97=9C=E9=96=89=E5=B7=A5=E5=96=AE=20planStar?= =?UTF-8?q?t=20=E6=AF=8F=E6=97=A5=E8=87=AA=E5=8B=95=E6=8E=92=E7=A8=8B?= =?UTF-8?q?=EF=BC=9B=E5=BA=AB=E5=AD=98=E6=B5=81=E6=B0=B4=E5=B8=B3=20Excel?= =?UTF-8?q?=20=E4=B8=8D=E5=86=8D=E5=8D=B0=E8=80=97=E6=99=82=EF=BC=8C?= =?UTF-8?q?=E6=97=A5=E7=B5=90=E4=B8=8D=E5=86=8D=E5=AF=AB=20sync=20log?= =?UTF-8?q?=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Cursor --- .../scheduler/service/SchedulerService.kt | 25 +------------------ .../web/StockLotLedgerReportController.kt | 14 ++--------- src/main/resources/application.yml | 2 +- 3 files changed, 4 insertions(+), 37 deletions(-) diff --git a/src/main/java/com/ffii/fpsms/modules/common/scheduler/service/SchedulerService.kt b/src/main/java/com/ffii/fpsms/modules/common/scheduler/service/SchedulerService.kt index 8f14c7ea..bd0e7bcb 100644 --- a/src/main/java/com/ffii/fpsms/modules/common/scheduler/service/SchedulerService.kt +++ b/src/main/java/com/ffii/fpsms/modules/common/scheduler/service/SchedulerService.kt @@ -622,11 +622,11 @@ open class SchedulerService( } /** + * FP-MTMS Version Checklist | Functions Ref. No. 92 | v1.0.0 | 2026-11-06 * Close through [date] (default yesterday). Catch-up from last closed day, capped by catchUpDays. * Rejects date >= today. */ open fun runStockLotDayClose(date: LocalDate? = null): String { - val currentTime = LocalDateTime.now() return try { val result = stockLotDayCloseService.closeThrough( target = date, @@ -635,36 +635,13 @@ open class SchedulerService( if (result.skipped) { val msg = "stock_lot_day close skipped: ${result.skipReason}" logger.warn("Scheduler - {}", msg) - saveSyncLog( - type = "STOCK_LOT_DAY", - status = "SKIPPED", - result = SyncResult(0, 0, 0, msg), - start = currentTime, - ) return msg } val query = "from=${result.dateFrom} to=${result.dateTo} days=${result.days.size} catchUpDays=$stockLotDayCloseCatchUpDays" - saveSyncLog( - type = "STOCK_LOT_DAY", - status = "SUCCESS", - result = SyncResult( - totalProcessed = result.days.size, - totalSuccess = result.totalRows, - totalFail = 0, - query = query, - ), - start = currentTime, - ) logger.info("Scheduler - stock_lot_day close done {}", query) "stock_lot_day close ok $query rows=${result.totalRows}" } catch (e: Exception) { logger.error("Scheduler - stock_lot_day close failed: ${e.message}", e) - saveSyncLog( - type = "STOCK_LOT_DAY", - status = "FAILED", - error = e.message, - start = currentTime, - ) throw e } } diff --git a/src/main/java/com/ffii/fpsms/modules/report/web/StockLotLedgerReportController.kt b/src/main/java/com/ffii/fpsms/modules/report/web/StockLotLedgerReportController.kt index cea09dc4..98b2ab50 100644 --- a/src/main/java/com/ffii/fpsms/modules/report/web/StockLotLedgerReportController.kt +++ b/src/main/java/com/ffii/fpsms/modules/report/web/StockLotLedgerReportController.kt @@ -53,6 +53,7 @@ class StockLotLedgerReportController( return mapOf("earliest" to earliest.format(DateTimeFormatter.ISO_LOCAL_DATE)) } + /** FP-MTMS Version Checklist | Functions Ref. No. 91 | v1.0.0 | 2026-11-06 */ @GetMapping("/print-stock-lot-ledger-excel") fun exportStockLotLedgerReportExcel( @RequestParam(required = false) itemCode: String?, @@ -71,7 +72,6 @@ class StockLotLedgerReportController( dbData = result.rows, reportPeriodStart = period.startStr, reportPeriodEnd = period.endStr, - timings = result.timings, ) val excelMs = (System.nanoTime() - tExcel) / 1_000_000 val totalMs = (System.nanoTime() - tAll) / 1_000_000 @@ -209,11 +209,11 @@ class StockLotLedgerReportController( return v?.toString() == "1" } + /** FP-MTMS Version Checklist | Functions Ref. No. 91 | v1.0.0 | 2026-11-06 */ private fun createExcel( dbData: List>, reportPeriodStart: String, reportPeriodEnd: String, - timings: List, ): ByteArray { val workbook = SXSSFWorkbook(100) workbook.setCompressTempFiles(true) @@ -252,16 +252,6 @@ class StockLotLedgerReportController( cellStyle = styles.subtitle } sheet.addMergedRegion(CellRangeAddress(1, 1, 5, totalColumns - 1)) - if (timings.isNotEmpty()) { - val timingRow = sheet.createRow(rowIndex++) - timingRow.createCell(0).apply { - setCellValue("耗時:${timings.joinToString(" | ")}") - cellStyle = styles.subtitle - } - sheet.addMergedRegion(CellRangeAddress(2, 2, 0, totalColumns - 1)) - } else { - sheet.createRow(rowIndex++) - } val headerRowIndex = rowIndex val headerRow = sheet.createRow(rowIndex++) diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index d0a49f2d..76665d0c 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -40,7 +40,7 @@ scheduler: # Job order: at 00:00:15 daily, process JOs whose planStart was yesterday (hide or reschedule). jo: planStart: - enabled: true + enabled: false # One-time DO1 catch-up jobs (production only — requires scheduler.m18Sync.enabled=true in application-prod.yml). do1CatchUp: enabled: false