| | |
| | | vo.setXLocation(crnProtocol.getWalkPos() == 1?"是":"否"); // 走行定位 |
| | | vo.setYLocation(crnProtocol.getLiftPosType().equals(CrnLiftPosType.NONE)?"否":"是"); // 升降定位 |
| | | // vo.setStop(crnProtocol.getCrnError1().controlStop||crnProtocol.getCrnError1().mainStop||crnProtocol.getCrnError1().remoteStop?"是":"否"); // 急停 |
| | | vo.setWarnCode(String.valueOf(crnProtocol.getAlarm1())); // 异常码 |
| | | if (vo.getCrnNo() == 2) { |
| | | vo.setWarnCode(String.valueOf(crnProtocol.getAlarm1()-1000)); // 异常码 |
| | | } else { |
| | | vo.setWarnCode(String.valueOf(crnProtocol.getAlarm1())); // 异常码 |
| | | } |
| | | |
| | | } |
| | | return R.ok().add(list); |
| | | } |
| | |
| | | return crnControl(command)?R.ok():R.error(); |
| | | } |
| | | |
| | | @ManagerAuth(memo = "坐标移动") |
| | | @PostMapping("/operator/coorMove") |
| | | public R crnCoorMove(CrnOperatorParam param){ |
| | | CrnCommand command = new CrnCommand(); |
| | | command.setCrnNo(param.getCrnNo()); // 堆垛机编号 |
| | | command.setTaskNo((short) 0); // 工作号 |
| | | command.setAckFinish((short) 0); // 任务完成确认位 |
| | | command.setTaskMode(CrnTaskModeType.OFFSET_MOVE); // 任务模式 |
| | | command.setSourcePosX(param.getSourceRow()); // 源库位排 |
| | | command.setSourcePosY(param.getSourceBay()); // 源库位列 |
| | | command.setSourcePosZ(param.getSourceLev()); // 源库位层 |
| | | command.setDestinationPosX(param.getRow()); // 目标库位排 |
| | | command.setDestinationPosY(param.getBay()); // 目标库位列 |
| | | command.setDestinationPosZ(param.getLev()); // 目标库位层 |
| | | staNoProcess(param, command); |
| | | return crnControl(command)?R.ok():R.error(); |
| | | } |
| | | // @ManagerAuth(memo = "坐标移动") |
| | | // @PostMapping("/operator/coorMove") |
| | | // public R crnCoorMove(CrnOperatorParam param){ |
| | | // CrnCommand command = new CrnCommand(); |
| | | // command.setCrnNo(param.getCrnNo()); // 堆垛机编号 |
| | | // command.setTaskNo((short) 0); // 工作号 |
| | | // command.setAckFinish((short) 0); // 任务完成确认位 |
| | | // command.setTaskMode(CrnTaskModeType.OFFSET_MOVE); // 任务模式 |
| | | // command.setSourcePosX(param.getSourceRow()); // 源库位排 |
| | | // command.setSourcePosY(param.getSourceBay()); // 源库位列 |
| | | // command.setSourcePosZ(param.getSourceLev()); // 源库位层 |
| | | // command.setDestinationPosX(param.getRow()); // 目标库位排 |
| | | // command.setDestinationPosY(param.getBay()); // 目标库位列 |
| | | // command.setDestinationPosZ(param.getLev()); // 目标库位层 |
| | | // staNoProcess(param, command); |
| | | // return crnControl(command)?R.ok():R.error(); |
| | | // } |
| | | |
| | | @ManagerAuth(memo = "任务完成") |
| | | @PostMapping("/operator/taskComplete") |
| | |
| | | if (crnProtocol == null) { |
| | | throw new CoolException("堆垛机不在线"); |
| | | } |
| | | // 只有出现指定异常才进行复位 |
| | | if (crnProtocol.getCrnError3().leftTakeNoneErr |
| | | || crnProtocol.getCrnError3().rightTakeNoneErr |
| | | || crnProtocol.getCrnError3().leftTakeThenLoadErr |
| | | || crnProtocol.getCrnError3().rightTakeThenLoadErr) { |
| | | CrnCommand command = new CrnCommand(); |
| | | command.setCrnNo(param.getCrnNo()); // 堆垛机编号 |
| | | command.setAckFinish((short) 1); // 任务完成确认位 |
| | | command.setTaskMode(CrnTaskModeType.NONE); // 任务模式 |
| | | // 延时发送 |
| | | Thread.sleep(3000L); |
| | | if (MessageQueue.offer(SlaveType.Crn, crn.getId(), new Task(2, command))) { |
| | | return R.ok(); |
| | | } else { |
| | | throw new CoolException("命令下发失败"); |
| | | } |
| | | CrnCommand crnCommand = new CrnCommand(); |
| | | crnCommand.setCrnNo(crn.getId()); // 堆垛机编号 |
| | | crnCommand.setTaskMode(CrnTaskModeType.CLEAR); |
| | | crnCommand.setAckFinish((short) 0); // 任务完成确认位 |
| | | // 延时发送 |
| | | Thread.sleep(1000L); |
| | | if (MessageQueue.offer(SlaveType.Crn, crn.getId(), new Task(2, crnCommand))) { |
| | | return R.ok(); |
| | | } else { |
| | | throw new CoolException("命令下发失败"); |
| | | } |
| | | |
| | | |
| | | } |
| | | } |
| | | |