自动化立体仓库 - WMS系统
#
Junjie
3 天以前 b87fd470a866ffcf50bb5c5d55ff9b2dd11fc20c
src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -340,17 +340,12 @@
            // 获取路径
            List<StaDesc> staDescs = staDescService.queryCrnStn(ioType, locMast.getCrnNo(), outSta);
            StaDesc staDesc = staDescs.get(0);
            Integer crnStn = staDesc.getCrnStn();
            if (locMast.getCrnNo() == 1) {
                int finalCrnStn = 1016;
                if (locMast.getRow1() <= 3) {
                    finalCrnStn = 1013;
                }
                for (StaDesc desc : staDescs) {
                    if (desc.getCrnStn() == finalCrnStn) {
                        staDesc = desc;
                        break;
                    }
                    crnStn = 1013;
                }else {
                    crnStn = 1016;
                }
            }
@@ -378,7 +373,7 @@
            wrkMast.setIoType(ioType); // 入出库状态
            wrkMast.setIoPri(13D); // 优先级:13
            wrkMast.setCrnNo(locMast.getCrnNo());
            wrkMast.setSourceStaNo(staDesc.getCrnStn()); // 源站
            wrkMast.setSourceStaNo(crnStn); // 源站
            wrkMast.setStaNo(staDesc.getStnNo()); // 目标站
            wrkMast.setSourceLocNo(dto.getLocNo()); // 源库位
            wrkMast.setFullPlt("Y"); // 满板:Y
@@ -406,7 +401,9 @@
                wrkDetl.setWrkNo(workNo);
                wrkDetl.setIoTime(now);
                Double anfme = ioType == 101 ? detlDto.getLocDetl().getAnfme() : detlDto.getCount();
                Double weight = MatUtils.calcWeight(detlDto.getLocDetl().getMatnr(), anfme);
                wrkDetl.setAnfme(anfme); // 数量
                wrkDetl.setWeight(weight);
                wrkDetl.setAppeTime(now);
                wrkDetl.setAppeUser(userId);
                wrkDetl.setModiTime(now);
@@ -504,9 +501,11 @@
            OrderDetlPakout orderDetlPakout = orderDetlPakoutService.selectItem(locDto.getOrderNo(), locDto.getMatnr(), locDto.getBatch(), locDto.getBrand()
                    , locDto.getStandby1(), locDto.getStandby2(), locDto.getStandby3(), locDto.getBoxType1(), locDto.getBoxType2(), locDto.getBoxType3());
            if (orderDetlPakout == null) {
                orderDetlPakout = orderDetlPakoutService.selectItem(locDto.getOrderNo(), locDto.getMatnr(), null, locDto.getBrand()
                        , locDto.getStandby1(), locDto.getStandby2(), locDto.getStandby3(), locDto.getBoxType1(), locDto.getBoxType2(), locDto.getBoxType3());
                orderDetlPakout = orderDetlPakoutService.selectOne(new EntityWrapper<OrderDetlPakout>()
                        .eq("order_no", locDto.getOrderNo())
                        .eq("matnr", locDto.getMatnr())
                        .eq("standby1", locDto.getStandby1())
                );
            }
            Wrapper<LocDetl> wrapper = new EntityWrapper<LocDetl>()
@@ -538,6 +537,7 @@
            wrkDetl.setStockNum(locDetl.getAnfme());//库存
            wrkDetl.setStockNum2(locDetl.getWeight());//辅库存
            wrkDetl.setKpCstmrName(orderPakout.getKpCstmrName());
            wrkDetl.setCstateid(locDetl.getCstateid());
            //计算辅数量
            Double weight = MatUtils.calcWeight(wrkDetl.getMatnr(), wrkDetl.getAnfme());