From 4bfe57af40d98331721124837950c4329ad12baf Mon Sep 17 00:00:00 2001 From: Administrator <15274802129@163.com> Date: Mon, 15 Sep 2025 15:07:03 +0800 Subject: [PATCH] feat(ai): 增加公司 ID 筛选功能 --- src/main/java/cc/mrbird/febs/ai/service/impl/AiProductServiceImpl.java | 63 +++++++++++++++++++++++++++++-- 1 files changed, 58 insertions(+), 5 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/ai/service/impl/AiProductServiceImpl.java b/src/main/java/cc/mrbird/febs/ai/service/impl/AiProductServiceImpl.java index a67e99d..51e1572 100644 --- a/src/main/java/cc/mrbird/febs/ai/service/impl/AiProductServiceImpl.java +++ b/src/main/java/cc/mrbird/febs/ai/service/impl/AiProductServiceImpl.java @@ -3,14 +3,13 @@ import cc.mrbird.febs.ai.entity.*; import cc.mrbird.febs.ai.mapper.AiProductMapper; import cc.mrbird.febs.ai.req.AdminMoveChooseInfoDto; -import cc.mrbird.febs.ai.service.AiProductCategoryService; -import cc.mrbird.febs.ai.service.AiProductPointLinkService; -import cc.mrbird.febs.ai.service.AiProductService; +import cc.mrbird.febs.ai.service.*; import cc.mrbird.febs.ai.util.UUID; import cc.mrbird.febs.common.entity.FebsResponse; import cc.mrbird.febs.common.entity.QueryRequest; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.Wrappers; @@ -40,6 +39,8 @@ private final AiProductMapper aiProductMapper; private final AiProductCategoryService aiProductCategoryService; private final AiProductPointLinkService aiProductPointLinkService; + private final AiProductRoleLinkService aiProductRoleLinkService; + private final AiProductQuestionLinkService aiProductQuestionLinkService; @Override public AiProduct getById(String id) { @@ -51,7 +52,7 @@ Page<AiProduct> page = new Page<>(request.getPageNum(), request.getPageSize()); LambdaQueryWrapper<AiProduct> query = Wrappers.lambdaQuery(AiProduct.class); - if (ObjectUtil.isNotNull(dto.getProductCategoryId())){ + if (StrUtil.isNotEmpty(dto.getProductCategoryId())){ query.eq(AiProduct::getProductCategoryId, dto.getProductCategoryId()); } query.ne(AiProduct::getState, 2); @@ -157,9 +158,10 @@ } @Override - public List<AiProduct> selectList() { + public List<AiProduct> selectList(String companyId) { return aiProductMapper.selectList( Wrappers.lambdaQuery(AiProduct.class) + .eq(AiProduct::getCompanyId, companyId) .ne(AiProduct::getState, 2) ); } @@ -189,4 +191,55 @@ } return new FebsResponse().success().message("操作成功"); } + + @Override + public FebsResponse productRoleSet(AdminMoveChooseInfoDto dto) { + + String chooseId = dto.getChooseId(); + List<String> chooseIds = dto.getChooseIds(); + AiProduct aiProduct = this.getById(chooseId); + if (ObjectUtil.isNotNull(aiProduct)) { + aiProductRoleLinkService.deleteByQuery( + Wrappers.lambdaQuery(AiProductRoleLink.class) + .eq(AiProductRoleLink::getProductId,chooseId) + ); + if(CollUtil.isNotEmpty(chooseIds)){ + Date createdTime = new Date(); + for (String item : chooseIds){ + AiProductRoleLink entity = new AiProductRoleLink(); + entity.setId(UUID.getSimpleUUIDString()); + entity.setProductId(chooseId); + entity.setProductRoleId(item); + entity.setCreatedTime(createdTime); + aiProductRoleLinkService.getBaseMapper().insert(entity); + } + } + } + return new FebsResponse().success().message("操作成功"); + } + + @Override + public FebsResponse productQuestionSet(AdminMoveChooseInfoDto dto) { + String chooseId = dto.getChooseId(); + List<String> chooseIds = dto.getChooseIds(); + AiProduct aiProduct = this.getById(chooseId); + if (ObjectUtil.isNotNull(aiProduct)) { + aiProductQuestionLinkService.deleteByQuery( + Wrappers.lambdaQuery(AiProductQuestionLink.class) + .eq(AiProductQuestionLink::getProductId,chooseId) + ); + if(CollUtil.isNotEmpty(chooseIds)){ + Date createdTime = new Date(); + for (String item : chooseIds){ + AiProductQuestionLink entity = new AiProductQuestionLink(); + entity.setId(UUID.getSimpleUUIDString()); + entity.setProductId(chooseId); + entity.setProductQuestionId(item); + entity.setCreatedTime(createdTime); + aiProductQuestionLinkService.getBaseMapper().insert(entity); + } + } + } + return new FebsResponse().success().message("操作成功"); + } } -- Gitblit v1.9.1