#
luxiaotao1123
2021-01-02 7a63bc22c7e5156cdfb3807fa0cd8c85890ef168
#
2个文件已修改
45 ■■■■ 已修改文件
src/main/java/com/zy/common/service/CommonService.java 43 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/application.yml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/common/service/CommonService.java
@@ -96,19 +96,27 @@
        StartupDto startupDto = new StartupDto();
        // 生成工作号
        int workNo = getWorkNo(0);
        if (sourceStaNo == 202) {
        switch (sourceStaNo) {
            case 202:
            whsType = 2;
        } else if (sourceStaNo == 205){
                break;
            case 205:
            whsType = 1;
        } else {
            throw new CoolException("库位排号分配");
                break;
            case 126:
                whsType = 3;
                break;
            default:
                throw new CoolException("库位排号分配错误, 源站号:" + sourceStaNo);
        }
        startupDto.setWorkNo(workNo);
        RowLastno rowLastno = rowLastnoService.selectById(whsType);
        if (Cools.isEmpty(rowLastno)) {
            throw new CoolException("数据异常,请联系管理员");
        }
        if (whsType == 1 || whsType == 2){
        // ===============>>>> 开始执行
            int curRow = rowLastno.getCurrentRow();
            int sRow = rowLastno.getsRow();
            int eRow = rowLastno.geteRow();
@@ -159,7 +167,7 @@
            // 如果没有相近物料,则按规则轮询货架
            if (null == locMast) {
                // 重库位
            // 1-4排
                if (whsType == 1) {
                    // 获取目标站所在货架排号
                    Shelves shelves = new Shelves(rowCount, crn_qty);
@@ -173,8 +181,8 @@
                            break;
                        }
                    }
                    // 轻库位
                } if (whsType == 2) {
            // 5-8排
            } else if (whsType == 2) {
                    // 获取目标站所在货架排号
                    Shelves shelves = new Shelves(rowCount, crn_qty);
                    curRow = shelves.start(curRow - 4);
@@ -190,6 +198,20 @@
                    // 偏移量补偿
                    curRow = curRow + 4;
                    crnNo = crnNo + 1;
            // 126空板入 1-8排
            } else {
                // 获取目标站所在货架排号
                Shelves shelves = new Shelves(rowCount, crn_qty);
                curRow = shelves.start(curRow);
                if (curRow < 0) {
                    throw new CoolException("检索库位失败,请联系管理员");
                }
                for (List<Integer> node : shelves.nodes){
                    if (node.contains(curRow)) {
                        crnNo = shelves.nodes.indexOf(node) + 1;
                        break;
                    }
                }
                }
            }
@@ -220,7 +242,7 @@
                    // 轻货物找轻库位为空时,可以去找重库位仓
                    if (locTypeDto.getLocType1() == 1) {
                        locTypeDto.setLocType1((short) 2);
                        return getLocNo(1, staDescId, sourceStaNo, matNos, locTypeDto);
                    return getLocNo(null, staDescId, sourceStaNo, matNos, locTypeDto);
                    }
                    throw new CoolException("没有空库位");
                }
@@ -237,9 +259,6 @@
                startupDto.setLocNo(locNo);
            } else {
                throw new CoolException("目标站"+staDesc.getCrnStn()+"不可用");
            }
        } else {
            throw new CoolException(rowLastno.getWhsType()+"号库位排号分配规则不可用");
        }
        return startupDto;
    }
src/main/resources/application.yml
@@ -128,7 +128,7 @@
    ip: 192.168.10.61
    port: 5005
    devpPlcId: ${wcs-slave.devp[0].id}
    staArr: 2,3
    staArr: 109,113,103,200,203 # todo:luxiaotao
  # 磅称
#  scale[0]:
#    id: 1