| | |
| | | * @description: 自动获取已生成盘点任务的盘点列表 |
| | | * @version 1.0 |
| | | */ |
| | | @Scheduled(cron = "0/5 * * * * ?") |
| | | @Scheduled(cron = "0/15 * * * * ?") |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public void genReCheck() { |
| | | List<CheckDiffItem> list = checkDiffItemService.list(new LambdaQueryWrapper<CheckDiffItem>().select(CheckDiffItem::getTaskItemId)); |
| | | List<Task> tasks = taskService.list(new LambdaQueryWrapper<Task>() |
| | | .select(Task::getId) |
| | | .eq(Task::getTaskType, TaskType.TASK_TYPE_CHECK_OUT.type)); |
| | | if (tasks.isEmpty()) { |
| | | return; |
| | | } |
| | | List<CheckDiffItem> list = checkDiffItemService |
| | | .list(new LambdaQueryWrapper<CheckDiffItem>() |
| | | .select(CheckDiffItem::getTaskItemId)); |
| | | if (list.isEmpty()) { |
| | | return; |
| | | } |
| | | Set<Long> taskIds = tasks.stream().map(Task::getId).collect(Collectors.toSet()); |
| | | List<Long> itemIds = list.stream().map(CheckDiffItem::getTaskItemId).collect(Collectors.toList()); |
| | | List<TaskItem> taskItems = taskItemService.list(new LambdaQueryWrapper<TaskItem>().notIn(TaskItem::getId, itemIds)); |
| | | List<TaskItem> taskItems = taskItemService |
| | | .list(new LambdaQueryWrapper<TaskItem>() |
| | | .in(TaskItem::getTaskId, taskIds) |
| | | .notIn(TaskItem::getId, itemIds)); |
| | | if (taskItems.isEmpty()) { |
| | | return; |
| | | } |