From 51a1786ef3e4e016d5f3f7bad8c2e2e8a84247a6 Mon Sep 17 00:00:00 2001
From: Junjie <fallin.jie@qq.com>
Date: 星期日, 22 三月 2026 18:42:19 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/common/service/CommonService.java | 48 ++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 48 insertions(+), 0 deletions(-)
diff --git a/src/main/java/com/zy/common/service/CommonService.java b/src/main/java/com/zy/common/service/CommonService.java
index 259ab2b..bb00969 100644
--- a/src/main/java/com/zy/common/service/CommonService.java
+++ b/src/main/java/com/zy/common/service/CommonService.java
@@ -21,6 +21,7 @@
import org.springframework.stereotype.Service;
import java.util.ArrayList;
+import java.util.Comparator;
import java.util.Date;
import java.util.List;
import java.util.Random;
@@ -47,6 +48,8 @@
private BasOutStationAreaService basOutStationAreaService;
@Autowired
private WrkCommandRollbackService wrkCommandRollbackService;
+ @Autowired
+ private WrkAnalysisService wrkAnalysisService;
/**
* 鐢熸垚宸ヤ綔鍙�
@@ -289,6 +292,7 @@
News.error("绉诲簱浠诲姟 --- 淇濆瓨宸ヤ綔妗eけ璐ワ紒");
throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐�");
}
+ wrkAnalysisService.initForTask(wrkMast);
sourceLocMast.setLocSts("R");
sourceLocMast.setModiTime(new Date());
@@ -357,6 +361,7 @@
News.error("鍏ュ簱浠诲姟 --- 淇濆瓨宸ヤ綔妗eけ璐ワ紒");
throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐�");
}
+ wrkAnalysisService.initForTask(wrkMast);
locMast.setLocSts("S");
locMast.setModiTime(new Date());
@@ -474,6 +479,7 @@
News.error("鍑哄簱浠诲姟 --- 淇濆瓨宸ヤ綔妗eけ璐ワ紒");
throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐�");
}
+ wrkAnalysisService.initForTask(wrkMast);
locMast.setLocSts("R");
locMast.setModiTime(new Date());
@@ -481,6 +487,48 @@
return true;
}
+ public boolean createOutTaskBatch(CreateOutTaskBatchParam param) {
+ if (param == null) {
+ throw new CoolException("鍙傛暟涓嶈兘涓虹┖");
+ }
+
+ List<CreateOutTaskParam> taskList = param.getTaskList();
+ if (taskList == null || taskList.isEmpty()) {
+ throw new CoolException("浠诲姟鍒楄〃涓嶈兘涓虹┖");
+ }
+
+ List<CreateOutTaskParam> sortedTaskList = new ArrayList<>(taskList);
+ sortedTaskList.sort(Comparator.nullsLast(Comparator
+ .comparing(this::getSortableBatch, Comparator.nullsLast(String::compareTo))
+ .thenComparing(this::getSortableBatchSeq, Comparator.nullsLast(Integer::compareTo))));
+
+ for (CreateOutTaskParam createOutTaskParam : sortedTaskList) {
+ if (createOutTaskParam == null) {
+ throw new CoolException("浠诲姟鍙傛暟涓嶈兘涓虹┖");
+ }
+ createOutTask(createOutTaskParam);
+ }
+ return true;
+ }
+
+ private String getSortableBatch(CreateOutTaskParam param) {
+ if (param == null) {
+ return null;
+ }
+ String batch = param.getBatch();
+ if (batch == null || batch.trim().isEmpty()) {
+ return null;
+ }
+ return batch;
+ }
+
+ private Integer getSortableBatchSeq(CreateOutTaskParam param) {
+ if (param == null) {
+ return null;
+ }
+ return param.getBatchSeq();
+ }
+
public FindCrnNoResult findCrnNoByLocNo(String locNo) {
List<BasCrnp> basCrnps = basCrnpService.list(new QueryWrapper<>());
for (BasCrnp basCrnp : basCrnps) {
--
Gitblit v1.9.1