From 7d3ad58a9a21cfd7e21fde604e362a2cfe812754 Mon Sep 17 00:00:00 2001
From: skyouc <creaycat@gmail.com>
Date: 星期四, 20 十一月 2025 15:03:21 +0800
Subject: [PATCH] #新增 1. 全板出库完成后,变更任务状态为拣料
---
rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/TaskSchedules.java | 70 +++++++++++++---------------------
1 files changed, 27 insertions(+), 43 deletions(-)
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/TaskSchedules.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/TaskSchedules.java
index dc089a5..73e1bcc 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/TaskSchedules.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/TaskSchedules.java
@@ -578,19 +578,7 @@
throw new CoolException("浠诲姟鍘嗗彶妗d繚瀛樺け璐ワ紒锛�");
}
List<TaskItem> taskItems = taskItemService.list(new LambdaQueryWrapper<TaskItem>().eq(TaskItem::getTaskId, task.getId()));
- //鍏ュ簱鍗曟嵁鏄庣粏涓婃姤
-// if (order.getType().equals(OrderType.ORDER_OUT.type)) {
-// try {
-// //涓婃姤宸插畬鎴愯鍗曡嚦ERP銆丮ES绛変笁鏂圭郴缁�
-// reportMsgService.reportOrders(order);
-// order.setReportOnce(order.getReportOnce() + 1);
-// if (!asnOrderService.updateById(order)) {
-// log.error(order.getCode() + "锛屽崟鎹笂浼犳鏁颁慨鏀瑰け璐ワ紒锛�");
-// }
-// } catch (Exception e) {
-// log.error(e.getMessage());
-// }
-// }
+
if (task.getTaskType().equals(TaskType.TASK_TYPE_IN.type)) {
for (TaskItem taskItem : taskItems) {
if (Objects.isNull(taskItem.getOrderId())) {
@@ -612,36 +600,6 @@
}
} else if (task.getTaskType() >= TaskType.TASK_TYPE_OUT.type && task.getTaskType() <= TaskType.TASK_TYPE_EMPITY_OUT.type) {
- /**鍒ゆ柇鍗曟嵁鏄惁瀹屾垚**/
- Set<Long> longSet = taskItems.stream().map(TaskItem::getSourceId).collect(Collectors.toSet());
- List<WaveOrderRela> waveOrderRelas = waveOrderRelaService.list(new LambdaQueryWrapper<WaveOrderRela>()
- .in(WaveOrderRela::getWaveId, longSet));
- if (Cools.isEmpty(waveOrderRelas)) {
- throw new CoolException("娉㈡瀵瑰簲鍏宠仈鍗曟湭鎵惧埌");
- }
- Set<Long> orderIds = waveOrderRelas.stream().map(WaveOrderRela::getOrderId).collect(Collectors.toSet());
- List<WkOrder> wkOrders = asnOrderService.listByIds(orderIds);
- if (wkOrders.isEmpty()) {
- throw new CoolException("鍗曟嵁涓嶅瓨鍦紒锛�");
- }
-
-// Set<String> codes = taskItems.stream().map(TaskItem::getMatnrCode).collect(Collectors.toSet());
-// List<WkOrderItem> orderItems = asnOrderItemService.list(new LambdaQueryWrapper<WkOrderItem>()
-// .in(WkOrderItem::getMatnrCode, codes)
-// .in(WkOrderItem::getOrderId, orderIds));
- if (!wkOrders.isEmpty()) {
- throw new CoolException("鍗曟嵁涓嶅瓨鍦紒锛�");
- }
- wkOrders.forEach(order -> {
- //妫�鏌ュ崟鎹槸鍚﹀畬鎴�
- if (order.getAnfme().compareTo(order.getQty()) == 0) {
- order.setExceStatus(AsnExceStatus.OUT_STOCK_STATUS_TASK_DONE.val);
- if (!asnOrderService.updateById(order)) {
- throw new CoolException("鍑哄簱鍗曟洿鏂扮姸鎬佸け璐�");
- }
- }
- });
-
//鍑哄簱鍗曚笂鎶CS淇敼搴撲綅鐘舵��
try {
reportStationStatus(task);
@@ -650,6 +608,32 @@
}
}
+ /**鍒ゆ柇鍗曟嵁鏄惁瀹屾垚**/
+ Set<Long> longSet = taskItems.stream().map(TaskItem::getSourceId).collect(Collectors.toSet());
+ List<WaveOrderRela> waveOrderRelas = waveOrderRelaService.list(new LambdaQueryWrapper<WaveOrderRela>()
+ .in(WaveOrderRela::getWaveId, longSet));
+ if (Cools.isEmpty(waveOrderRelas)) {
+ throw new CoolException("娉㈡瀵瑰簲鍏宠仈鍗曟湭鎵惧埌");
+ }
+ Set<Long> orderIds = waveOrderRelas.stream().map(WaveOrderRela::getOrderId).collect(Collectors.toSet());
+ List<WkOrder> wkOrders = asnOrderService.listByIds(orderIds);
+ if (wkOrders.isEmpty()) {
+ throw new CoolException("鍗曟嵁涓嶅瓨鍦紒锛�");
+ }
+ wkOrders.forEach(order -> {
+ //妫�鏌ュ崟鎹槸鍚﹀畬鎴�
+ if (order.getAnfme().compareTo(order.getQty()) == 0) {
+ if (order.getType().equals(OrderType.ORDER_IN)) {
+ order.setExceStatus(AsnExceStatus.ASN_EXCE_STATUS_TASK_DONE.val);
+ } else {
+ order.setExceStatus(AsnExceStatus.OUT_STOCK_STATUS_TASK_DONE.val);
+ }
+ if (!asnOrderService.updateById(order)) {
+ throw new CoolException("鍑哄簱鍗曟洿鏂扮姸鎬佸け璐�");
+ }
+ }
+ });
+
List<TaskItemLog> itemLogs = new ArrayList<>();
for (TaskItem item : taskItems) {
TaskItemLog itemLog = new TaskItemLog();
--
Gitblit v1.9.1