自动化立体仓库 - WMS系统
#
Administrator
2023-06-02 e025355e317d85114df55be503da3672de1bf535
#
1个文件已修改
42 ■■■■■ 已修改文件
src/main/java/com/zy/common/service/CommonService.java 42 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/common/service/CommonService.java
@@ -156,22 +156,23 @@
        // 目标库位
        LocMast locMast = null;
        if (!Cools.isEmpty(matNos)) {
            for (String matNo : matNos) {
                Mat mat = matService.selectByMatnr(matNo);
                if (matType == null) {
                    matType = mat.getMatType();
                }
                if (matType != mat.getMatType()) {
                    throw new CoolException("混放物料类型不一致");
                }
            }
            if (matNos.size() > 1 && matType == 1) {
                //物料为单品类型,且物料种类超过1(实际为高频混放),则禁止入库
                throw new CoolException("物料类型和实际种类不一致");
            }
        }
        //3号可以入库前必须打开控制
//        if (!Cools.isEmpty(matNos)) {
//            for (String matNo : matNos) {
//                Mat mat = matService.selectByMatnr(matNo);
//                if (matType == null) {
//                    matType = mat.getMatType();
//                }
//                if (matType != mat.getMatType()) {
//                    throw new CoolException("混放物料类型不一致");
//                }
//            }
//
//            if (matNos.size() > 1 && matType == 1) {
//                //物料为单品类型,且物料种类超过1(实际为高频混放),则禁止入库
//                throw new CoolException("物料类型和实际种类不一致");
//            }
//        }
        // 靠近摆放规则 --- 空托
        locMast = getLocNoStep1(staDescId, locTypeDto, start, end);
@@ -219,7 +220,14 @@
                //内侧其他库位不是D、F、X。不能选取该库位
                continue;
            }
            if(sourceStaNo==103 && mast.getRow1()>7)
            {
                continue;
            }
            if(sourceStaNo==203 && mast.getRow1()<8)
            {
                continue;
            }
            //找到库位,返回dto
            return getLocNoFinalStep(staDescId, sourceStaNo, mast);//返回dto
        }