From d52bab61f91056e75e60ddeda76a72cd1bd63615 Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期四, 07 八月 2025 14:40:00 +0800
Subject: [PATCH] no message
---
zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/OrderServiceImpl.java | 26 +++++++++++++++++++++-----
1 files changed, 21 insertions(+), 5 deletions(-)
diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/OrderServiceImpl.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/OrderServiceImpl.java
index e22e623..c8d37ea 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/OrderServiceImpl.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/OrderServiceImpl.java
@@ -40,6 +40,8 @@
private OrderUtils orderUtils;
@Autowired
private WaitPakinService waitPakinService;
+ @Autowired
+ private LocDetlService locDetlService;
@Override
@Transactional
@@ -82,7 +84,7 @@
}
for (HashMap<String, Object> map : param.getList()) {
- double anfme = Double.parseDouble(map.get("anfme").toString());
+ Double anfme = Double.parseDouble(map.get("anfme").toString());
String batch = map.get("batch").toString();
String matnr = map.get("matnr").toString();
Double qty = 0D;
@@ -93,6 +95,20 @@
if (map.containsKey("workQty")) {
workQty = Double.parseDouble(map.get("workQty").toString());
}
+
+ if (param.getOrderType() == 2) {
+ List<LocDetl> detls = locDetlService.list(new LambdaQueryWrapper<LocDetl>()
+ .eq(StringUtils.isNotBlank(batch), LocDetl::getBatch, batch)
+ .eq(StringUtils.isNotBlank(matnr), LocDetl::getMatnr, matnr));
+ if (detls.isEmpty()) {
+ throw new CoolException("鐗╂枡锛�" + matnr + "鍓╀綑搴撳瓨浣欎笅锛�0" + "锛屾棤娉曠敓鎴愬嚭搴撳崟!!");
+ }
+ Double sum = detls.stream().mapToDouble(LocDetl::getAnfme).sum();
+ if (anfme.compareTo(sum) > 0) {
+ throw new CoolException("鐗╂枡锛�" + matnr + "鍓╀綑搴撳瓨浣欎笅锛�" + sum + "锛屾棤娉曠敓鎴愬嚭搴撳崟!!");
+ }
+ }
+
String memo = map.getOrDefault("memo", "").toString();
Mat mat = matService.getOne(new LambdaQueryWrapper<Mat>().eq(Mat::getMatnr, matnr));
if (mat == null) {
@@ -307,12 +323,12 @@
@Override
public List<OrderInfoDto> getDetlForOrderId(Long id, String matnr) {
if (!Objects.isNull(matnr)) {
- Mat mat = matService.getOne(new LambdaQueryWrapper<Mat>()
- .eq(StringUtils.isNotBlank(matnr), Mat::getMatnr, matnr), false);
- if (Objects.isNull(mat)) {
+// Mat mat = matService.getOne(new LambdaQueryWrapper<Mat>()
+// .eq(StringUtils.isNotBlank(matnr), Mat::getMatnr, matnr), false);
+ if (Objects.isNull(matnr)) {
return this.baseMapper.getDetlForOrderId(id, null);
} else {
- return this.baseMapper.getDetlForOrderId(id, mat.getId());
+ return this.baseMapper.getDetlForOrderId(id, matnr);
}
} else {
return this.baseMapper.getDetlForOrderId(id, null);
--
Gitblit v1.9.1