From c42346453608186971fad5e80ffd08fd58d38d06 Mon Sep 17 00:00:00 2001 From: zc <zc@123> Date: 星期三, 16 七月 2025 16:42:45 +0800 Subject: [PATCH] 完善erp对接 --- src/main/resources/mapper/WrkDetlMapper.xml | 4 ++-- src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java | 4 ++-- src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java | 12 ++++++------ src/main/resources/mapper/LocDetlMapper.xml | 13 ++++++++++--- src/main/java/com/zy/asrs/entity/param/StockOutParam.java | 2 +- src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java | 2 +- src/main/java/com/zy/common/model/DetlDto.java | 2 +- src/main/java/com/zy/common/web/WcsController.java | 2 +- src/main/java/com/zy/common/service/CommonService.java | 10 ++++++++-- 9 files changed, 32 insertions(+), 19 deletions(-) diff --git a/src/main/java/com/zy/asrs/entity/param/StockOutParam.java b/src/main/java/com/zy/asrs/entity/param/StockOutParam.java index 464b46c..e09dad1 100644 --- a/src/main/java/com/zy/asrs/entity/param/StockOutParam.java +++ b/src/main/java/com/zy/asrs/entity/param/StockOutParam.java @@ -28,7 +28,7 @@ private String matnr; // 搴忓垪鐮� - private String batch; + private String sku; // 鏁伴噺 private Double count; diff --git a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java index 2e796a2..43f2269 100644 --- a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java @@ -331,7 +331,7 @@ if (waitPakinService.selectCount(new EntityWrapper<WaitPakin>(). eq("zpallet", param.getBarcode()) .eq("io_status", "N") - .eq("matnr", elem.getMatnr()).eq("three_code", elem.getThreeCode()).eq("batch", elem.getBatch())) > 0) { + .eq("matnr", elem.getMatnr()).eq("three_code", elem.getThreeCode())) > 0) { throw new CoolException(param.getBarcode() + "宸叉湁鐩稿悓鏁版嵁"); } diff --git a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java index d7a658f..5d4101b 100644 --- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java @@ -174,7 +174,7 @@ List<LocDetlDto> locDetlDtos = new ArrayList<>(); for (StockOutParam.LocDetl paramLocDetl : param.getLocDetls()) { if (!Cools.isEmpty(paramLocDetl.getLocNo(), paramLocDetl.getMatnr(), paramLocDetl.getCount())) { - LocDetl one = locDetlService.selectItem(paramLocDetl.getLocNo(), paramLocDetl.getMatnr(), paramLocDetl.getBatch()); + LocDetl one = locDetlService.selectItem(paramLocDetl.getLocNo(), paramLocDetl.getMatnr(), paramLocDetl.getSku()); if (null != one) locDetlDtos.add(new LocDetlDto(one, paramLocDetl.getCount())); } } @@ -912,7 +912,7 @@ List<LocDetlDto> locDetlDtos = new ArrayList<>(); for (StockOutParam.LocDetl paramLocDetl : param.getLocDetls()) { if (!Cools.isEmpty(paramLocDetl.getLocNo(), paramLocDetl.getMatnr(), paramLocDetl.getCount())) { - LocDetl one = locDetlService.selectItem(paramLocDetl.getLocNo(), paramLocDetl.getMatnr(), paramLocDetl.getBatch()); + LocDetl one = locDetlService.selectItem(paramLocDetl.getLocNo(), paramLocDetl.getMatnr(), paramLocDetl.getSku()); if (null != one) locDetlDtos.add(new LocDetlDto(one, paramLocDetl.getCount())); } } @@ -940,7 +940,7 @@ List<LocDetlDto> locDetlDtos = new ArrayList<>(); for (StockOutParam.LocDetl paramLocDetl : param.getLocDetls()) { if (!Cools.isEmpty(paramLocDetl.getLocNo(), paramLocDetl.getMatnr(), paramLocDetl.getCount())) { - LocDetl one = locDetlService.selectItem(paramLocDetl.getLocNo(), paramLocDetl.getMatnr(), paramLocDetl.getBatch()); + LocDetl one = locDetlService.selectItem(paramLocDetl.getLocNo(), paramLocDetl.getMatnr(), paramLocDetl.getSku()); if (null != one) locDetlDtos.add(new LocDetlDto(one, paramLocDetl.getCount())); } } @@ -1250,7 +1250,7 @@ if (!locDetl.getAnfme().equals(adjust.getCount())) { // todo 鐩樼偣璁板綍 // 淇敼搴撳瓨 - if (!locDetlService.updateAnfme(adjust.getCount(), locDetl.getLocNo(), locDetl.getMatnr(), locDetl.getBatch())) { + if (!locDetlService.updateAnfme(adjust.getCount(), locDetl.getLocNo(), locDetl.getMatnr(), locDetl.getSku())) { throw new CoolException(locDetl.getLocNo() + "搴撲綅锛�" + locDetl.getMatnr() + "鍟嗗搧锛�" + locDetl.getBatch() + "鎵瑰彿淇敼鏁伴噺澶辫触"); } // 淇濆瓨璋冩暣璁板綍 @@ -1705,7 +1705,7 @@ List<LocDetlDto> locDetlDtos = new ArrayList<>(); for (StockOutParam.LocDetl paramLocDetl : param.getLocDetls()) { if (!Cools.isEmpty(paramLocDetl.getLocNo(), paramLocDetl.getMatnr(), paramLocDetl.getCount())) { - LocDetl one = locDetlService.selectItem(paramLocDetl.getLocNo(), paramLocDetl.getMatnr(), paramLocDetl.getBatch()); + LocDetl one = locDetlService.selectItem(paramLocDetl.getLocNo(), paramLocDetl.getMatnr(), paramLocDetl.getSku()); if (null != one) locDetlDtos.add(new LocDetlDto(one, paramLocDetl.getCount())); } } @@ -1726,7 +1726,7 @@ List<LocDetlDto> locDetlDtos = new ArrayList<>(); for (StockOutParam.LocDetl paramLocDetl : param.getLocDetls()) { if (!Cools.isEmpty(paramLocDetl.getLocNo(), paramLocDetl.getMatnr(), paramLocDetl.getCount())) { - LocDetl one = locDetlService.selectItem(paramLocDetl.getLocNo(), paramLocDetl.getMatnr(), paramLocDetl.getBatch()); + LocDetl one = locDetlService.selectItem(paramLocDetl.getLocNo(), paramLocDetl.getMatnr(), paramLocDetl.getSku()); if (null != one) locDetlDtos.add(new LocDetlDto(one, paramLocDetl.getCount())); } } diff --git a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java index 7933a0f..0c697cf 100644 --- a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java +++ b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java @@ -109,10 +109,10 @@ // 閬嶅巻宸ヤ綔鏄庣粏锛屾洿鏂板簱瀛樻槑缁嗗拰鍏ュ簱閫氱煡妗� for (WrkDetl wrkDetl : wrkDetls) { - LocDetl locDetl = locDetlService.selectItem(locMast.getLocNo(), wrkDetl.getMatnr(), wrkDetl.getBatch()); + LocDetl locDetl = locDetlService.selectItem(locMast.getLocNo(), wrkDetl.getMatnr(), wrkDetl.getSku()); if (null != locDetl) { Double anfme = locDetl.getAnfme() + wrkDetl.getAnfme(); - if (!locDetlService.updateAnfme(anfme, wrkMast.getLocNo(), wrkDetl.getMatnr(), wrkDetl.getBatch())) { + if (!locDetlService.updateAnfme(anfme, wrkMast.getLocNo(), wrkDetl.getMatnr(), wrkDetl.getSku())) { // exceptionHandle("鍏ㄦ澘鍏ュ簱 ===>> 鏇存柊搴撳瓨鏄庣粏澶辫触锛沎workNo={0}],[locNo={1}]", wrkMast.getWrkNo(), wrkMast.getLocNo()); TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); return FAIL.setMsg("鍏ㄦ澘鍏ュ簱 ===>> 鏇存柊搴撳瓨鏄庣粏澶辫触; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getLocNo() + "]"); diff --git a/src/main/java/com/zy/common/model/DetlDto.java b/src/main/java/com/zy/common/model/DetlDto.java index 43bfe0c..7ae4f91 100644 --- a/src/main/java/com/zy/common/model/DetlDto.java +++ b/src/main/java/com/zy/common/model/DetlDto.java @@ -100,7 +100,7 @@ public static boolean has(List<DetlDto> detlDtos, DetlDto detlDto) { for (DetlDto dto : detlDtos) { - if (dto.getMatnr().equals(detlDto.getMatnr()) && Cools.eq(dto.getBatch(), detlDto.getBatch()) && dto.getFromOrderNo().equals(detlDto.getFromOrderNo())) { + if (dto.getMatnr().equals(detlDto.getMatnr()) && Cools.eq(dto.getBatch(), detlDto.getBatch()) &&Cools.eq(dto.getFromOrderNo(),detlDto.getFromOrderNo())) { return true; } } diff --git a/src/main/java/com/zy/common/service/CommonService.java b/src/main/java/com/zy/common/service/CommonService.java index 5d55b8f..d5f2fd1 100644 --- a/src/main/java/com/zy/common/service/CommonService.java +++ b/src/main/java/com/zy/common/service/CommonService.java @@ -982,8 +982,14 @@ for (LocMast locMastGro1 : locMasts1) { if (locMastGro1.getLocSts().equals("F")) { LocDetl locDetl = locDetlService.selectOne(new EntityWrapper<LocDetl>().eq("loc_No", locMastGro1.getLocNo())); - if (!locDetl.getMatnr().equals(matnr) || !locDetl.getBatch().equals(batch)) { - continue; + if (!Cools.isEmpty(locDetl.getSku())){ + if (!locDetl.getMatnr().equals(matnr) || !locDetl.getSku().equals(batch)) { + continue; + } + }else { + if (!locDetl.getMatnr().equals(matnr)) { + continue; + } } } if (locMastGro1.getLocSts().equals("P") || locMastGro1.getLocSts().equals("Q") || locMastGro1.getLocSts().equals("R")) { diff --git a/src/main/java/com/zy/common/web/WcsController.java b/src/main/java/com/zy/common/web/WcsController.java index 3de822b..1deb4f1 100644 --- a/src/main/java/com/zy/common/web/WcsController.java +++ b/src/main/java/com/zy/common/web/WcsController.java @@ -625,7 +625,7 @@ BasDevp sourceStaNo = basDevpService.checkSiteStatus(devpNo, true); // 妫�绱㈠簱浣� List<String> matnrs = waitPakins.stream().map(WaitPakin::getMatnr).distinct().collect(Collectors.toList()); - List<String> batchs = waitPakins.stream().map(WaitPakin::getBatch).distinct().collect(Collectors.toList()); + List<String> batchs = waitPakins.stream().map(WaitPakin::getSku).distinct().collect(Collectors.toList()); boolean mixtrue = false; diff --git a/src/main/resources/mapper/LocDetlMapper.xml b/src/main/resources/mapper/LocDetlMapper.xml index 7390c17..fbc5a32 100644 --- a/src/main/resources/mapper/LocDetlMapper.xml +++ b/src/main/resources/mapper/LocDetlMapper.xml @@ -53,10 +53,10 @@ <sql id="batchSeq"> <choose> <when test="batch != null and batch != ''"> - and batch = #{batch} + and sku = #{batch} </when> <otherwise> - and (batch IS NULL OR batch = '') + and (sku IS NULL OR sku = '') </otherwise> </choose> </sql> @@ -67,7 +67,14 @@ where 1=1 and loc_no = #{locNo} and matnr = #{matnr} - <include refid="batchSeq"></include> + <choose> + <when test="batch != null and batch != ''"> + and sku = #{batch} + </when> + <otherwise> + and (sku IS NULL OR sku = '') + </otherwise> + </choose> </select> <delete id="deleteItem"> diff --git a/src/main/resources/mapper/WrkDetlMapper.xml b/src/main/resources/mapper/WrkDetlMapper.xml index ec90f91..1766286 100644 --- a/src/main/resources/mapper/WrkDetlMapper.xml +++ b/src/main/resources/mapper/WrkDetlMapper.xml @@ -54,10 +54,10 @@ <sql id="batchSeq"> <choose> <when test="batch != null and batch != ''"> - and batch = #{batch} + and sku = #{batch} </when> <otherwise> - and (batch IS NULL OR batch = '') + and (sku IS NULL OR sku = '') </otherwise> </choose> </sql> -- Gitblit v1.9.1