From 3b05389a5bcf93ead612761835952699a4b2e302 Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Mon, 15 Sep 2025 16:50:21 +0800
Subject: [PATCH] refactor(ai): 重构产品配置相关功能
---
src/main/java/cc/mrbird/febs/ai/service/impl/AiMemberRoleServiceImpl.java | 2 +-
src/main/java/cc/mrbird/febs/ai/controller/product/ViewController.java | 3 +++
src/main/java/cc/mrbird/febs/ai/controller/memberRole/AiMemberRoleController.java | 2 --
src/main/resources/templates/febs/views/modules/ai/productQuestion/list.html | 4 ++--
src/main/java/cc/mrbird/febs/ai/service/impl/AiProductServiceImpl.java | 12 ++++++++++++
src/main/java/cc/mrbird/febs/ai/req/AdminMoveChooseInfoDto.java | 1 -
src/main/java/cc/mrbird/febs/ai/controller/product/AiProductController.java | 5 ++++-
7 files changed, 22 insertions(+), 7 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/ai/controller/memberRole/AiMemberRoleController.java b/src/main/java/cc/mrbird/febs/ai/controller/memberRole/AiMemberRoleController.java
index 24373ad..5c9d160 100644
--- a/src/main/java/cc/mrbird/febs/ai/controller/memberRole/AiMemberRoleController.java
+++ b/src/main/java/cc/mrbird/febs/ai/controller/memberRole/AiMemberRoleController.java
@@ -75,8 +75,6 @@
@ControllerEndpoint(operation = "产品配置", exceptionMessage = "操作失败")
public FebsResponse productSet(@RequestBody @Valid AdminMoveChooseInfoDto dto) {
- String companyId = getCurrentUserCompanyId();
- dto.setCompanyId(companyId);
return aiMemberRoleService.productSet(dto);
}
}
diff --git a/src/main/java/cc/mrbird/febs/ai/controller/product/AiProductController.java b/src/main/java/cc/mrbird/febs/ai/controller/product/AiProductController.java
index 816ca69..45fd783 100644
--- a/src/main/java/cc/mrbird/febs/ai/controller/product/AiProductController.java
+++ b/src/main/java/cc/mrbird/febs/ai/controller/product/AiProductController.java
@@ -30,7 +30,8 @@
@GetMapping("list")
public FebsResponse list(AiProduct dto, QueryRequest request) {
-
+ String companyId = getCurrentUserCompanyId();
+ dto.setCompanyId(companyId);
Map<String, Object> data = getDataTable(aiProductService.listInPage(dto, request));
return new FebsResponse().success().data(data);
}
@@ -50,6 +51,8 @@
@ControllerEndpoint(operation = "新增", exceptionMessage = "操作失败")
public FebsResponse add(@RequestBody @Valid AiProduct dto) {
+ String companyId = getCurrentUserCompanyId();
+ dto.setCompanyId(companyId);
return aiProductService.add(dto);
}
diff --git a/src/main/java/cc/mrbird/febs/ai/controller/product/ViewController.java b/src/main/java/cc/mrbird/febs/ai/controller/product/ViewController.java
index fea3805..1514d86 100644
--- a/src/main/java/cc/mrbird/febs/ai/controller/product/ViewController.java
+++ b/src/main/java/cc/mrbird/febs/ai/controller/product/ViewController.java
@@ -156,11 +156,13 @@
Set<String> productIds = new HashSet<>();
AiProduct entity = aiProductService.getById(id);
+ String companyId = entity.getCompanyId();
if(ObjectUtil.isNotNull(entity)){
//右侧数据
LambdaQueryWrapper<AiProductQuestionLink> query = Wrappers.lambdaQuery(AiProductQuestionLink.class);
if(StrUtil.isNotEmpty(id)){
query.eq(AiProductQuestionLink::getProductId, id);
+ query.eq(AiProductQuestionLink::getCompanyId, companyId);
}
List<AiProductQuestionLink> selectedList = aiProductQuestionLinkService.selectListByQuery(query);
if(CollUtil.isNotEmpty(selectedList)){
@@ -172,6 +174,7 @@
LambdaQueryWrapper<AiProductQuestion> aiProductQuestionLambdaQueryWrapper = Wrappers.lambdaQuery(AiProductQuestion.class);
aiProductQuestionLambdaQueryWrapper.eq(AiProductQuestion::getProductCategoryId, entity.getProductCategoryId());
aiProductQuestionLambdaQueryWrapper.eq(AiProductQuestion::getState, 1);
+ aiProductQuestionLambdaQueryWrapper.eq(AiProductQuestion::getCompanyId, companyId);
List<AiProductQuestion> allList = aiProductQuestionService.productQuestionTree(aiProductQuestionLambdaQueryWrapper);
if(CollUtil.isNotEmpty(allList)){
//stream流操作mallMembers,生成一个新的List<MallMemberVo>
diff --git a/src/main/java/cc/mrbird/febs/ai/req/AdminMoveChooseInfoDto.java b/src/main/java/cc/mrbird/febs/ai/req/AdminMoveChooseInfoDto.java
index ba3bc79..0c79a18 100644
--- a/src/main/java/cc/mrbird/febs/ai/req/AdminMoveChooseInfoDto.java
+++ b/src/main/java/cc/mrbird/febs/ai/req/AdminMoveChooseInfoDto.java
@@ -8,7 +8,6 @@
public class AdminMoveChooseInfoDto {
private String chooseId;
- private String companyId;
private List<String> chooseIds;
}
diff --git a/src/main/java/cc/mrbird/febs/ai/service/impl/AiMemberRoleServiceImpl.java b/src/main/java/cc/mrbird/febs/ai/service/impl/AiMemberRoleServiceImpl.java
index 388c09c..2151bc3 100644
--- a/src/main/java/cc/mrbird/febs/ai/service/impl/AiMemberRoleServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/ai/service/impl/AiMemberRoleServiceImpl.java
@@ -124,10 +124,10 @@
@Override
public FebsResponse productSet(AdminMoveChooseInfoDto dto) {
String chooseId = dto.getChooseId();
- String companyId = dto.getCompanyId();
List<String> chooseIds = dto.getChooseIds();
AiMemberRole aiMemberRole = this.getById(chooseId);
if (ObjectUtil.isNotNull(aiMemberRole)) {
+ String companyId = aiMemberRole.getCompanyId();
aiMemberRoleProductService.deleteByQuery(
Wrappers.lambdaQuery(AiMemberRoleProduct.class)
.eq(AiMemberRoleProduct::getRoleId,chooseId)
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 51e1572..2a934fb 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
@@ -55,6 +55,9 @@
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);
query.orderByAsc(AiProduct::getSort);
@@ -173,15 +176,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);
@@ -199,15 +205,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);
@@ -224,15 +233,18 @@
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);
diff --git a/src/main/resources/templates/febs/views/modules/ai/productQuestion/list.html b/src/main/resources/templates/febs/views/modules/ai/productQuestion/list.html
index b3b244e..7b8a507 100644
--- a/src/main/resources/templates/febs/views/modules/ai/productQuestion/list.html
+++ b/src/main/resources/templates/febs/views/modules/ai/productQuestion/list.html
@@ -67,9 +67,9 @@
<script type="text/html" id="difficultyFormat">
{{# if(d.difficulty == 1) { }}
<span>简单</span>
- {{# }else if(d.isNormal == 2) { }}
+ {{# }else if(d.difficulty == 2) { }}
<span>中等</span>
- {{# }else if(d.isNormal == 3) { }}
+ {{# }else if(d.difficulty == 3) { }}
<span>困难</span>
{{# } else { }}
<span>-</span>
--
Gitblit v1.9.1