自动化立体仓库 - WMS系统
Junjie
2023-06-03 1ccbafd4845918b45cea28a834fd889e3ba4e0b6
src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -524,6 +524,7 @@
                        wrkDetl.setModiUser(userId);
                        wrkDetl.setSpecs(locDetl.getSpecs());
                        wrkDetl.setMatType(locDetl.getMatType());
                        wrkDetl.setZpallet(locMast.getBarcode());
                        if (!wrkDetlService.insert(wrkDetl)) {
                            throw new CoolException("保存工作档明细失败");
                        }
@@ -579,17 +580,23 @@
            assert ioType != null;
            // 获取库位
            LocMast locMast = locMastService.selectById(dto.getLocNo());
            Integer devNo = staNo.getDevNo();
            //-----------------2023.6.2出库兼容代码-----------------------
            //-----------------2023.6.2出库兼容代码-----------------------6.3更新
            List<LocDetl> locDetls = locDetlService.selectByLocNo(locMast.getLocNo());
            if (locMast.getLocType2() == 1 && locDetls.size() > 1) {
                //单品区域出库物料大于1种,强制变成101全板出库
                ioType = 101;
                if (locMast.getCrnNo()==1){
                    devNo = 100;
                }else {
                    devNo = 200;
                }
            }
            //-----------------2023.6.2出库兼容代码end-----------------------
            // 获取路径
            StaDesc staDesc = staDescService.queryCrnStn(ioType, locMast.getCrnNo(), staNo.getDevNo(), locMast.getRow1());
            StaDesc staDesc = staDescService.queryCrnStn(ioType, locMast.getCrnNo(), devNo, locMast.getRow1());
            if(staDesc == null){
                throw new CoolException("出库路径不存在");
            }
@@ -607,7 +614,7 @@
            wrkMast.setOutMost(locMastService.isOutMost(dto.getLocNo(), false) ? 1 : 0);
            wrkMast.setCrnNo(locMast.getCrnNo());
            wrkMast.setSourceStaNo(staDesc.getCrnStn()); // 源站
            wrkMast.setStaNo(staDesc.getStnNo()); // 目标站
            wrkMast.setStaNo(devNo); // 目标站
            wrkMast.setSourceLocNo(dto.getLocNo()); // 源库位
            wrkMast.setFullPlt("Y"); // 满板:Y
            wrkMast.setPicking("N"); // 拣料
@@ -640,6 +647,7 @@
                wrkDetl.setModiUser(userId);
                wrkDetl.setSpecs(detlDto.getLocDetl().getSpecs());
                wrkDetl.setMatType(detlDto.getLocDetl().getMatType());
                wrkDetl.setZpallet(locMast.getBarcode());
                if (!wrkDetlService.insert(wrkDetl)) {
                    throw new CoolException("保存工作档明细失败");
                }