From ceab656e93edafbdaa0d908a2f723336af811b5a Mon Sep 17 00:00:00 2001 From: skyouc <958836976@qq.com> Date: 星期三, 03 九月 2025 12:47:23 +0800 Subject: [PATCH] 站点任务功能优化 --- rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/AutoRunSchedules.java | 35 ++++++++++++----------------------- 1 files changed, 12 insertions(+), 23 deletions(-) diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/AutoRunSchedules.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/AutoRunSchedules.java index 01fdedd..b7c426b 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/AutoRunSchedules.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/AutoRunSchedules.java @@ -25,6 +25,7 @@ import org.springframework.transaction.annotation.Transactional; import java.util.*; +import java.util.stream.Collectors; import static com.vincent.rsf.server.system.utils.SystemAuthUtils.getLoginUserId; @@ -101,6 +102,7 @@ * @version 1.0 */ @Scheduled(cron = "0/35 * * * * ?") + @Transactional(rollbackFor = Exception.class) public void autoCheckComplete() { Boolean autoRunArea = configService.getVal("AUTO_RUN_CHECK_ORDERS", Boolean.class); if (!autoRunArea) { @@ -110,32 +112,16 @@ List<Task> tasks = taskService.list(new LambdaQueryWrapper<Task>() .in(Task::getTaskType, Arrays.asList(TaskType.TASK_TYPE_CHECK_OUT.type, TaskType.TASK_TYPE_CHECK_IN.type))); - if (tasks.size() >= 5) { - return; - } if (!tasks.isEmpty()) { tasks.forEach(task -> { if (task.getTaskType().equals(TaskType.TASK_TYPE_CHECK_IN.type)) { if (task.getTaskStatus().equals(TaskStsType.COMPLETE_IN.id)) { - if (!stationService.update(new LambdaUpdateWrapper<BasStation>() - .eq(BasStation::getStationName, task.getOrgSite()) - .set(BasStation::getUseStatus, LocStsType.LOC_STS_TYPE_O.type))) { - throw new CoolException("绔欑偣鐘舵�佷慨鏀瑰け璐ワ紒锛�"); - } + } } else { - //鍒涘缓鍑哄簱浠诲姟鐘舵�� -// if (task.getTaskStatus().equals(TaskStsType.WCS_EXECUTE_OUT.id)) { -// task.setTaskStatus(TaskStsType.COMPLETE_OUT.id); -// if (!taskService.updateById(task)) { -// throw new CoolException("鐩樼偣鍑哄簱浠诲姟瀹屾垚澶辫触锛侊紒"); -// } -// //鍑哄簱宸插畬鎴愶紝绛夊緟鐩樼偣涓� -// } else - if (task.getTaskStatus().equals(TaskStsType.WAVE_SEED.id)) { if (!stationService.update(new LambdaUpdateWrapper<BasStation>() - .eq(BasStation::getStationName, task.getOrgSite()) + .eq(BasStation::getStationName, task.getTargSite()) .set(BasStation::getUseStatus, LocStsType.LOC_STS_TYPE_F.type))) { throw new CoolException("绔欑偣鐘舵�佷慨鏀瑰け璐ワ紒锛�"); } @@ -143,12 +129,12 @@ taskService.pickOrCheckTask(task.getId(), Constants.TASK_TYPE_OUT_CHECK); if (!stationService.update(new LambdaUpdateWrapper<BasStation>() - .eq(BasStation::getStationName, task.getOrgSite()) + .eq(BasStation::getStationName, task.getTargSite()) .set(BasStation::getUseStatus, LocStsType.LOC_STS_TYPE_R.type))) { throw new CoolException("绔欑偣鐘舵�佷慨鏀瑰け璐ワ紒锛�"); } } catch (Exception e) { - throw new CoolException(e.getMessage()); + log.error("error====>", e); } } } @@ -160,7 +146,7 @@ /** * @author Ryan * @date 2025/9/1 - * @description: 鑷姩瀹屾垚鐩樼偣鍔熻兘 + * @description: 鑷姩鐢熸垚浠诲姟 * @version 1.0 */ @Scheduled(cron = "0/25 * * * * ?") @@ -218,12 +204,15 @@ locItems.forEach(locItem -> { locItem.setOutQty(locItem.getAnfme()); }); - List<BasStation> stations = stationService.list(new LambdaQueryWrapper<BasStation>().eq(BasStation::getUseStatus, LocStsType.LOC_STS_TYPE_O.type)); + List<BasStation> stations = stationService.list(new LambdaQueryWrapper<BasStation>() + .eq(BasStation::getStatus, 1) + .eq(BasStation::getUseStatus, LocStsType.LOC_STS_TYPE_O.type)); + List<String> stationNames = stations.stream().map(BasStation::getStationName).collect(Collectors.toList()); if (Cools.isEmpty(stations)) { throw new CoolException("鏃犲彲鐢ㄧ珯鐐癸紒锛�"); } DeviceSite deviceSite = deviceSiteService.getOne(new LambdaQueryWrapper<DeviceSite>() - .in(DeviceSite::getSite, stations) + .in(DeviceSite::getSite, stationNames) .eq(DeviceSite::getType, TaskType.TASK_TYPE_CHECK_OUT.type), false); if (Cools.isEmpty(deviceSite)) { throw new CoolException("鏃犲彲鐢ㄨ矾寰勶紒锛�"); -- Gitblit v1.9.1