From 646bfdde5c37f0b0d479bbcbc7503bc8482e67d6 Mon Sep 17 00:00:00 2001 From: skyouc Date: 星期一, 30 六月 2025 16:41:00 +0800 Subject: [PATCH] 可针对单个波次进行暂停,开始, 主单添加进度条 --- rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/WaveSchedules.java | 68 ++++++++++++++------------------- 1 files changed, 29 insertions(+), 39 deletions(-) diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/WaveSchedules.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/WaveSchedules.java index a571ee6..198d13d 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/WaveSchedules.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/WaveSchedules.java @@ -25,12 +25,12 @@ import java.util.stream.Collectors; /** -* @author Ryan -* @description 娉㈡瀹氭椂浠诲姟 -* @param -* @return -* @time 2025/6/23 13:49 -*/ + * @param + * @author Ryan + * @description 娉㈡瀹氭椂浠诲姟 + * @return + * @time 2025/6/23 13:49 + */ @Component public class WaveSchedules { @@ -48,12 +48,12 @@ /** - * @author Ryan - * @description 鑷姩涓嬪彂娉㈡浠诲姟 - * @param - * @return - * @time 2025/6/23 13:52 - */ + * @param + * @return + * @author Ryan + * @description 鑷姩涓嬪彂娉㈡浠诲姟 + * @time 2025/6/23 13:52 + */ @Scheduled(cron = "0/15 * * * * ?") // @Transactional(rollbackFor = Exception.class) public void autoGenerateTask() { @@ -61,36 +61,26 @@ if (Objects.isNull(config) || !Boolean.parseBoolean(config.getVal())) { return; } -// List<Wave> list = waveService.list(new LambdaQueryWrapper<Wave>() -// .select(Wave::getId) -// .in(Wave::getExceStatus, WaveExceStatus.WAVE_EXCE_STATUS_INIT.val -// , WaveExceStatus.WAVE_EXCE_STATUS_EXCING.val)); -// if (list.isEmpty()) { -// return; -// } -// List<Long> longs = list.stream().map(Wave::getId).collect(Collectors.toList()); - - List<WaveItem> waveItems = waveItemService.list(new LambdaQueryWrapper<WaveItem>() - .in(WaveItem::getExceStatus, Arrays.asList(WaveItemExceStatus.WAVE_ITEM_EXCE_STATUS_UN.val - , WaveItemExceStatus.WAVE_EXCE_STATUS_ING.val))); - - waveItemService.update(new LambdaUpdateWrapper<WaveItem>() - .set(WaveItem::getExceStatus, WaveItemExceStatus.WAVE_EXCE_STATUS_ING.val) - .apply("anfme > work_qty") - ); - - if (waveItems.isEmpty()) { + List<Wave> list = waveService.list(new LambdaQueryWrapper<Wave>() + .select(Wave::getId) + .in(Wave::getExceStatus, WaveExceStatus.WAVE_EXCE_STATUS_INIT.val + , WaveExceStatus.WAVE_EXCE_STATUS_EXCING.val)); + if (list.isEmpty()) { return; } + + List<Long> longs = list.stream().map(Wave::getId).collect(Collectors.toList()); + + waveItemService.update(new LambdaUpdateWrapper<WaveItem>() + .in(WaveItem::getWaveId, longs) + .set(WaveItem::getExceStatus, WaveExceStatus.WAVE_EXCE_STATUS_EXCING.val) + .apply("anfme > work_qty")); + Long loginUserId = SystemAuthUtils.getLoginUserId(); - Map<Long, List<WaveItem>> listMap = waveItems.stream().collect(Collectors.groupingBy(WaveItem::getWaveId)); - listMap.keySet().forEach(waveId -> { - List<Long> itemIds = listMap.get(waveId).stream().map(WaveItem::getId).collect(Collectors.toList()); - Map<String, Object> params = new HashMap<>(); - params.put("wave", waveId); - params.put("waveItem", itemIds); - waveService.waveToTask(params, loginUserId); - }); + Map<String, Object> params = new HashMap<>(); + params.put("ids", longs); + waveService.waveToTask(params, loginUserId); + } } -- Gitblit v1.9.1