From 49bd9c9fdb6f6ccb35a9657bd2ac03d5a521a82d Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Tue, 10 Feb 2026 17:42:04 +0800
Subject: [PATCH] feat(ai): 添加产品要点排序功能
---
src/main/java/cc/mrbird/febs/ai/service/impl/AiProductQuestionServiceImpl.java | 35 ++++++++++++++++++++++++++++++++---
1 files changed, 32 insertions(+), 3 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/ai/service/impl/AiProductQuestionServiceImpl.java b/src/main/java/cc/mrbird/febs/ai/service/impl/AiProductQuestionServiceImpl.java
index 939d015..ad48fa6 100644
--- a/src/main/java/cc/mrbird/febs/ai/service/impl/AiProductQuestionServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/ai/service/impl/AiProductQuestionServiceImpl.java
@@ -4,6 +4,7 @@
import cc.mrbird.febs.ai.mapper.AiProductQuestionJobMapper;
import cc.mrbird.febs.ai.mapper.AiProductQuestionMapper;
import cc.mrbird.febs.ai.req.AiProductQuestionAiDto;
+import cc.mrbird.febs.ai.service.AiProductCategoryService;
import cc.mrbird.febs.ai.service.AiProductQuestionItemService;
import cc.mrbird.febs.ai.service.AiProductQuestionService;
import cc.mrbird.febs.ai.service.AiService;
@@ -48,9 +49,8 @@
import java.io.IOException;
import java.io.OutputStream;
import java.net.URLEncoder;
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
+import java.util.*;
+import java.util.stream.Collectors;
/**
* AI产品题目 Service实现类
@@ -66,6 +66,7 @@
private final AiProductQuestionMapper aiProductQuestionMapper;
private final AiProductQuestionJobMapper aiProductQuestionJobMapper;
private final AiProductQuestionItemService aiProductQuestionItemService;
+ private final AiProductCategoryService aiProductCategoryService;
private final AiService aiService;
private final AgentProducer agentProducer;
@@ -88,6 +89,20 @@
query.ne(AiProductQuestion::getState, 2);
query.orderByDesc(AiProductQuestion::getCreatedTime);
Page<AiProductQuestion> pages = aiProductQuestionMapper.selectPage(page, query);
+ List<AiProductQuestion> records = pages.getRecords();
+ if (CollUtil.isNotEmpty( records)){
+ //stream流操作records,获取全部的productCategoryId的set集合
+ Set<String> productCategoryIds = records.stream().map(AiProductQuestion::getProductCategoryId).collect(Collectors.toSet());
+ if(CollUtil.isNotEmpty( productCategoryIds)){
+ Map<String,AiProductCategory> map = aiProductCategoryService.selectMapByIds(productCategoryIds);
+ for (AiProductQuestion record : records){
+ AiProductCategory orDefault = map.getOrDefault(record.getProductCategoryId(), null);
+ if(ObjectUtil.isNotNull(orDefault)){
+ record.setProductCategoryName(orDefault.getName());
+ }
+ }
+ }
+ }
return pages;
}
@@ -625,4 +640,18 @@
}
+ @Override
+ public FebsResponse updateLabel(String ids, String label) {
+ if (StrUtil.isEmpty(ids)) {
+ throw new FebsException("参数错误");
+ }
+ List<String> idList = StrUtil.split(ids, ',');
+ this.update(null,
+ Wrappers.lambdaUpdate(AiProductQuestion.class)
+ .set(AiProductQuestion::getLabel, label)
+ .set(AiProductQuestion::getUpdatedTime, new Date())
+ .in(AiProductQuestion::getId, idList));
+ return new FebsResponse().success().message("操作成功");
+ }
+
}
--
Gitblit v1.9.1