自动化立体仓库 - WMS系统
#
whycq
2024-06-19 396ba47655c284755b317bf0f24585310809d56a
src/main/java/com/zy/asrs/task/handler/AutoMoveHandler.java
@@ -55,6 +55,12 @@
        doHandMove2(agvWrkMast);
        return SUCCESS;
    }
    public ReturnT<String> start4(AgvWrkMast agvWrkMast) {
        // locType 1. 自动, 2. 手动
        doAutoMove3(agvWrkMast);
        return SUCCESS;
    }
    //根据库位的loctype值发送任务--弃用
    private ReturnT<String> doAutoMove(AgvLocMast agvLocMast) {
        Date now = new Date();
@@ -194,6 +200,23 @@
        return SUCCESS;
    }
    private ReturnT<String> doAutoMove3(AgvWrkMast agvWrkMast) {
        Date now = new Date();
        //检索库位,选择合适的库位
        AgvLocMast locMast = agvCommonService.getLocNo(3,agvWrkMast.getCrnNo(),false,false);
        if (Cools.isEmpty(locMast)) {
            throw new CoolException("暂无库位");
        }
        agvWrkMast.setWrkSts(201L);
        agvWrkMast.setLocNo(locMast.getLocNo());
        agvWrkMastService.updateById(agvWrkMast);
        //更新目标库位状态
        updateAgvLocMast(locMast,"S");
        return SUCCESS;
    }
    private ReturnT<String> doHandMove2(AgvWrkMast agvWrkMast) {
        Date now = new Date();
        String lev1 = agvWrkMast.getSourceLocNo().substring(agvWrkMast.getSourceLocNo().length() - 4).substring(0, 2);
@@ -201,7 +224,7 @@
        if ("01".equals(lev1)) {
            devpNo = agvCommonService.getDevpNo(3, 1, "Y", "Y");
        } else {
            devpNo = agvCommonService.getDevpNo(3, 5, "Y", "Y");
            devpNo = agvCommonService.getDevpNo(3, 4, "Y", "Y");
        }
        if (Cools.isEmpty(devpNo)) {