From 59849f0136d700a01dde8a89c62da7c7b729d7f3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9B=B9=E9=B9=8F=E9=A3=9E?= Date: Fri, 15 May 2026 09:49:09 +0800 Subject: [PATCH] =?UTF-8?q?feat(QCMaterialSync):=20=E6=94=AF=E6=8C=81?= =?UTF-8?q?=E5=8A=A8=E6=80=81=E8=AE=BE=E7=BD=AE=E5=90=8C=E6=AD=A5=E6=97=B6?= =?UTF-8?q?=E9=97=B4=E8=8C=83=E5=9B=B4=E7=9A=84=E5=88=86=E9=92=9F=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 从作业参数中获取分钟数参数,默认值为5分钟 - 参数非数字时记录警告并使用默认分钟数 - 同步时间范围改为当前时间向前的指定分钟数区间 - 日志中增加参数及计算后的开始结束时间打印 - 优化同步物料时间范围逻辑,增强灵活性和可配置性 --- .../processor/QCMaterialSyncProcessor.java | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/nflg-wms-scheduled/src/main/java/com/nflg/wms/scheduled/processor/QCMaterialSyncProcessor.java b/nflg-wms-scheduled/src/main/java/com/nflg/wms/scheduled/processor/QCMaterialSyncProcessor.java index 889741b9..6e92d196 100644 --- a/nflg-wms-scheduled/src/main/java/com/nflg/wms/scheduled/processor/QCMaterialSyncProcessor.java +++ b/nflg-wms-scheduled/src/main/java/com/nflg/wms/scheduled/processor/QCMaterialSyncProcessor.java @@ -2,6 +2,7 @@ package com.nflg.wms.scheduled.processor; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.util.NumberUtil; import cn.hutool.core.util.StrUtil; import com.nflg.wms.common.pojo.dto.MaterialMainListByDateDTO; import com.nflg.wms.common.util.UserUtil; @@ -18,10 +19,12 @@ import tech.powerjob.worker.log.OmsLogger; import java.time.LocalDate; import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; +import java.time.temporal.TemporalUnit; import java.util.ArrayList; import java.util.LinkedHashMap; import java.util.List; import java.util.Map; +import java.util.concurrent.TimeUnit; import java.util.stream.Collectors; /** @@ -41,9 +44,19 @@ public class QCMaterialSyncProcessor implements BasicProcessor { OmsLogger log = context.getOmsLogger(); try { log.info("开始"); + String params = context.getJobParams(); + log.info("参数:{}", params); + int minutes = 5; + if (StrUtil.isNotBlank(params)) { + if (NumberUtil.isNumber(params)) { + minutes = NumberUtil.parseInt(params); + } else { + log.warn("参数不是数字,将使用默认值:" + minutes); + } + } DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); - String startDateTime = LocalDate.now().minusDays(1).atStartOfDay().format(formatter); - String endDateTime = LocalDate.now().minusDays(1).atTime(23, 59, 59).format(formatter); + String endDateTime = LocalDateTime.now().format(formatter); + String startDateTime = LocalDateTime.now().minusMinutes(minutes).format(formatter); log.info("开始同步物料,范围开始时间:{},结束时间:{}", startDateTime, endDateTime); // 从主物料系统查询指定日期范围的物料列表