| | |
| | | continue; |
| | | } |
| | | found = true; |
| | | Integer clearedTaskNo = item.getTaskNo(); |
| | | if (!zyStationConnectDriver.clearTaskBufferSlot(stationId, item.getSlotIdx())) { |
| | | success = false; |
| | | log.warn("输送站缓存区残留路径清理失败。stationId={}, slotIdx={}, taskNo={}", |
| | | stationId, item.getSlotIdx(), item.getTaskNo()); |
| | | stationId, item.getSlotIdx(), clearedTaskNo); |
| | | continue; |
| | | }else { |
| | | item.setTaskNo(0); |
| | | item.setTargetStaNo(0); |
| | | success = true; |
| | | log.warn("输送站缓存区残留路径清理成功。stationId={}, slotIdx={}, taskNo={}", |
| | | stationId, item.getSlotIdx(), item.getTaskNo()); |
| | | } |
| | | item.setTaskNo(0); |
| | | item.setTargetStaNo(0); |
| | | log.warn("输送站缓存区残留路径清理成功。stationId={}, slotIdx={}, taskNo={}", |
| | | stationId, item.getSlotIdx(), clearedTaskNo); |
| | | } |
| | | } |
| | | return found && success; |
| | | } |
| | | |
| | | @Override |
| | | public boolean clearPathByStationSlot(Integer stationId, Integer slotIdx) { |
| | | if (stationId == null || slotIdx == null || zyStationConnectDriver == null) { |
| | | return false; |
| | | } |
| | | List<StationProtocol> status = getStatus(); |
| | | if (status == null || status.isEmpty()) { |
| | | return false; |
| | | } |
| | | |
| | | for (StationProtocol stationProtocol : status) { |
| | | if (stationProtocol == null || !Objects.equals(stationId, stationProtocol.getStationId())) { |
| | | continue; |
| | | } |
| | | if (!zyStationConnectDriver.clearTaskBufferSlot(stationId, slotIdx)) { |
| | | log.warn("输送站缓存区残留路径按站点槽位清理失败。stationId={}, slotIdx={}", stationId, slotIdx); |
| | | return false; |
| | | } |
| | | List<StationTaskBufferItem> taskBufferItems = stationProtocol.getTaskBufferItems(); |
| | | if (taskBufferItems != null) { |
| | | for (StationTaskBufferItem item : taskBufferItems) { |
| | | if (item != null && Objects.equals(slotIdx, item.getSlotIdx())) { |
| | | item.setTaskNo(0); |
| | | item.setTargetStaNo(0); |
| | | break; |
| | | } |
| | | } |
| | | } |
| | | log.warn("输送站缓存区残留路径按站点槽位清理成功。stationId={}, slotIdx={}", stationId, slotIdx); |
| | | return true; |
| | | } |
| | | return false; |
| | | } |
| | | |
| | | @Override |
| | | public CommandResponse sendCommand(StationCommand command) { |
| | | CommandResponse commandResponse = null; |
| | | try { |