guyue
3 天以前 a7c9ed23a07e22b525942d989eb8a159f2a4f130
src/main/java/com/linghu/controller/CollectController.java
@@ -469,7 +469,9 @@
                keywordService.updateById(keyword);
                //更新提问词状态为取消
                questionService.update(new LambdaUpdateWrapper<Question>().eq(Question::getKeyword_id, keywordId).isNull(Question::getResponse).set(Question::getStatus, "cancelled"));
                questionService.update(new LambdaUpdateWrapper<Question>().eq(Question::getKeyword_id, keywordId).isNull(Question::getResponse).set(Question::getStatus, "cancelled").set(Question::getError, "任务已取消"));
//        将所有提问词设置eroor为已取消
//                questionService.update(new LambdaUpdateWrapper<Question>().eq(Question::getKeyword_id, keywordId).set(Question::getStatus, "failed").set(Question::getError, "任务已取消"));
                // 更新订单状态
                String orderId = keyword.getOrder_id();
@@ -1209,6 +1211,7 @@
                    .findFirst();
            Reference finalRef = existingRef.orElse(validRefGroup.get(0));
// 重复次数 = 老的 + (这一组里一共抓到多少-1)
            int repetitionNum = (finalRef.getRepetition_num() == null ? 1 : finalRef.getRepetition_num())
                    + (validRefGroup.size() - 1);
            finalRef.setRepetition_num(repetitionNum);
@@ -1247,7 +1250,7 @@
            log.warn("引用核心字段为空,跳过映射:{}", ref);
            return;
        }
        String key = ref.getTitle() + "|" + ref.getUrl() + "|" + ref.getDomain();
        String key = ref.getQuestion_id() + "|" + ref.getTitle() + "|" + ref.getUrl() + "|" + ref.getDomain() + "|"  + ref.getNum();
        map.computeIfAbsent(key, k -> new ArrayList<>()).add(ref);
    }
@@ -1315,6 +1318,11 @@
            } else if (userResult.getError().contains("信息错误")) {
                userWrapper.set(User::getStatus, "信息错误");
                userService.update(userWrapper);
                // 批量更新问题状态为失败
                questionService.update(new LambdaUpdateWrapper<Question>()
                        .eq(Question::getKeyword_id, keyword.getKeyword_id())
                        .set(Question::getStatus, "failed")
                        .set(Question::getError, "账户信息错误"));
            }
        }
    }