From 490bceb5d9e911a5c4f687dd6570b6699ca11915 Mon Sep 17 00:00:00 2001 From: Administrator <15274802129@163.com> Date: Tue, 16 Sep 2025 17:27:11 +0800 Subject: [PATCH] feat(ai): 添加会员角色知识点配置功能 --- src/main/java/cc/mrbird/febs/ai/service/impl/AiProductServiceImpl.java | 55 ++++++++++++++++++++++++++++++++++++++++++++++--------- 1 files changed, 46 insertions(+), 9 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 9ac7ab2..3135b2e 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,10 +3,7 @@ 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.AiProductRoleLinkService; -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; @@ -43,6 +40,7 @@ private final AiProductCategoryService aiProductCategoryService; private final AiProductPointLinkService aiProductPointLinkService; private final AiProductRoleLinkService aiProductRoleLinkService; + private final AiProductQuestionLinkService aiProductQuestionLinkService; @Override public AiProduct getById(String id) { @@ -56,6 +54,9 @@ LambdaQueryWrapper<AiProduct> query = Wrappers.lambdaQuery(AiProduct.class); if (StrUtil.isNotEmpty(dto.getProductCategoryId())){ query.eq(AiProduct::getProductCategoryId, dto.getProductCategoryId()); + } + if (StrUtil.isNotEmpty(dto.getCompanyId())){ + query.eq(AiProduct::getCompanyId, dto.getCompanyId()); } query.ne(AiProduct::getState, 2); query.orderByDesc(AiProduct::getHotState); @@ -160,11 +161,13 @@ } @Override - public List<AiProduct> selectList() { - return aiProductMapper.selectList( - Wrappers.lambdaQuery(AiProduct.class) - .ne(AiProduct::getState, 2) - ); + public List<AiProduct> selectList(String companyId) { + LambdaQueryWrapper<AiProduct> query = Wrappers.lambdaQuery(AiProduct.class); + if (StrUtil.isNotEmpty(companyId)){ + query.eq(AiProduct::getCompanyId, companyId); + } + query.ne(AiProduct::getState, 2); + return aiProductMapper.selectList(query); } @Override @@ -174,15 +177,18 @@ List<String> chooseIds = dto.getChooseIds(); AiProduct aiProduct = this.getById(chooseId); if (ObjectUtil.isNotNull(aiProduct)) { + String companyId = aiProduct.getCompanyId(); aiProductPointLinkService.deleteByQuery( Wrappers.lambdaQuery(AiProductPointLink.class) .eq(AiProductPointLink::getProductId,chooseId) + .eq(AiProductPointLink::getCompanyId,companyId) ); if(CollUtil.isNotEmpty(chooseIds)){ Date createdTime = new Date(); for (String item : chooseIds){ AiProductPointLink entity = new AiProductPointLink(); entity.setId(UUID.getSimpleUUIDString()); + entity.setCompanyId(companyId); entity.setProductId(chooseId); entity.setProductPointId(item); entity.setCreatedTime(createdTime); @@ -200,15 +206,18 @@ List<String> chooseIds = dto.getChooseIds(); AiProduct aiProduct = this.getById(chooseId); if (ObjectUtil.isNotNull(aiProduct)) { + String companyId = aiProduct.getCompanyId(); aiProductRoleLinkService.deleteByQuery( Wrappers.lambdaQuery(AiProductRoleLink.class) .eq(AiProductRoleLink::getProductId,chooseId) + .eq(AiProductRoleLink::getCompanyId,companyId) ); if(CollUtil.isNotEmpty(chooseIds)){ Date createdTime = new Date(); for (String item : chooseIds){ AiProductRoleLink entity = new AiProductRoleLink(); entity.setId(UUID.getSimpleUUIDString()); + entity.setCompanyId(companyId); entity.setProductId(chooseId); entity.setProductRoleId(item); entity.setCreatedTime(createdTime); @@ -218,4 +227,32 @@ } 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)) { + String companyId = aiProduct.getCompanyId(); + aiProductQuestionLinkService.deleteByQuery( + Wrappers.lambdaQuery(AiProductQuestionLink.class) + .eq(AiProductQuestionLink::getProductId,chooseId) + .eq(AiProductQuestionLink::getCompanyId,companyId) + ); + if(CollUtil.isNotEmpty(chooseIds)){ + Date createdTime = new Date(); + for (String item : chooseIds){ + AiProductQuestionLink entity = new AiProductQuestionLink(); + entity.setId(UUID.getSimpleUUIDString()); + entity.setCompanyId(companyId); + entity.setProductId(chooseId); + entity.setProductQuestionId(item); + entity.setCreatedTime(createdTime); + aiProductQuestionLinkService.getBaseMapper().insert(entity); + } + } + } + return new FebsResponse().success().message("操作成功"); + } } -- Gitblit v1.9.1