From 502360f2af9d5f2120412afaa888c67c9911a741 Mon Sep 17 00:00:00 2001 From: zyx <zyx123456> Date: 星期日, 07 四月 2024 09:35:01 +0800 Subject: [PATCH] agv工作档转出库任务 --- src/main/java/com/zy/common/model/OutLocDto.java | 96 ++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 85 insertions(+), 11 deletions(-) diff --git a/src/main/java/com/zy/common/model/OutLocDto.java b/src/main/java/com/zy/common/model/OutLocDto.java index 3fc958d..3388eb6 100644 --- a/src/main/java/com/zy/common/model/OutLocDto.java +++ b/src/main/java/com/zy/common/model/OutLocDto.java @@ -8,8 +8,7 @@ import com.zy.asrs.service.LocDetlService; import lombok.Data; -import java.util.Iterator; -import java.util.List; +import java.util.*; /** * Created by vincent on 2020/6/17 @@ -19,17 +18,18 @@ 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; + 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)); @@ -38,19 +38,28 @@ } int sameNumber = 0; for (LocDetl locDetl : locDetls) { - Iterator<LocDetlDto> iterator = this.locDetlDtos.iterator(); + 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