From 2062f889627243c09833282218af670ba6e2797a Mon Sep 17 00:00:00 2001
From: Junjie <fallin.jie@qq.com>
Date: 星期五, 31 五月 2024 20:45:15 +0800
Subject: [PATCH] #新旧物料更新接口
---
src/main/java/com/zy/common/model/OutLocDto.java | 121 ++++++++++++++++++++++++++++++++-------
1 files changed, 98 insertions(+), 23 deletions(-)
diff --git a/src/main/java/com/zy/common/model/OutLocDto.java b/src/main/java/com/zy/common/model/OutLocDto.java
index c990d89..3388eb6 100644
--- a/src/main/java/com/zy/common/model/OutLocDto.java
+++ b/src/main/java/com/zy/common/model/OutLocDto.java
@@ -1,57 +1,67 @@
package com.zy.common.model;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
+import com.core.common.Cools;
import com.core.common.SpringUtils;
+import com.core.exception.CoolException;
import com.zy.asrs.entity.LocDetl;
import com.zy.asrs.service.LocDetlService;
+import lombok.Data;
-import java.util.List;
+import java.util.*;
/**
* Created by vincent on 2020/6/17
*/
+@Data
public class OutLocDto {
private String locNo;
- private List<LocDetlDto> locDetlDtos;
+ private List<LocDetlDto> locDetlDtos = new ArrayList<>();
public OutLocDto() {
}
- public OutLocDto(String locNo, List<LocDetlDto> locDetlDtos) {
+ public OutLocDto(String locNo, LocDetlDto locDetlDto) {
this.locNo = locNo;
- this.locDetlDtos = locDetlDtos;
- }
-
- public String getLocNo() {
- return locNo;
- }
-
- public void setLocNo(String locNo) {
- this.locNo = locNo;
- }
-
- public List<LocDetlDto> getLocDetlDtos() {
- return locDetlDtos;
- }
-
- public void setLocDetlDtos(List<LocDetlDto> locDetlDtos) {
- this.locDetlDtos = locDetlDtos;
+ this.locDetlDtos.add(locDetlDto);
}
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()){
- return true;
+ throw new CoolException("妫�绱㈠簱瀛樻槑缁嗗け璐ワ紝搴撲綅鍙�=" + this.locNo);
}
int sameNumber = 0;
for (LocDetl locDetl : locDetls) {
- for (LocDetlDto dto : this.locDetlDtos) {
- if (dto.getLocDetl().getMatnr().equals(locDetl.getMatnr()) && dto.getCount().equals(locDetl.getAnfme())) {
+ Iterator<LocDetlDto> iterator = locDetlDtosCp.iterator();
+ while (iterator.hasNext()) {
+ LocDetlDto next = iterator.next();
+ if (!next.getLocDetl().getMatnr().equals(locDetl.getMatnr())) {
+ continue;
+ }
+ if (!Cools.eq(next.getLocDetl().getBatch(), locDetl.getBatch())) {
+ continue;
+ }
+ 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.getCount().equals(locDetl.getAnfme())) {
sameNumber++;
+ iterator.remove();
break;
}
}
@@ -59,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