From e2a0ea3a333e46b22152d1e90356db4d2cda5f66 Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Mon, 29 Sep 2025 14:03:18 +0800
Subject: [PATCH] feat(ai): 新增阿里云百炼知识库工具类 - 添加 KnowledgeBaseUtil 工具类,封装阿里云百炼知识库操作 - 实现文件上传、知识库创建与更新等核心功能 - 支持文件MD5计算、分类管理、索引任务提交与状态查询 - 集成阿里云百炼SDK依赖,版本为2.5.0 - 提供完整的知识库初始化与文件更新流程示例 - 添加文件解析状态轮询与错误处理机制 - 支持知识库中文档的追加导入与旧文档删除功能

---
 src/main/java/cc/mrbird/febs/ai/service/impl/AiProductQuestionItemServiceImpl.java |   26 ++++++++++++++++++++++++++
 1 files changed, 26 insertions(+), 0 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/ai/service/impl/AiProductQuestionItemServiceImpl.java b/src/main/java/cc/mrbird/febs/ai/service/impl/AiProductQuestionItemServiceImpl.java
index 5f156c3..f4646f0 100644
--- a/src/main/java/cc/mrbird/febs/ai/service/impl/AiProductQuestionItemServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/ai/service/impl/AiProductQuestionItemServiceImpl.java
@@ -3,10 +3,17 @@
 import cc.mrbird.febs.ai.entity.AiProductQuestionItem;
 import cc.mrbird.febs.ai.mapper.AiProductQuestionItemMapper;
 import cc.mrbird.febs.ai.service.AiProductQuestionItemService;
+import cn.hutool.core.collection.CollUtil;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import lombok.RequiredArgsConstructor;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
+
+import java.util.List;
+import java.util.Set;
+import java.util.stream.Collectors;
 
 /**
  * AI产品题目子表 Service实现类
@@ -19,4 +26,23 @@
 @Transactional
 public class AiProductQuestionItemServiceImpl extends ServiceImpl<AiProductQuestionItemMapper, AiProductQuestionItem> implements AiProductQuestionItemService {
 
+    private final AiProductQuestionItemMapper aiProductQuestionItemMapper;
+
+
+    @Override
+    public List<AiProductQuestionItem> getListByQuery(LambdaQueryWrapper<AiProductQuestionItem> query) {
+        return aiProductQuestionItemMapper.selectList( query);
+    }
+
+    @Override
+    public void deleteByQuestionId(String id) {
+        LambdaQueryWrapper<AiProductQuestionItem> query = Wrappers.lambdaQuery(AiProductQuestionItem.class);
+        query.eq(AiProductQuestionItem::getProductQuestionId, id);
+
+        List<AiProductQuestionItem> listByQuery = this.getListByQuery(query);
+        if(CollUtil.isNotEmpty(listByQuery)){
+            Set<String> collect = listByQuery.stream().map(AiProductQuestionItem::getId).collect(Collectors.toSet());
+            this.removeByIds(collect);
+        }
+    }
 }

--
Gitblit v1.9.1