From c81fc5e2a4f4153be2bb8602ed14a0743e6ecd29 Mon Sep 17 00:00:00 2001
From: chen.lin <1442464845@qq.com>
Date: 星期四, 05 三月 2026 11:14:50 +0800
Subject: [PATCH] RCS对接优化
---
rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/PdaCheckOrderServiceImpl.java | 55 +++++++++++++++++++++++++++++++++----------------------
1 files changed, 33 insertions(+), 22 deletions(-)
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/PdaCheckOrderServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/PdaCheckOrderServiceImpl.java
index 7e6e64f..db47253 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/PdaCheckOrderServiceImpl.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/PdaCheckOrderServiceImpl.java
@@ -28,6 +28,7 @@
import com.vincent.rsf.server.system.service.impl.FieldsItemServiceImpl;
import com.vincent.rsf.server.system.service.impl.UserServiceImpl;
import com.vincent.rsf.server.system.utils.SerialRuleUtils;
+import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -87,7 +88,7 @@
lambdaQueryWrapper.eq(Task::getBarcode, barcode);
Task task = taskService.getOne(lambdaQueryWrapper);
if (null == task) {
- throw new CoolException("鏈壘鍒板鍣ㄥ彿瀵瑰簲浠诲姟");
+ throw new CoolException("鏈壘鍒版枡绠辩爜瀵瑰簲浠诲姟");
}
if (!task.getTaskStatus().equals(TaskStsType.AWAIT.id)) {
return R.error("浠诲姟鐘舵�佷笉鏄瓑寰呯‘璁�");
@@ -115,7 +116,7 @@
}
Task task = taskService.getOne(new LambdaQueryWrapper<Task>().eq(Task::getBarcode, params.getContainer()));
if (null == task) {
- throw new CoolException("鏁版嵁閿欒锛屾湭鎵惧埌瀹瑰櫒鐮佸搴旂洏鐐逛换鍔�");
+ throw new CoolException("鏁版嵁閿欒锛屾湭鎵惧埌鏂欑鐮佸搴旂洏鐐逛换鍔�");
}
for (CheckDiffItem ckDiffItem : params.getCheckDiffItems()) {
CheckDiffItem diffItem = new CheckDiffItem();
@@ -234,14 +235,14 @@
lambdaQueryWrapper.eq(Task::getBarcode, barcode);
Task task = taskService.getOne(lambdaQueryWrapper);
if (null == task) {
- throw new CoolException("鏈壘鍒板鍣ㄥ彿瀵瑰簲浠诲姟");
+ throw new CoolException("鏈壘鍒版枡绠辩爜瀵瑰簲浠诲姟");
}
if (!task.getTaskStatus().equals(TaskStsType.AWAIT.id)) {
return R.error("浠诲姟鐘舵�佷笉鏄瓑寰呯‘璁�");
}
List<TaskItem> taskItems = taskItemService.list(new LambdaQueryWrapper<TaskItem>().eq(TaskItem::getTaskId, task.getId()));
if (Cools.isEmpty(taskItems)) {
- throw new CoolException("鏈壘鍒拌瀹瑰櫒鐮佸搴旂殑浠诲姟鏄庣粏");
+ throw new CoolException("鏈壘鍒拌鏂欑鐮佸搴旂殑浠诲姟鏄庣粏");
}
String sourceCode = taskItems.stream().findFirst().map(TaskItem::getSourceCode).orElse(null);
CheckDiff checkDiff = checkDiffService.getOne(new LambdaQueryWrapper<CheckDiff>().eq(CheckDiff::getOrderCode, sourceCode));
@@ -263,7 +264,7 @@
/**
* @author Ryan
* @date 2025/11/5
- * @description: 甯屾棩鏃犲崟鎹复鏃剁洏鐐�
+ * @description: 鏃犲崟鎹复鏃剁洏鐐�
* @version 1.0
*/
@Override
@@ -275,14 +276,16 @@
lambdaQueryWrapper.eq(Task::getBarcode, barcode);
Task task = taskService.getOne(lambdaQueryWrapper);
if (null == task) {
- throw new CoolException("鏈壘鍒板鍣ㄥ彿瀵瑰簲浠诲姟");
+ throw new CoolException("鏈壘鍒版枡绠辩爜瀵瑰簲浠诲姟");
}
- if (!task.getTaskStatus().equals(TaskStsType.WAVE_SEED.id)) {
- return R.error("浠诲姟鐘舵�佷笉鏄瓑寰呯‘璁�");
+ // 鍏佽WAVE_SEED锛�199锛岀瓑寰呯‘璁�/鐩樼偣涓級鍜孉WAIT锛�196锛岀瓑寰呯‘璁わ級涓ょ鐘舵��
+ if (!task.getTaskStatus().equals(TaskStsType.WAVE_SEED.id)
+ && !task.getTaskStatus().equals(TaskStsType.AWAIT.id)) {
+ return R.error("浠诲姟鐘舵�佷笉鏄瓑寰呯‘璁わ紝褰撳墠鐘舵�侊細" + task.getTaskStatus());
}
List<TaskItem> taskItems = taskItemService.list(new LambdaQueryWrapper<TaskItem>().eq(TaskItem::getTaskId, task.getId()));
if (Cools.isEmpty(taskItems)) {
- throw new CoolException("鏈壘鍒拌瀹瑰櫒鐮佸搴旂殑浠诲姟鏄庣粏");
+ throw new CoolException("鏈壘鍒拌鏂欑鐮佸搴旂殑浠诲姟鏄庣粏");
}
taskItems.forEach(taskItem -> {
if (!Objects.isNull(taskItem.getFieldsIndex())) {
@@ -307,7 +310,7 @@
throw new CoolException("鍙傛暟涓嶈兘涓虹┖锛侊紒");
}
if (Objects.isNull(map.get("barcode"))) {
- throw new CoolException("鎵樼洏鐮佷笉鑳戒负绌猴紒锛�");
+ throw new CoolException("鏂欑鐮佷笉鑳戒负绌猴紒锛�");
}
if (Objects.isNull(map.get("matnrs"))) {
throw new CoolException("鏂板鐗╂枡涓嶈兘涓虹┖锛侊紒");
@@ -317,7 +320,7 @@
lambdaQueryWrapper.eq(Task::getBarcode, barcode);
Task task = taskService.getOne(lambdaQueryWrapper);
if (null == task) {
- throw new CoolException("鏈壘鍒板鍣ㄥ彿瀵瑰簲浠诲姟");
+ throw new CoolException("鏈壘鍒版枡绠辩爜瀵瑰簲浠诲姟");
}
if (!task.getTaskStatus().equals(TaskStsType.AWAIT.id)) {
return R.error("浠诲姟鐘舵�佷笉鏄瓑寰呯‘璁�");
@@ -348,11 +351,17 @@
.setMaktx(matnr.getName())
.setAnfme(item.getCheckQty());
- FieldsItem fieldsItem = fieldsItemService.getOne(new LambdaQueryWrapper<FieldsItem>().eq(FieldsItem::getValue, item.getFieldsIndex()).last("limit 1"));
- if (Objects.isNull(fieldsItem)) {
- throw new CoolException("褰撳墠绁ㄥ彿涓嶅瓨鍦ㄥ簱瀛樹腑锛岃鎷垮嚭鍚庨噸鏂板叆搴擄紒锛�");
+ // 绁ㄥ彿鏆備笉浣跨敤锛屼笉鏍¢獙绁ㄥ彿鏄惁瀛樺湪
+ FieldsItem fieldsItem = null;
+ if (StringUtils.isNotBlank(item.getFieldsIndex())) {
+ fieldsItem = fieldsItemService.getOne(new LambdaQueryWrapper<FieldsItem>().eq(FieldsItem::getValue, item.getFieldsIndex()).last("limit 1"));
+ // if (Objects.isNull(fieldsItem)) {
+ // throw new CoolException("褰撳墠绁ㄥ彿涓嶅瓨鍦ㄥ簱瀛樹腑锛岃鎷垮嚭鍚庨噸鏂板叆搴擄紒锛�");
+ // }
}
- taskItem.setFieldsIndex(fieldsItem.getUuid());
+ if (fieldsItem != null) {
+ taskItem.setFieldsIndex(fieldsItem.getUuid());
+ }
taskItems.add(taskItem);
});
@@ -378,7 +387,7 @@
throw new CoolException("鍙傛暟涓嶈兘涓虹┖锛侊紒");
}
if (Objects.isNull(map.get("barcode"))) {
- throw new CoolException("鎵樼洏鐮佷笉鑳戒负绌猴紒锛�");
+ throw new CoolException("鏂欑鐮佷笉鑳戒负绌猴紒锛�");
}
if (Objects.isNull(map.get("items"))) {
throw new CoolException("鏂板鐗╂枡涓嶈兘涓虹┖锛侊紒");
@@ -388,10 +397,12 @@
lambdaQueryWrapper.eq(Task::getBarcode, barcode);
Task task = taskService.getOne(lambdaQueryWrapper);
if (null == task) {
- throw new CoolException("鏈壘鍒板鍣ㄥ彿瀵瑰簲浠诲姟");
+ throw new CoolException("鏈壘鍒版枡绠辩爜瀵瑰簲浠诲姟");
}
- if (!task.getTaskStatus().equals(TaskStsType.WAVE_SEED.id)) {
- return R.error("浠诲姟鐘舵�佷笉鏄瓑寰呯‘璁�");
+ // 鍏佽WAVE_SEED锛�199锛岀瓑寰呯‘璁�/鐩樼偣涓級鍜孉WAIT锛�196锛岀瓑寰呯‘璁わ級涓ょ鐘舵��
+ if (!task.getTaskStatus().equals(TaskStsType.WAVE_SEED.id)
+ && !task.getTaskStatus().equals(TaskStsType.AWAIT.id)) {
+ return R.error("浠诲姟鐘舵�佷笉鏄瓑寰呯‘璁わ紝褰撳墠鐘舵�侊細" + task.getTaskStatus());
}
//浠诲姟鍙蜂笉鑳介噸澶嶏紝鐢熸垚鏂颁换鍔″彿涓嬪彂鑷砇CS
String ruleCode = SerialRuleUtils.generateRuleCode(SerialRuleCode.SYS_TASK_CODE, null);
@@ -423,7 +434,7 @@
});
});
-// uploadCheckResult(task);
+ uploadCheckResult(task);
return R.ok("鎻愪氦鎴愬姛");
}
@@ -442,7 +453,7 @@
ReportParams params = new ReportParams();
List<TaskItem> taskItems = taskItemService.list(new LambdaQueryWrapper<TaskItem>().eq(TaskItem::getTaskId, task.getId()));
if (Objects.isNull(taskItems) || taskItems.isEmpty()) {
- throw new CoolException("鎵樼洏鏄庣粏涓虹┖锛�1");
+ throw new CoolException("鏂欑鏄庣粏涓虹┖锛�1");
}
List<ReportDataParam> reportDataParams = new ArrayList<>();
taskItems.forEach(taskItem -> {
@@ -459,7 +470,7 @@
.setPDQty(taskItem.getAnfme())
.setEditUser(nickName)
.setEditDate(taskItem.getUpdateTime())
- .setGoodsNO(fields.get("crushNo"))
+ // .setGoodsNO(fields.get("crushNo")) // 绁ㄥ彿鏆備笉浣跨敤
.setIsBad(0 + "")
.setMemoDtl(taskItem.getMemo());
--
Gitblit v1.9.1