diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/logistics/service/impl/IOrderBoxServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/logistics/service/impl/IOrderBoxServiceImpl.java index 3d083e0c..55184527 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/logistics/service/impl/IOrderBoxServiceImpl.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/logistics/service/impl/IOrderBoxServiceImpl.java @@ -310,9 +310,11 @@ public class IOrderBoxServiceImpl implements IOrderBoxService { if (updateResult) { log.info("【站点状态接收】站点编码{}已置为空闲", stationCode); List taskList = taskService.list(new LambdaQueryWrapper().eq(Task::getStationId, targetStation.getId()).orderByDesc(Task::getUpdateTime)); - BoxBindingDto boxBindingDto = new BoxBindingDto(); - boxBindingDto.setBoxBarcode(taskList.get(0).getBoxBarcode()); - orderBindService.boxUnbind(boxBindingDto); + if (taskList != null && !taskList.isEmpty()) { + BoxBindingDto boxBindingDto = new BoxBindingDto(); + boxBindingDto.setBoxBarcode(taskList.get(0).getBoxBarcode()); + orderBindService.boxUnbind(boxBindingDto); + } return R.success(); } else { log.error("【站点状态接收】站点编码{}状态更新失败", stationCode); @@ -880,8 +882,10 @@ public class IOrderBoxServiceImpl implements IOrderBoxService { // 调度失败:回滚任务 taskService.removeById(task); List stationList = stationService.list(new LambdaQueryWrapper().eq(Station::getId, task.getStationId())); - stationList.get(0).setStationStatus(STATUS_FREE); - stationService.updateById(stationList.get(0)); + if (stationList != null && !stationList.isEmpty()) { + stationList.get(0).setStationStatus(STATUS_FREE); + stationService.updateById(stationList.get(0)); + } log.error("【AGV调度】任务{}调度失败,已回滚", task.getId()); return R.fail("AGV小车调用异常"); } @@ -1077,7 +1081,7 @@ public class IOrderBoxServiceImpl implements IOrderBoxService { new LambdaQueryWrapper().eq(StationCenter::getWcId, wcId) ); - if (stationCenterList != null || stationCenterList.size() > 0) { + if (stationCenterList != null && stationCenterList.size() > 0) { // StationCenter stationCenter = stationCenterList.get(0); // Station station = stationService.getById(stationCenter.getStationId()); List stationIdList = stationCenterList.stream().map(s -> s.getStationId()).toList();