自动化立体仓库 - WMS系统
1
zhang
9 天以前 b51eadaa66a5c0ee6da0e418a3ba193dfc878fca
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("batch", elem.getBatch())) > 0) {
                        .eq("matnr", elem.getMatnr()).eq("three_code",elem.getThreeCode()).eq("batch", elem.getBatch())) > 0) {
                    throw new CoolException(param.getBarcode() + "已有相同数据");
                }
@@ -387,9 +387,7 @@
                //for (CombParam.CombMat elem : param.getCombMats()) {
                CombParam.CombMat elem = combMats.get(i);
                CodeDataParam codeDataParam = data.get(i);
                if (!codeDataParam.getQuality().equals(order.getShipCode())) {
                    throw new CoolException("单据质量状态和组托物料不匹配");
                }
                elem.setTemp1(codeDataParam.getQuality());
                elem.setAnfme(codeDataParam.getQty());
                //elem.setBatch(codeDataParam.getBatchNum());
@@ -403,6 +401,9 @@
                if (Cools.isEmpty(orderDetl)) {
                    throw new CoolException("该单据中未找到对应物料明细");
                }
                if (!codeDataParam.getQuality().equals(orderDetl.getInspect())) {
                    throw new CoolException("单据质量状态和组托物料不匹配");
                }
                if (elem.getAnfme() > orderDetl.getEnableQty()) {
                    throw new CoolException(orderDetl.getMatnr() + "入库数量不合法");
                }
@@ -413,11 +414,11 @@
//                DetlDto detlDto = new DetlDto(elem.getMatnr(), elem.getBatch(), elem.getAnfme(),orderDetl.getManu());
                DetlDto detlDto = new DetlDto(elem.getMatnr(), elem.getBatch(), elem.getAnfme(), elem.getThreeCode()
                        , orderDetl.getManu(), orderDetl.getSku(), orderDetl.getSupp(), orderDetl.getTemp1(), orderDetl.getTemp2(), orderDetl.getTemp3(), orderDetl.getTemp4());
                        , orderDetl.getManu(), codeDataParam.getBatchNum(), orderDetl.getSupp(), orderDetl.getTemp1(), orderDetl.getTemp2(), orderDetl.getTemp3(), orderDetl.getTemp4());
                detlDto.setTemp1(codeDataParam.getQuality());
                detlDto.setFromOrderNo(codeDataParam.getBarcode());
                if (DetlDto.has(detlDtos, detlDto)) {
                    DetlDto one = DetlDto.find(detlDtos, detlDto.getMatnr(), detlDto.getBatch());
                    DetlDto one = DetlDto.find(detlDtos, detlDto.getMatnr(), detlDto.getBatch(),detlDto.getFromOrderNo());
                    assert one != null;
                    one.setAnfme(one.getAnfme() + detlDto.getAnfme());
                } else {