| | |
| | | // keywordTaskService.updateById(taskToUpdate); |
| | | |
| | | |
| | | //设置订单进入采集状态 |
| | | LambdaUpdateWrapper<Orders> updateOrderWrapper = new LambdaUpdateWrapper<>(); |
| | | updateOrderWrapper.eq(Orders::getOrder_id, keyword.getOrder_id()) // 确保字段名正确 |
| | | .set(Orders::getStatus, 2); // 直接设置状态值 |
| | | //所有关键词都在采集中或者已完成或者错误设置订单进入采集状态 |
| | | List<Keyword> orderKeywords = keywordService.list(new LambdaQueryWrapper<Keyword>() |
| | | .eq(Keyword::getOrder_id, keyword.getOrder_id())); |
| | | if (!orderKeywords.isEmpty() && orderKeywords.stream().allMatch(k -> |
| | | "completed".equals(k.getStatus()) || "submitted".equals(k.getStatus()) |
| | | )) { |
| | | Orders orders = orderService.getById(keyword.getOrder_id()); |
| | | if (orders != null) { |
| | | orders.setStatus(2); |
| | | orderService.updateById(orders); |
| | | |
| | | boolean success = orderService.update(updateOrderWrapper); |
| | | log.info("订单状态更新结果: {}", success ? "成功" : "失败"); |
| | | |
| | | } |
| | | } |
| | | }).subscribeOn(Schedulers.boundedElastic()) // 在弹性线程池执行 |
| | | .thenReturn(taskResponse); |
| | | } |
| | |
| | | |
| | | //把任务id为空的删除 |
| | | LambdaUpdateWrapper<KeywordTask> updateWrapper = new LambdaUpdateWrapper<>(); |
| | | updateWrapper.eq(KeywordTask::getKeyword_id, keywordId); |
| | | updateWrapper.isNull(KeywordTask::getTask_id); |
| | | keywordTaskService.remove(updateWrapper); |
| | | // 查询该关键词下的所有任务 |
| | |
| | | keywordService.updateById(keyword); |
| | | // log.info("关键词 {} 所有任务已完成,更新状态为 completed", keywordId); |
| | | // } |
| | | //更新提问词状态为取消 |
| | | |
| | | questionService.update(new LambdaUpdateWrapper<Question>().eq(Question::getKeyword_id, keywordId).set(Question::getStatus, "canceled")); |
| | | |
| | | // 更新订单状态 |
| | | String orderId = keyword.getOrder_id(); |
| | |
| | | |
| | | // 所有关键词均已完成,则更新订单状态为3 |
| | | if (!orderKeywords.isEmpty() && orderKeywords.stream().allMatch(k -> |
| | | "completed".equals(k.getStatus()) || "false".equals(k.getStatus()) || "canceled".equals(k.getStatus()) |
| | | "completed".equals(k.getStatus()) || "false".equals(k.getStatus()) |
| | | )) { |
| | | Orders orders = orderService.getById(orderId); |
| | | if (orders != null) { |
| | | orders.setStatus(3); |
| | | orderService.updateById(orders); |
| | | log.info("订单 {} 所有关键词已完成,更新状态为3", orderId); |
| | | } |
| | | } |
| | | if (!orderKeywords.isEmpty() && orderKeywords.stream().allMatch(k -> |
| | | !"completed".equals(k.getStatus()) || "false".equals(k.getStatus()) || "canceled".equals(k.getStatus()) |
| | | )) { |
| | | Orders orders = orderService.getById(orderId); |
| | | if (orders != null) { |
| | | orders.setStatus(1); |
| | | orderService.updateById(orders); |
| | | log.info("订单 {} 所有关键词已完成或者取消,更新状态为1", orderId); |
| | | } |
| | | } |
| | | } |
| | |
| | | } |
| | | // 3. 检查所有关键词的状态是否均为 completed 或 false |
| | | boolean allValid = orderKeywords.stream() |
| | | .allMatch(k -> "completed".equals(k.getStatus()) || "false".equals(k.getStatus()) || "canceled".equals(k.getStatus())); |
| | | .allMatch(k -> "completed".equals(k.getStatus()) || "false".equals(k.getStatus())); |
| | | |
| | | // 4. 若所有关键词状态均有效,更新订单状态为3 |
| | | if (allValid) { |
| | |
| | | System.out.println("未找到订单[" + orderId + "],无法更新状态"); |
| | | } |
| | | } |
| | | boolean allValid2 = orderKeywords.stream() |
| | | .allMatch(k -> "completed".equals(k.getStatus()) || "false".equals(k.getStatus()) || "canceled".equals(k.getStatus())); |
| | | if (allValid) { |
| | | Orders orders = orderService.getById(orderId); |
| | | if (orders != null) { |
| | | orders.setStatus(1); // 假设Orders有Integer类型的status字段 |
| | | orderService.updateById(orders); |
| | | System.out.println("订单[" + orderId + "]所有关键词采集完成或者取消,已更新状态为1"); |
| | | } else { |
| | | System.out.println("未找到订单[" + orderId + "],无法更新状态"); |
| | | } |
| | | } |
| | | |
| | | Orders orders = orderService.getById(keyword.getOrder_id()); |
| | | |