From 587fee18e22ed0ceee502ca12025a40e9d63989f Mon Sep 17 00:00:00 2001 From: pang.jiabao <pang_jiabao@163.com> Date: 星期二, 03 九月 2024 10:47:43 +0800 Subject: [PATCH] 一楼反修入库修改 --- src/main/java/com/zy/asrs/utils/OutLocBoxExcelListener.java | 56 ++++++++++++++++++++++++++++++++++++++++++++++---------- 1 files changed, 46 insertions(+), 10 deletions(-) diff --git a/src/main/java/com/zy/asrs/utils/OutLocBoxExcelListener.java b/src/main/java/com/zy/asrs/utils/OutLocBoxExcelListener.java index 2778157..13d18e6 100644 --- a/src/main/java/com/zy/asrs/utils/OutLocBoxExcelListener.java +++ b/src/main/java/com/zy/asrs/utils/OutLocBoxExcelListener.java @@ -31,6 +31,7 @@ public class OutLocBoxExcelListener extends AnalysisEventListener<OutLocBoxExcel> { private int total = 0; + private String orderOneNo = null; private Long userId; List<String[]> OutLocBoxCs = new ArrayList<>(); @@ -62,9 +63,16 @@ public void invoke(OutLocBoxExcel excel, AnalysisContext ctx) { String batch = excel.getBatch(); String orderNo = excel.getOrderNo(); + if (Cools.isEmpty(orderOneNo)){ + if (!Cools.isEmpty(excel.getOrderNo())){ + orderOneNo = excel.getOrderNo(); + } else { + throw new CoolException("璁㈠崟鍙峰弬鏁颁负绌�"); + } + } String[] s=new String[2]; s[0] = batch; - s[1] = orderNo; + s[1] = orderOneNo; OutLocBoxCs.add(s); total++; } @@ -79,22 +87,52 @@ LocDetlService locDetlService = SpringUtils.getBean(LocDetlService.class); WorkService workService = SpringUtils.getBean(WorkService.class); List<LocDto> locDtos = new ArrayList<>(); + List<String[]> outLocBoxCList = new ArrayList<>(); + List<String> outLocBoxCNew = new ArrayList<>(); for (String[] outLocBoxC:OutLocBoxCs){ + total--; + if (!outLocBoxCNew.contains(outLocBoxC[0])){ + LocDetl locDetlSou = locDetlService.selectOne(new EntityWrapper<LocDetl>().eq("batch", outLocBoxC[0])); + if (Cools.isEmpty(locDetlSou)){ + throw new CoolException("绠卞彿锛�"+outLocBoxC[0]+" 鏈煡璇㈠埌鏁版嵁锛侊紒锛�"); + } + List<LocDetl> locDetls = locDetlService.selectList(new EntityWrapper<LocDetl>() + .eq("loc_no", locDetlSou.getLocNo()).eq("origin", locDetlSou.getOrigin())); + for (LocDetl locDetl:locDetls){ + total++; + String[] locDetlNow=new String[2]; + locDetlNow[0] = locDetl.getBatch(); + locDetlNow[1] = outLocBoxC[1]; + outLocBoxCList.add(locDetlNow); + outLocBoxCNew.add(outLocBoxC[0]); + } + } + } + for (String[] outLocBoxC:outLocBoxCList){ LocDetl locDetl = locDetlService.selectOne(new EntityWrapper<LocDetl>().eq("batch", outLocBoxC[0])); if (Cools.isEmpty(locDetl)){ total--; continue; } - LocDto locDto = new LocDto(locDetl.getManu(), locDetl.getMatnr(), locDetl.getMaktx(),locDetl.getModel(),locDetl.getSpecs(), - locDetl.getBatch(),locDetl.getBrand(),locDetl.getBarcode(), outLocBoxC[1],locDetl.getAnfme()); - locDto.setOrigin(locDetl.getOrigin()); - locDto.setWeight(locDetl.getWeight()); +// LocDto locDto = new LocDto(locDetl.getManu(), locDetl.getMatnr(), locDetl.getMaktx(),locDetl.getModel(),locDetl.getSpecs(), +// locDetl.getBatch(),locDetl.getBrand(),locDetl.getBarcode(), outLocBoxC[1],locDetl.getAnfme()); +// locDto.setOrigin(locDetl.getOrigin()); +// locDto.setWeight(locDetl.getWeight()); + LocDto locDto = new LocDto(locDetl); locDtos.add(locDto); } StockOutParam param = new StockOutParam(); ArrayList<StockOutParam.LocDetl> locDetls = new ArrayList<>(); - for (LocDto locDto:locDtos){ + List<LocDto> locDtosList = new ArrayList<>(); + List<String> batchList = new ArrayList<>(); + for (LocDto locDto : locDtos) { + if (!batchList.contains(locDto.getBatch())){ + batchList.add(locDto.getBatch()); + locDtosList.add(locDto); + } + } + for (LocDto locDto:locDtosList){ StockOutParam.LocDetl locDetl = new StockOutParam.LocDetl(); locDetl.setBrand(locDto.getBrand()); locDetl.setLocNo(locDto.getLocNo()); @@ -107,11 +145,10 @@ locDetl.setOrigin(locDto.getOrigin()); locDetl.setWeight(locDto.getWeight()); - param.setOrderNo(locDto.getOrderNo()); - locDetls.add(locDetl); } param.setLocDetls(locDetls); + param.setOrderNo(orderOneNo); if (total>0){ workService.startupFullTakeStoreOrder(param,9999L); @@ -119,8 +156,7 @@ } - - log.info("瀵煎叆{}鏉$鍙凤紒", total); + log.info("鍑哄簱{}鏉$鍙凤紒", total); } public int getTotal() { -- Gitblit v1.9.1