From 024504a3933e8f2f86e80383e61fa574524a0d28 Mon Sep 17 00:00:00 2001
From: chen.lin <1442464845@qq.com>
Date: 星期二, 10 三月 2026 16:39:52 +0800
Subject: [PATCH] logo修改 +入库完成校验
---
rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/MaterialAutoSchedules.java | 61 +++++++++++++++++++++++++++++-
1 files changed, 59 insertions(+), 2 deletions(-)
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/MaterialAutoSchedules.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/MaterialAutoSchedules.java
index 8ed7634..48ae660 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/MaterialAutoSchedules.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/MaterialAutoSchedules.java
@@ -3,11 +3,14 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.vincent.rsf.framework.exception.CoolException;
+import com.vincent.rsf.server.manager.controller.params.LocToTaskParams;
import com.vincent.rsf.server.manager.controller.params.OutStockToTaskParams;
import com.vincent.rsf.server.manager.controller.params.PakinItem;
import com.vincent.rsf.server.manager.controller.params.WaitPakinParam;
import com.vincent.rsf.server.manager.entity.*;
+import com.vincent.rsf.server.common.constant.Constants;
import com.vincent.rsf.server.manager.enums.AsnExceStatus;
+import com.vincent.rsf.server.manager.enums.LocStsType;
import com.vincent.rsf.server.manager.enums.OrderType;
import com.vincent.rsf.server.manager.enums.OrderWorkType;
import com.vincent.rsf.server.manager.enums.TaskStsType;
@@ -31,10 +34,11 @@
import java.util.stream.Collectors;
/**
- * 鎸囧畾鐗╂枡鑷姩鍖栧畾鏃朵换鍔★細鍙厤缃墿鏂欑紪鐮佸悗锛�
+ * 鎸囧畾鐗╂枡/绌烘澘鑷姩鍖栧畾鏃朵换鍔★細鍙厤缃悗
* 1锛夋湁搴撳瓨鏃惰嚜鍔ㄧ敓鎴愬叏鐗堝嚭搴撳崟锛�
* 2锛夎鐗╂枡鍑哄簱鍗曡嚜鍔ㄤ笅鍙戜换鍔★紱
- * 3锛塕CS 鍏ュ簱閫氱煡鏃讹紙鍙�夛級鑷姩缁勬墭锛屾暟閲忓彲閰嶇疆銆�
+ * 3锛塕CS 鍏ュ簱閫氱煡鏃讹紙鍙�夛級鑷姩缁勬墭锛屾暟閲忓彲閰嶇疆锛�
+ * 4锛夌┖鏉�(D)搴撲綅瀹氭椂鑷姩鐢熸垚绌烘澘鍑哄簱浠诲姟骞朵笅鍙� RCS锛圓UTO_EMPTY_OUT_ENABLED锛夈��
*/
@Slf4j
@Component
@@ -229,6 +233,59 @@
}
/**
+ * 瀹氭椂浠诲姟锛氱┖鏉垮簱瀛樿嚜鍔ㄥ嚭搴擄紙姣� 2 鍒嗛挓锛�
+ * 閰嶇疆锛欰UTO_EMPTY_OUT_ENABLED=true 鏃讹紝鎵弿绌烘澘(D)搴撲綅锛岀敓鎴愮┖鏉垮嚭搴撲换鍔″苟涓嬪彂 RCS锛屾祦绋嬩笌 AUTO_FULL_OUT 瀵瑰簲瀹氭椂浠诲姟涓�鑷淬��
+ */
+ @Scheduled(cron = "0 0/2 * * * ?")
+ @Transactional(rollbackFor = Exception.class)
+ public void autoEmptyOutTask() {
+ Config enabledConfig = configService.getOne(new LambdaQueryWrapper<Config>().eq(Config::getFlag, GlobalConfigCode.AUTO_EMPTY_OUT_ENABLED));
+ if (enabledConfig == null || !Boolean.parseBoolean(enabledConfig.getVal())) {
+ return;
+ }
+ List<Loc> emptyLocs = locService.list(new LambdaQueryWrapper<Loc>()
+ .eq(Loc::getUseStatus, LocStsType.LOC_STS_TYPE_D.type));
+ if (emptyLocs.isEmpty()) {
+ return;
+ }
+ List<Task> existingEmptyOut = taskService.list(new LambdaQueryWrapper<Task>()
+ .eq(Task::getTaskType, TaskType.TASK_TYPE_EMPITY_OUT.type)
+ .lt(Task::getTaskStatus, TaskStsType.COMPLETE_OUT.id));
+ Set<String> locCodesInProgress = existingEmptyOut.stream()
+ .map(Task::getOrgLoc).filter(Objects::nonNull).collect(Collectors.toSet());
+ List<Task> created = new ArrayList<>();
+ for (Loc loc : emptyLocs) {
+ if (locCodesInProgress.contains(loc.getCode())) {
+ continue;
+ }
+ try {
+ LocToTaskParams params = new LocToTaskParams();
+ params.setType(Constants.TASK_TYPE_OUT_STOCK_EMPTY)
+ .setOrgLoc(loc.getCode())
+ .setSiteNo(DEFAULT_SITE_NO);
+ Task task = locItemService.generateTaskEmpty(params, SYSTEM_USER_ID);
+ created.add(task);
+ locCodesInProgress.add(loc.getCode());
+ } catch (Exception e) {
+ log.warn("[鑷姩绌烘澘鍑哄簱] 搴撲綅 {} 鐢熸垚浠诲姟澶辫触: {}", loc.getCode(), e.getMessage());
+ }
+ }
+ if (!created.isEmpty()) {
+ List<Task> toPublish = created.stream()
+ .filter(t -> TaskStsType.GENERATE_OUT.id.equals(t.getTaskStatus()))
+ .collect(Collectors.toList());
+ if (!toPublish.isEmpty()) {
+ try {
+ taskService.pubTaskToWcs(toPublish);
+ log.info("[鑷姩绌烘澘鍑哄簱] 宸茬敓鎴愬苟涓嬪彂 {} 涓┖鏉垮嚭搴撲换鍔�", toPublish.size());
+ } catch (Exception e) {
+ log.error("[鑷姩绌烘澘鍑哄簱] 涓嬪彂 RCS 澶辫触", e);
+ }
+ }
+ }
+ }
+
+ /**
* 瀹氭椂浠诲姟锛氶厤缃墿鏂欏嚭搴撲换鍔″湪 RCS 鍥炶皟涓� 199锛堝緟纭锛夊悗鑷姩鎷h揣瀹屾垚锛屾棤闇� PDA 蹇�熸嫞璐х‘璁ゅ嵆鍙洿鏂板簱瀛樸��
* 閰嶇疆锛欰UTO_FULL_OUT_MATNR_CODE锛堢墿鏂欑紪鐮侊紝閰嶇疆浜嗗垯瀵硅鐗╂枡鐢熸晥锛�
*/
--
Gitblit v1.9.1