From ab290efb7df666e173fcd88c32f066f333825c5e Mon Sep 17 00:00:00 2001
From: dubin <bindu_bean@163.com>
Date: 星期六, 18 十月 2025 08:50:01 +0800
Subject: [PATCH] 联调
---
src/main/java/com/zy/common/model/TaskDto.java | 147 +++++++++++++++++++++++++++++++++---------------
1 files changed, 101 insertions(+), 46 deletions(-)
diff --git a/src/main/java/com/zy/common/model/TaskDto.java b/src/main/java/com/zy/common/model/TaskDto.java
index 286ab79..2da937d 100644
--- a/src/main/java/com/zy/common/model/TaskDto.java
+++ b/src/main/java/com/zy/common/model/TaskDto.java
@@ -19,6 +19,7 @@
private String locNo;
private Integer staNo;
+ private List<LocDetlDto> locDetlDtos = new ArrayList<>();
private List<LocDto> locDtos;
@@ -67,56 +68,110 @@
return null;
}
- public boolean isAll(){
- // 姹囨�讳笉鑰冭檻搴忓垪鐮�
- List<DetlDto> detlDtos = new ArrayList<>();
- for (LocDto locDto : this.getLocDtos()) {
- DetlDto dto = new DetlDto(locDto);
- if (DetlDto.has(detlDtos, dto)) {
- DetlDto detlDto = DetlDto.find(detlDtos, locDto);
- assert detlDto != null;
- detlDto.setAnfme(detlDto.getAnfme() + locDto.getAnfme());
- } else {
- detlDtos.add(new DetlDto(locDto));
+// public boolean isAll(){
+// // 姹囨�讳笉鑰冭檻搴忓垪鐮�
+// List<DetlDto> detlDtos = new ArrayList<>();
+// for (LocDto locDto : this.getLocDtos()) {
+// DetlDto dto = new DetlDto(locDto);
+// if (DetlDto.has(detlDtos, dto)) {
+// DetlDto detlDto = DetlDto.find(detlDtos, locDto);
+// assert detlDto != null;
+// detlDto.setAnfme(detlDto.getAnfme() + locDto.getAnfme());
+// } else {
+// detlDtos.add(new DetlDto(locDto));
+// }
+// }
+//
+// // 鏌ヨ褰撳墠搴撲綅鍙锋墍鏈夌殑搴撳瓨鏄庣粏
+// LocDetlService locDetlService = SpringUtils.getBean(LocDetlService.class);
+// List<LocDetl> locDetls = locDetlService.selectList(new EntityWrapper<LocDetl>().eq("loc_no", this.locNo));
+// if (locDetls == null || locDetls.isEmpty()){
+// throw new CoolException("妫�绱㈠簱瀛樻槑缁嗗け璐ワ紝搴撲綅鍙�=" + this.locNo);
+// }
+// int sameNumber = 0;
+// for (LocDetl locDetl : locDetls) {
+// Iterator<DetlDto> iterator = detlDtos.iterator();
+// while (iterator.hasNext()) {
+// DetlDto dto = iterator.next();
+// if (!dto.getMatnr().equals(locDetl.getMatnr())) {
+// continue;
+// }
+// if (Cools.isEmpty(dto.getBatch()) && !Cools.isEmpty(locDetl.getBatch())) {
+// continue;
+// }
+// if (!Cools.isEmpty(dto.getBatch()) && Cools.isEmpty(locDetl.getBatch())) {
+// continue;
+// }
+// if (!Cools.isEmpty(dto.getBatch()) && !Cools.isEmpty(locDetl.getBatch())) {
+// if (!dto.getBatch().equals(locDetl.getBatch())) {
+// continue;
+// }
+// }
+// if (dto.getAnfme() > locDetl.getAnfme()) {
+// throw new CoolException("鏈嶅姟鍣ㄥ唴閮ㄩ敊璇�");
+// }
+// if (dto.getAnfme().equals(locDetl.getAnfme())) {
+// sameNumber++;
+// iterator.remove();
+// break;
+// }
+// }
+// }
+// return sameNumber == locDetls.size();
+// }
+public boolean isAll() {
+ // 娣辨嫹璐濓紝闃叉鍘熼泦鍚堣淇敼
+ List<LocDetlDto> locDetlDtosCp = new ArrayList<>(this.locDetlDtos);
+
+ // 鏌ヨ褰撳墠搴撲綅鍙锋墍鏈夊簱瀛樻槑缁�
+ LocDetlService locDetlService = SpringUtils.getBean(LocDetlService.class);
+ List<LocDetl> locDetls = locDetlService.selectList(
+ new EntityWrapper<LocDetl>().eq("loc_no", this.locNo)
+ );
+
+ if (locDetls == null || locDetls.isEmpty()) {
+ throw new CoolException("妫�绱㈠簱瀛樻槑缁嗗け璐ワ紝搴撲綅鍙�=" + this.locNo);
+ }
+
+ int sameNumber = 0;
+
+ for (LocDetl locDetl : locDetls) {
+ boolean matched = false;
+
+ System.out.println("褰撳墠搴撳瓨鏄庣粏: matnr=" + locDetl.getMatnr() + ", batch=" + locDetl.getBatch() + ", anfme=" + locDetl.getAnfme());
+
+ Iterator<LocDetlDto> iterator = locDetlDtosCp.iterator();
+ while (iterator.hasNext()) {
+ LocDetlDto dto = iterator.next();
+ String dtoMatnr = dto.getLocDetl().getMatnr();
+ String dtoBatch = dto.getLocDetl().getBatch();
+ Double dtoCount = dto.getCount();
+
+ System.out.println("姣旇緝瀵硅薄: matnr=" + dtoMatnr + ", batch=" + dtoBatch + ", count=" + dtoCount);
+
+ if (!dtoMatnr.equals(locDetl.getMatnr())) continue;
+ if (!Cools.eq(dtoBatch, locDetl.getBatch())) continue;
+
+ if (dtoCount > locDetl.getAnfme()) {
+ throw new CoolException("鏈嶅姟鍣ㄥ唴閮ㄩ敊璇紝鏁伴噺澶т簬搴撳瓨");
+ }
+
+ if (dtoCount.equals(locDetl.getAnfme())) {
+ sameNumber++;
+ matched = true;
+ iterator.remove();
+ System.out.println("鍖归厤鎴愬姛骞剁Щ闄よ椤癸紝褰撳墠 sameNumber = " + sameNumber + "锛屽墿浣欏尮閰嶆暟: " + locDetlDtosCp.size());
+ break;
}
}
- // 鏌ヨ褰撳墠搴撲綅鍙锋墍鏈夌殑搴撳瓨鏄庣粏
- LocDetlService locDetlService = SpringUtils.getBean(LocDetlService.class);
- List<LocDetl> locDetls = locDetlService.selectList(new EntityWrapper<LocDetl>().eq("loc_no", this.locNo));
- if (locDetls == null || locDetls.isEmpty()){
- throw new CoolException("妫�绱㈠簱瀛樻槑缁嗗け璐ワ紝搴撲綅鍙�=" + this.locNo);
+ if (!matched) {
+ System.out.println("鏈尮閰嶆垚鍔�: matnr=" + locDetl.getMatnr() + ", batch=" + locDetl.getBatch());
}
- int sameNumber = 0;
- for (LocDetl locDetl : locDetls) {
- Iterator<DetlDto> iterator = detlDtos.iterator();
- while (iterator.hasNext()) {
- DetlDto dto = iterator.next();
- if (!dto.getMatnr().equals(locDetl.getMatnr())) {
- continue;
- }
- if (Cools.isEmpty(dto.getBatch()) && !Cools.isEmpty(locDetl.getBatch())) {
- continue;
- }
- if (!Cools.isEmpty(dto.getBatch()) && Cools.isEmpty(locDetl.getBatch())) {
- continue;
- }
- if (!Cools.isEmpty(dto.getBatch()) && !Cools.isEmpty(locDetl.getBatch())) {
- if (!dto.getBatch().equals(locDetl.getBatch())) {
- continue;
- }
- }
- if (dto.getAnfme() > locDetl.getAnfme()) {
- throw new CoolException("鏈嶅姟鍣ㄥ唴閮ㄩ敊璇�");
- }
- if (dto.getAnfme().equals(locDetl.getAnfme())) {
- sameNumber++;
- iterator.remove();
- break;
- }
- }
- }
- return sameNumber == locDetls.size();
}
+ return sameNumber == locDetls.size();
+}
+
+
}
--
Gitblit v1.9.1