From 46ba954e2b86a7e5f3f8b6624bc800a0a5cef844 Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期四, 04 九月 2025 16:55:03 +0800
Subject: [PATCH] 波次任务功能优化 不同站点类型状态变更优化
---
rsf-admin/src/page/orders/wave/WaveItemList.jsx | 4 ++--
rsf-admin/src/page/orders/wave/WaveList.jsx | 4 ++--
rsf-server/src/main/java/com/vincent/rsf/server/api/entity/enums/CallBackEvent.java | 2 +-
rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/WaveServiceImpl.java | 3 ++-
rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/TaskStsType.java | 1 -
rsf-server/src/main/java/com/vincent/rsf/server/manager/utils/LocManageUtil.java | 5 +++--
rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/WaveSchedules.java | 1 -
rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/WcsServiceImpl.java | 37 +++++++++++++++++++++++++------------
8 files changed, 35 insertions(+), 22 deletions(-)
diff --git a/rsf-admin/src/page/orders/wave/WaveItemList.jsx b/rsf-admin/src/page/orders/wave/WaveItemList.jsx
index e5c302b..c7a9dcf 100644
--- a/rsf-admin/src/page/orders/wave/WaveItemList.jsx
+++ b/rsf-admin/src/page/orders/wave/WaveItemList.jsx
@@ -114,7 +114,7 @@
rowClick={(id, resource, record) => false}
expand={false}
expandSingle={false}
- omit={['id', 'createTime', 'matnrId', 'waveId', 'batch', 'orderItemId', 'fieldsIndex', 'createBy', 'memo']}
+ omit={['id', 'createTime', 'matnrId', 'waveId', 'batch', 'orderItemId', 'fieldsIndex', 'createBy']}
>
<NumberField source="id" />
<NumberField source="waveId" label="table.field.waveItem.waveId" />
@@ -132,8 +132,8 @@
<DateField source="updateTime" label="common.field.updateTime" showTime />
<TextField source="createBy$" label="common.field.createBy" />
<DateField source="createTime" label="common.field.createTime" showTime />
- <TextField source="memo" label="common.field.memo" sortable={false} />
<TextField source="exceStatus$" label="table.field.waveItem.exceStatus" />
+ <TextField source="memo" label="common.field.memo" sortable={false} />
</StyledDatagrid>
</List>
<WaveItemEdit
diff --git a/rsf-admin/src/page/orders/wave/WaveList.jsx b/rsf-admin/src/page/orders/wave/WaveList.jsx
index 9717a8a..a37fce6 100644
--- a/rsf-admin/src/page/orders/wave/WaveList.jsx
+++ b/rsf-admin/src/page/orders/wave/WaveList.jsx
@@ -152,7 +152,7 @@
rowClick={(id, resource, record) => false}
expand={<WavePannel />}
expandSingle={true}
- omit={['id', 'createTime', 'createBy', 'createBy$','memo']}
+ omit={['id', 'createTime', 'createBy', 'createBy$', 'memo']}
>
<NumberField source="id" />
<TextField source="code" label="table.field.wave.code" />
@@ -166,8 +166,8 @@
<DateField source="updateTime" label="common.field.updateTime" showTime />
<TextField source="createBy$" label="common.field.createBy" />
<CustomProcess source="progress" label="table.field.wave.progress" />
- <TextField source="memo" label="common.field.memo" sortable={false} />
<TextField source="exceStatus$" label="table.field.wave.exceStatus" sortable={false} />
+ <TextField source="memo" label="common.field.memo" sortable={false} />
<WrapperField cellClassName="opt" label="common.field.opt">
<PauseButton />
<ContinueButton />
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/api/entity/enums/CallBackEvent.java b/rsf-server/src/main/java/com/vincent/rsf/server/api/entity/enums/CallBackEvent.java
index a298394..30a6c32 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/api/entity/enums/CallBackEvent.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/api/entity/enums/CallBackEvent.java
@@ -9,7 +9,7 @@
public enum CallBackEvent {
/**浠诲姟鍥炶皟浜嬩欢*/
CALL_BACK_EVENT_START("START", "鍙栫瀹屾垚"),
- CALL_BACK_EVENT_OBIT("OBIT", "鎼繍涓�"),
+ CALL_BACK_EVENT_OBIT("OTBIN", "鎼繍涓�"),
CALL_BACK_EVENT_END("END", "鏀剧瀹屾垚"),
;
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/WcsServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/WcsServiceImpl.java
index 40d4c5d..72ca59f 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/WcsServiceImpl.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/WcsServiceImpl.java
@@ -469,19 +469,15 @@
if (Objects.isNull(task)) {
throw new CoolException("浠诲姟涓嶅瓨鍦ㄥ彲宸茬粨鏉燂紒锛�");
}
- /**鍙栫瀹屾垚*/
- if (params.getEventType().equals(CallBackEvent.CALL_BACK_EVENT_END.event)) {
+
+ /**鏂欑鎼繍涓紝 淇敼绔欑偣鐘舵��*/
+ if (params.getEventType().equals(CallBackEvent.CALL_BACK_EVENT_OBIT.event)) {
if (task.getTaskType().equals(TaskType.TASK_TYPE_IN.type)
|| task.getTaskType().equals(TaskType.TASK_TYPE_PICK_IN.type)
|| task.getTaskType().equals(TaskType.TASK_TYPE_CHECK_IN.type)
|| task.getTaskType().equals(TaskType.TASK_TYPE_EMPITY_IN.type)
|| task.getTaskType().equals(TaskType.TASK_TYPE_MERGE_IN.type)
|| task.getTaskType().equals(TaskType.TASK_TYPE_LOC_MOVE.type)) {
- if (!taskService.update(new LambdaUpdateWrapper<Task>().eq(Task::getTaskCode, task.getTaskCode())
- .set(Task::getTaskStatus, TaskStsType.COMPLETE_IN.id))) {
- throw new CoolException("浠诲姟鐘舵�佷慨鏀瑰け璐ワ紒锛�");
- }
-
if (!task.getTaskType().equals(TaskType.TASK_TYPE_LOC_MOVE.type)) {
BasStation station = basStationService.getOne(new LambdaQueryWrapper<BasStation>().eq(BasStation::getStationName, task.getOrgSite()));
if (Objects.isNull(station)) {
@@ -499,10 +495,6 @@
|| task.getTaskType().equals(TaskType.TASK_TYPE_MERGE_OUT.type)
|| task.getTaskType().equals(TaskType.TASK_TYPE_CHECK_OUT.type)
|| task.getTaskType().equals(TaskType.TASK_TYPE_EMPITY_OUT.type)) {
- if (!taskService.update(new LambdaUpdateWrapper<Task>().eq(Task::getTaskCode, task.getTaskCode())
- .set(Task::getTaskStatus, TaskStsType.COMPLETE_OUT.id))) {
- throw new CoolException("浠诲姟鐘舵�佷慨鏀瑰け璐ワ紒锛�");
- }
/**淇敼鍑哄簱绔欑偣鐘舵��*/
BasStation station = basStationService.getOne(new LambdaQueryWrapper<BasStation>()
.eq(BasStation::getStationName, task.getTargSite()));
@@ -516,8 +508,29 @@
}
}
}
+ /**鍙栫瀹屾垚锛� 淇敼浠诲姟鐘舵��*/
+ } else if (params.getEventType().equals(CallBackEvent.CALL_BACK_EVENT_END.event)) {
+ if (task.getTaskType().equals(TaskType.TASK_TYPE_IN.type)
+ || task.getTaskType().equals(TaskType.TASK_TYPE_PICK_IN.type)
+ || task.getTaskType().equals(TaskType.TASK_TYPE_CHECK_IN.type)
+ || task.getTaskType().equals(TaskType.TASK_TYPE_EMPITY_IN.type)
+ || task.getTaskType().equals(TaskType.TASK_TYPE_MERGE_IN.type)
+ || task.getTaskType().equals(TaskType.TASK_TYPE_LOC_MOVE.type)) {
+ if (!taskService.update(new LambdaUpdateWrapper<Task>().eq(Task::getTaskCode, task.getTaskCode())
+ .set(Task::getTaskStatus, TaskStsType.COMPLETE_IN.id))) {
+ throw new CoolException("浠诲姟鐘舵�佷慨鏀瑰け璐ワ紒锛�");
+ }
+ } else if (task.getTaskType().equals(TaskType.TASK_TYPE_OUT.type)
+ || task.getTaskType().equals(TaskType.TASK_TYPE_PICK_AGAIN_OUT.type)
+ || task.getTaskType().equals(TaskType.TASK_TYPE_MERGE_OUT.type)
+ || task.getTaskType().equals(TaskType.TASK_TYPE_CHECK_OUT.type)
+ || task.getTaskType().equals(TaskType.TASK_TYPE_EMPITY_OUT.type)) {
+ if (!taskService.update(new LambdaUpdateWrapper<Task>().eq(Task::getTaskCode, task.getTaskCode())
+ .set(Task::getTaskStatus, TaskStsType.COMPLETE_OUT.id))) {
+ throw new CoolException("浠诲姟鐘舵�佷慨鏀瑰け璐ワ紒锛�");
+ }
+ }
}
-
log.info(JSONObject.toJSONString(params));
return R.ok(JSONObject.toJSONString(params));
}
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/TaskStsType.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/TaskStsType.java
index 08f92e4..4bcac1f 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/TaskStsType.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/TaskStsType.java
@@ -1,7 +1,6 @@
package com.vincent.rsf.server.manager.enums;
public enum TaskStsType {
-
//浠诲姟鐘舵��
GENERATE_IN("1", "鍒涘缓鍏ュ簱浠诲姟"),
WCS_EXECUTE_IN("2", "RCS浠诲姟宸蹭笅鍙�"),
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/WaveSchedules.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/WaveSchedules.java
index 198d13d..7c4d065 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/WaveSchedules.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/WaveSchedules.java
@@ -80,7 +80,6 @@
Map<String, Object> params = new HashMap<>();
params.put("ids", longs);
waveService.waveToTask(params, loginUserId);
-
}
}
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/WaveServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/WaveServiceImpl.java
index b833343..f721dff 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/WaveServiceImpl.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/WaveServiceImpl.java
@@ -129,7 +129,7 @@
throw new CoolException("鏁版嵁閿欒锛� 娉㈡涓嶅瓨鍦紒锛�");
}
for (Wave wave : waves) {
- if (wave.getExceStatus() >= WaveExceStatus.WAVE_EXCE_STATUS_EXCING.val) {
+ if (wave.getExceStatus() > WaveExceStatus.WAVE_EXCE_STATUS_EXCING.val) {
throw new CoolException("褰撳墠鐘舵�佹棤娉曚笅鍙戞墽琛岋紒锛�");
}
@@ -207,6 +207,7 @@
.set(Wave::getExceStatus, WaveExceStatus.WAVE_EXCE_STATUS_TASK.val)
.set(Wave::getWorkQty, taskItems.stream().mapToDouble(TaskItem::getAnfme).sum())
.set(Wave::getUpdateBy, loginUserId)
+ .set(Wave::getMemo, null)
.set(Wave::getUpdateTime, new Date())
.eq(Wave::getId, wave.getId()))) {
throw new CoolException("娉㈡鐘舵�佷慨鏀瑰け璐ワ紒锛�");
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/utils/LocManageUtil.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/utils/LocManageUtil.java
index 5bda303..aca7d0c 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/utils/LocManageUtil.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/utils/LocManageUtil.java
@@ -96,7 +96,7 @@
public static List<LocItem> getFirstInFirstOutItemList(String matnrCode, String splrBatch, Double anfme) {
LambdaQueryWrapper<LocItem> locItemQueryWrapper = new LambdaQueryWrapper<>();
locItemQueryWrapper.eq(LocItem::getMatnrCode, matnrCode);
- locItemQueryWrapper.eq(LocItem::getBatch, splrBatch);
+ locItemQueryWrapper.eq(StringUtils.isNotEmpty(splrBatch), LocItem::getBatch, splrBatch);
locItemQueryWrapper.orderByAsc(LocItem::getCreateTime);
String applySql = String.format(
"EXISTS (SELECT 1 FROM man_loc ml " +
@@ -175,7 +175,8 @@
orderOutItemDto.setSiteNo(deviceSite.getSite());
}
- orderOutItemDto.setSource(item.getItemId()).setSourceId(item.getWaveId());
+ orderOutItemDto.setSource(item.getItemId())
+ .setSourceId(item.getWaveId());
list.add(orderOutItemDto);
--
Gitblit v1.9.1