From 43efe016c156158b9fc3a8b647810f612fb126e6 Mon Sep 17 00:00:00 2001
From: zwl <1051256694@qq.com>
Date: 星期二, 02 九月 2025 11:39:52 +0800
Subject: [PATCH] 自动补货单新增 1.订单中只能生成两笔自动补货单 2.CTU库是否有足够的空库位,空库位数需要大于100才会生成自动补货单 3.在补货时加上订单明细的数量进行判断
---
src/main/java/com/zy/common/model/OutLocDto.java | 84 +++++++++++++++++++++++++++++++++++++++--
1 files changed, 79 insertions(+), 5 deletions(-)
diff --git a/src/main/java/com/zy/common/model/OutLocDto.java b/src/main/java/com/zy/common/model/OutLocDto.java
index 810abac..3388eb6 100644
--- a/src/main/java/com/zy/common/model/OutLocDto.java
+++ b/src/main/java/com/zy/common/model/OutLocDto.java
@@ -40,17 +40,26 @@
for (LocDetl locDetl : locDetls) {
Iterator<LocDetlDto> iterator = locDetlDtosCp.iterator();
while (iterator.hasNext()) {
- LocDetl next = iterator.next().getLocDetl();
- if (!next.getMatnr().equals(locDetl.getMatnr())) {
+ LocDetlDto next = iterator.next();
+ if (!next.getLocDetl().getMatnr().equals(locDetl.getMatnr())) {
continue;
}
- if (!Cools.eq(next.getBatch(), locDetl.getBatch())) {
+ if (!Cools.eq(next.getLocDetl().getBatch(), locDetl.getBatch())) {
continue;
}
- if (next.getAnfme() > locDetl.getAnfme()) {
+ if(!Cools.eq(next.getLocDetl().getSuppCode(),locDetl.getSuppCode())){
+ continue;
+ }
+ if(!Cools.eq(next.getLocDetl().getThreeCode(),locDetl.getThreeCode())){
+ continue;
+ }
+ if(!Cools.eq(next.getLocDetl().getDeadTime(),locDetl.getDeadTime())){
+ continue;
+ }
+ if (next.getCount() > locDetl.getAnfme()) {
throw new CoolException("鏈嶅姟鍣ㄥ唴閮ㄩ敊璇�");
}
- if (next.getAnfme().equals(locDetl.getAnfme())) {
+ if (next.getCount().equals(locDetl.getAnfme())) {
sameNumber++;
iterator.remove();
break;
@@ -60,4 +69,69 @@
return sameNumber == locDetls.size();
}
+ public void sortLocDetlDtos() {
+ ArrayList<LocDetlDto> list = new ArrayList<>();
+ EntityWrapper<LocDetl> wrapper = new EntityWrapper<>();
+ wrapper.eq("loc_no", locNo);
+ LocDetlService locDetlService = SpringUtils.getBean(LocDetlService.class);
+ List<LocDetl> locDetls = locDetlService.selectList(wrapper);
+ for (LocDetl locDetl : locDetls) {
+ boolean flag = true;
+ for (LocDetlDto locDetlDto : locDetlDtos) {
+ LocDetl detl = locDetlDto.getLocDetl();
+ if (!Cools.isEmpty(locDetl.getMatnr())) {
+ if (!locDetl.getMatnr().equals(detl.getMatnr())) {
+ continue;
+ }
+ }
+ if (!Cools.isEmpty(locDetl.getBatch())) {
+ if (!locDetl.getBatch().equals(detl.getBatch())) {
+ continue;
+ }
+ }
+ if (!Cools.isEmpty(locDetl.getSuppCode())) {
+ if (!locDetl.getSuppCode().equals(detl.getSuppCode())) {
+ continue;
+ }
+ }
+ flag = false;
+ break;
+ }
+
+ if (flag) {
+ LocDetlDto dto = new LocDetlDto(locDetl, 0D);
+ list.add(dto);
+ }
+ }
+
+ locDetlDtos.addAll(list);
+// ArrayList<String> matnr = new ArrayList<>();
+// ArrayList<String> batch = new ArrayList<>();
+// ArrayList<String> suppCode = new ArrayList<>();
+// for (LocDetlDto locDetlDto : locDetlDtos) {
+// LocDetl locDetl = locDetlDto.getLocDetl();
+// if (!Cools.isEmpty(locDetl.getMatnr())) {
+// matnr.add(locDetl.getMatnr());
+// }
+// if (!Cools.isEmpty(locDetl.getBatch())) {
+// batch.add(locDetl.getBatch());
+// }
+// if (!Cools.isEmpty(locDetl.getSuppCode())) {
+// suppCode.add(locDetl.getSuppCode());
+// }
+// }
+//
+// EntityWrapper<LocDetl> wrapper = new EntityWrapper<>();
+// wrapper.eq("loc_no", locNo);
+// wrapper.notIn("matnr", matnr);
+// wrapper.notIn("batch", batch);
+// wrapper.notIn("supp_code", suppCode);
+// LocDetlService locDetlService = SpringUtils.getBean(LocDetlService.class);
+// List<LocDetl> locDetls = locDetlService.selectList(wrapper);
+// for (LocDetl locDetl : locDetls) {
+// LocDetlDto dto = new LocDetlDto(locDetl, 0D);
+// locDetlDtos.add(dto);
+// }
+ }
+
}
--
Gitblit v1.9.1