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/AiProductPointLinkServiceImpl.java |   35 +++++++++++++++++++++++++++++++++++
 1 files changed, 35 insertions(+), 0 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/ai/service/impl/AiProductPointLinkServiceImpl.java b/src/main/java/cc/mrbird/febs/ai/service/impl/AiProductPointLinkServiceImpl.java
index 9818302..682fcec 100644
--- a/src/main/java/cc/mrbird/febs/ai/service/impl/AiProductPointLinkServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/ai/service/impl/AiProductPointLinkServiceImpl.java
@@ -3,10 +3,18 @@
 import cc.mrbird.febs.ai.entity.AiProductPointLink;
 import cc.mrbird.febs.ai.mapper.AiProductPointLinkMapper;
 import cc.mrbird.febs.ai.service.AiProductPointLinkService;
+import cc.mrbird.febs.ai.service.AiProductPointService;
+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;
 
 /**
  * @author Administrator
@@ -16,4 +24,31 @@
 @Transactional
 public class AiProductPointLinkServiceImpl extends ServiceImpl<AiProductPointLinkMapper, AiProductPointLink> implements AiProductPointLinkService {
 
+    private final AiProductPointLinkMapper aiProductPointLinkMapper;
+    @Override
+    public void deleteByProductPointId(String id) {
+        List<AiProductPointLink> aiProductPointLinks = this.selectListByPointId(id);
+        if(CollUtil.isNotEmpty(aiProductPointLinks)){
+            Set<String> collect = aiProductPointLinks.stream().map(AiProductPointLink::getId).collect(Collectors.toSet());
+            aiProductPointLinkMapper.deleteBatchIds(collect);
+        }
+    }
+
+    @Override
+    public List<AiProductPointLink> selectListByPointId(String pointId) {
+        LambdaQueryWrapper<AiProductPointLink> query = Wrappers.lambdaQuery(AiProductPointLink.class);
+        query.eq(AiProductPointLink::getProductPointId, pointId);
+        List<AiProductPointLink> aiProductPointLinks = aiProductPointLinkMapper.selectList(query);
+        return aiProductPointLinks;
+    }
+
+    @Override
+    public List<AiProductPointLink> selectListByQuery(LambdaQueryWrapper<AiProductPointLink> query) {
+        return aiProductPointLinkMapper.selectList( query);
+    }
+
+    @Override
+    public void deleteByQuery(LambdaQueryWrapper<AiProductPointLink> query) {
+        aiProductPointLinkMapper.delete(query);
+    }
 }

--
Gitblit v1.9.1