From 1da4047a0a011bdbab1e6ae1135e4abb1bcebad2 Mon Sep 17 00:00:00 2001
From: Junjie <fallin.jie@qq.com>
Date: 星期二, 31 三月 2026 11:11:15 +0800
Subject: [PATCH] #许可证去重
---
src/main/java/com/zy/asrs/task/WrkMastScheduler.java | 69 ++++++++++++++++++++++++++++++----
1 files changed, 60 insertions(+), 9 deletions(-)
diff --git a/src/main/java/com/zy/asrs/task/WrkMastScheduler.java b/src/main/java/com/zy/asrs/task/WrkMastScheduler.java
index e9d01c5..9ac3fac 100644
--- a/src/main/java/com/zy/asrs/task/WrkMastScheduler.java
+++ b/src/main/java/com/zy/asrs/task/WrkMastScheduler.java
@@ -6,6 +6,7 @@
import com.zy.asrs.entity.LocMast;
import com.zy.asrs.entity.WrkMast;
import com.zy.asrs.service.LocMastService;
+import com.zy.asrs.service.WrkAnalysisService;
import com.zy.asrs.service.WrkMastLogService;
import com.zy.asrs.service.WrkMastService;
import com.zy.asrs.utils.NotifyUtils;
@@ -13,7 +14,6 @@
import com.zy.core.enums.WrkIoType;
import com.zy.core.enums.WrkStsType;
import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
@@ -26,14 +26,23 @@
@Slf4j
public class WrkMastScheduler {
- @Autowired
- private WrkMastService wrkMastService;
- @Autowired
- private WrkMastLogService wrkMastLogService;
- @Autowired
- private LocMastService locMastService;
- @Autowired
- private NotifyUtils notifyUtils;
+ private final WrkMastService wrkMastService;
+ private final WrkMastLogService wrkMastLogService;
+ private final WrkAnalysisService wrkAnalysisService;
+ private final LocMastService locMastService;
+ private final NotifyUtils notifyUtils;
+
+ public WrkMastScheduler(WrkMastService wrkMastService,
+ WrkMastLogService wrkMastLogService,
+ WrkAnalysisService wrkAnalysisService,
+ LocMastService locMastService,
+ NotifyUtils notifyUtils) {
+ this.wrkMastService = wrkMastService;
+ this.wrkMastLogService = wrkMastLogService;
+ this.wrkAnalysisService = wrkAnalysisService;
+ this.locMastService = locMastService;
+ this.notifyUtils = notifyUtils;
+ }
@Scheduled(cron = "0/1 * * * * ? ")
@Transactional
@@ -68,6 +77,8 @@
// 淇濆瓨宸ヤ綔涓绘。鍘嗗彶妗�
if (!wrkMastLogService.save(wrkMast.getWrkNo())) {
log.info("淇濆瓨宸ヤ綔鍘嗗彶妗workNo={}]澶辫触", wrkMast.getWrkNo());
+ } else {
+ wrkAnalysisService.finishTask(wrkMast, resolveFinishTime(wrkMast));
}
// 鍒犻櫎宸ヤ綔涓绘。
if (!wrkMastService.removeById(wrkMast.getWrkNo())) {
@@ -112,6 +123,8 @@
// 淇濆瓨宸ヤ綔涓绘。鍘嗗彶妗�
if (!wrkMastLogService.save(wrkMast.getWrkNo())) {
log.info("淇濆瓨宸ヤ綔鍘嗗彶妗workNo={}]澶辫触", wrkMast.getWrkNo());
+ } else {
+ wrkAnalysisService.finishTask(wrkMast, resolveFinishTime(wrkMast));
}
// 鍒犻櫎宸ヤ綔涓绘。
if (!wrkMastService.removeById(wrkMast.getWrkNo())) {
@@ -177,6 +190,8 @@
// 淇濆瓨宸ヤ綔涓绘。鍘嗗彶妗�
if (!wrkMastLogService.save(wrkMast.getWrkNo())) {
log.info("淇濆瓨宸ヤ綔鍘嗗彶妗workNo={}]澶辫触", wrkMast.getWrkNo());
+ } else {
+ wrkAnalysisService.finishTask(wrkMast, resolveFinishTime(wrkMast));
}
// 鍒犻櫎宸ヤ綔涓绘。
if (!wrkMastService.removeById(wrkMast.getWrkNo())) {
@@ -185,6 +200,27 @@
//涓婃姤
notifyUtils.notify("task", 1, String.valueOf(wrkMast.getWrkNo()), wrkMast.getWmsWrkNo(), NotifyMsgType.TASK_COMPLETE, JSON.toJSONString(wrkMast));
+ }
+ }
+
+ @Scheduled(cron = "0/1 * * * * ? ")
+ @Transactional
+ public void executeCrnMove(){
+ List<WrkMast> wrkMasts = wrkMastService.list(new QueryWrapper<WrkMast>().eq("wrk_sts", WrkStsType.COMPLETE_CRN_MOVE.sts));
+ if (wrkMasts.isEmpty()) {
+ return;
+ }
+
+ for (WrkMast wrkMast : wrkMasts) {
+ if (!wrkMastLogService.save(wrkMast.getWrkNo())) {
+ log.info("淇濆瓨宸ヤ綔鍘嗗彶妗workNo={}]澶辫触", wrkMast.getWrkNo());
+ } else {
+ wrkAnalysisService.finishTask(wrkMast, resolveFinishTime(wrkMast));
+ }
+
+ if (!wrkMastService.removeById(wrkMast.getWrkNo())) {
+ log.info("鍒犻櫎宸ヤ綔涓绘。[workNo={}]澶辫触", wrkMast.getWrkNo());
+ }
}
}
@@ -200,6 +236,8 @@
// 淇濆瓨宸ヤ綔涓绘。鍘嗗彶妗�
if (!wrkMastLogService.save(wrkMast.getWrkNo())) {
log.info("淇濆瓨宸ヤ綔鍘嗗彶妗workNo={}]澶辫触", wrkMast.getWrkNo());
+ } else {
+ wrkAnalysisService.finishTask(wrkMast, resolveFinishTime(wrkMast));
}
// 鍒犻櫎宸ヤ綔涓绘。
if (!wrkMastService.removeById(wrkMast.getWrkNo())) {
@@ -273,4 +311,17 @@
}
}
+ private Date resolveFinishTime(WrkMast wrkMast) {
+ if (wrkMast == null) {
+ return new Date();
+ }
+ if (wrkMast.getModiTime() != null) {
+ return wrkMast.getModiTime();
+ }
+ if (wrkMast.getIoTime() != null) {
+ return wrkMast.getIoTime();
+ }
+ return new Date();
+ }
+
}
--
Gitblit v1.9.1