#
lsh
2024-05-17 f84127457cf5ebacb0af4b4a4667846b23312a19
src/main/java/com/zy/asrs/controller/RgvController.java
@@ -294,6 +294,12 @@
        return rgvFetchSingleStepPut(param,3)?R.ok():R.error();
    }
    @ManagerAuth(memo = "取放")
    @PostMapping("/operator/single/step/four/put")
    public R rgvFetchSingleStepFourPut(RgvOperatorParam param){
        return rgvFetchSingleStepPut(param,4)?R.ok():R.error();
    }
    public boolean rgvFetchSingleStepPut(RgvOperatorParam param ,Integer type){
        wrkNo++;
        RgvCommand command = new RgvCommand();
@@ -309,6 +315,9 @@
                break;
            case 3:
                fetchPut = RgvTaskModeType.X_MOVE;
                break;
            case 4:
                fetchPut = RgvTaskModeType.FETCH_PUT;
                break;
            default:
                return false;
@@ -326,7 +335,7 @@
//        command.setDestinationStaNo2(param.getStaNo2());  // 目标站
        command.setCommand((short) 0);
        return rgvControl(command);
        return rgvControlD(command);
    }
@@ -611,4 +620,34 @@
        return false;
    }
    private boolean rgvControlD(RgvCommand command){
        if (command.getRgvNo() == null) {
            throw new CoolException("请选择RGV");
        }
        for (RgvSlave rgv : slaveProperties.getRgv()) {
            // 获取RGV信息
            if (command.getRgvNo().equals(rgv.getId())) {
//                SiemensRgvThread rgvThread = (SiemensRgvThread) SlaveConnection.get(SlaveType.Rgv, rgv.getId());
//                if (rgvThread == null) {
//                    throw new CoolException("RGV不在线");
//                }
//                RgvProtocol rgvProtocol = rgvThread.getRgvProtocol();
//                if (rgvProtocol == null) {
//                    throw new CoolException("RGV不在线");
//                }
                try{
                    if (MessageQueue.offer(SlaveType.Rgv, rgv.getId(), new Task(11, command))) {
                        return true;
                    } else {
                        throw new CoolException("命令下发失败");
                    }
                }catch (Exception e){
                    log.error("单步任务下发失败,异常:"+e);
                    throw new CoolException("命令下发失败");
                }
            }
        }
        return false;
    }
}