自动化立体仓库 - WMS系统
zhangchao
2024-10-23 401da88caef79968c8c0b1cb15487c4a554761ec
src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java
@@ -67,6 +67,7 @@
        //判断要修改的工作档状态是否合理,如果不合理则抛出异常
        checkWrkSts(agvWrkMast,wrkSts);
        agvWrkMast.setWrkSts(wrkSts);
        agvWrkMast.setModiTime(new Date());
        this.updateById(agvWrkMast);
    }
@@ -108,6 +109,8 @@
        AgvLocMast locMast = agvCommonService.getLocNo(basDevp.getLocType1(),basDevp.getFloor(),false,true);
        agvWrkMast.setLocNo(locMast.getLocNo());
        agvWrkMast.setWrkSts(201L);
        agvWrkMast.setLogErrMemo("startAllcationIn");
        agvWrkMast.setModiTime(new Date());
        agvWrkMastService.updateById(agvWrkMast);
        // 更目标库位
        locMast.setLocSts("S");
@@ -224,7 +227,6 @@
        switch (agvWrkMast.getIoType()) {
            case 108:
            case 12:
            case 57:
                agvTaskCreateParam.setTaskTyp("F06");
                break;
            case 109:
@@ -235,13 +237,27 @@
                }
                break;
            case 1:
            case 57:
                // 入库任务是只有 接驳位 -- > 库位
                AgvLocMast loc = agvLocMastService.selectOne(new EntityWrapper<AgvLocMast>().eq("loc_no", agvWrkMast.getLocNo()));
                String locSub = loc.getLocNo().substring(loc.getLocNo().length() - 4).substring(0, 2).substring(0, 2);
                AgvBasDevp agvBasDevp = agvBasDevpService.selectByDevNo(agvWrkMast.getSourceLocNo());
                if ("02".equals(locSub)) {
                    agvTaskCreateParam.setTaskTyp("F06");
                    if (agvBasDevp.getFloor() == 4) {
                        agvTaskCreateParam.setTaskTyp("F01");
                    } else {
                        agvTaskCreateParam.setTaskTyp("F06");
                    }
                } else {
                    agvTaskCreateParam.setTaskTyp("F01");
                    // 目标楼层位1楼 但源库位(接驳位)在吸塑二楼
                    if (agvBasDevp.getFloor() == 4) {
                        agvTaskCreateParam.setTaskTyp("F06");
                    } else {
                        agvTaskCreateParam.setTaskTyp("F01");
                    }
                }
                break;
            default: