From e4048873355aa30e2f4296d745972158225fddd6 Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Mon, 15 Sep 2025 15:57:06 +0800
Subject: [PATCH] feat(ai): 增加产品角色列表和树状图的公司条件过滤
---
src/main/java/cc/mrbird/febs/ai/service/impl/AiProductRoleServiceImpl.java | 14 +++++++++++---
src/main/java/cc/mrbird/febs/ai/controller/productRole/AiProductRoleController.java | 9 ++++++---
src/main/java/cc/mrbird/febs/ai/controller/product/ViewController.java | 4 +++-
src/main/java/cc/mrbird/febs/ai/service/AiProductRoleService.java | 2 +-
4 files changed, 21 insertions(+), 8 deletions(-)
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 7f874d9..9b71c7c 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
@@ -112,11 +112,13 @@
Set<String> productIds = new HashSet<>();
AiProduct entity = aiProductService.getById(id);
+ String companyId = entity.getCompanyId();
if(ObjectUtil.isNotNull(entity)){
//右侧数据
LambdaQueryWrapper<AiProductRoleLink> query = Wrappers.lambdaQuery(AiProductRoleLink.class);
if(StrUtil.isNotEmpty(id)){
query.eq(AiProductRoleLink::getProductId, id);
+ query.eq(AiProductRoleLink::getCompanyId, companyId);
}
List<AiProductRoleLink> selectedList = aiProductRoleLinkService.selectListByQuery(query);
if(CollUtil.isNotEmpty(selectedList)){
@@ -125,7 +127,7 @@
}
//左侧数据
- List<AiProductRole> allList = aiProductRoleService.productRoleTree();
+ List<AiProductRole> allList = aiProductRoleService.productRoleTree(companyId);
if(CollUtil.isNotEmpty(allList)){
//stream流操作mallMembers,生成一个新的List<MallMemberVo>
vos = allList.stream().map(AiProductRole -> {
diff --git a/src/main/java/cc/mrbird/febs/ai/controller/productRole/AiProductRoleController.java b/src/main/java/cc/mrbird/febs/ai/controller/productRole/AiProductRoleController.java
index c249859..ee99336 100644
--- a/src/main/java/cc/mrbird/febs/ai/controller/productRole/AiProductRoleController.java
+++ b/src/main/java/cc/mrbird/febs/ai/controller/productRole/AiProductRoleController.java
@@ -29,7 +29,8 @@
@GetMapping("list")
public FebsResponse list(AiProductRole dto, QueryRequest request) {
-
+ String companyId = getCurrentUserCompanyId();
+ dto.setCompanyId(companyId);
Map<String, Object> data = getDataTable(aiProductRoleService.listInPage(dto, request));
return new FebsResponse().success().data(data);
}
@@ -38,6 +39,8 @@
@ControllerEndpoint(operation = "新增", exceptionMessage = "操作失败")
public FebsResponse add(@RequestBody @Valid AiProductRole dto) {
+ String companyId = getCurrentUserCompanyId();
+ dto.setCompanyId(companyId);
return aiProductRoleService.add(dto);
}
@@ -59,7 +62,7 @@
@GetMapping(value = "/productRoleTree")
public FebsResponse productRoleTree() {
-
- return new FebsResponse().success().data(aiProductRoleService.productRoleTree());
+ String companyId = getCurrentUserCompanyId();
+ return new FebsResponse().success().data(aiProductRoleService.productRoleTree(companyId));
}
}
diff --git a/src/main/java/cc/mrbird/febs/ai/service/AiProductRoleService.java b/src/main/java/cc/mrbird/febs/ai/service/AiProductRoleService.java
index 073bf52..dddc5d9 100644
--- a/src/main/java/cc/mrbird/febs/ai/service/AiProductRoleService.java
+++ b/src/main/java/cc/mrbird/febs/ai/service/AiProductRoleService.java
@@ -30,5 +30,5 @@
FebsResponse delete(String id);
- List<AiProductRole> productRoleTree();
+ List<AiProductRole> productRoleTree(String companyId);
}
diff --git a/src/main/java/cc/mrbird/febs/ai/service/impl/AiProductRoleServiceImpl.java b/src/main/java/cc/mrbird/febs/ai/service/impl/AiProductRoleServiceImpl.java
index 0f361cb..4d2a6bc 100644
--- a/src/main/java/cc/mrbird/febs/ai/service/impl/AiProductRoleServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/ai/service/impl/AiProductRoleServiceImpl.java
@@ -8,6 +8,7 @@
import cc.mrbird.febs.common.entity.FebsResponse;
import cc.mrbird.febs.common.entity.QueryRequest;
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;
@@ -44,6 +45,9 @@
Page<AiProductRole> page = new Page<>(request.getPageNum(), request.getPageSize());
LambdaQueryWrapper<AiProductRole> query = Wrappers.lambdaQuery(AiProductRole.class);
+ if (StrUtil.isNotEmpty(dto.getCompanyId())){
+ query.eq(AiProductRole::getCompanyId, dto.getCompanyId());
+ }
Page<AiProductRole> pages = aiProductRoleMapper.selectPage(page, query);
return pages;
}
@@ -73,7 +77,6 @@
if (ObjectUtil.isNotNull( entity)){
this.update(null,
Wrappers.lambdaUpdate(AiProductRole.class)
- .set(AiProductRole::getCompanyId, dto.getCompanyId())
.set(AiProductRole::getName, dto.getName())
.set(AiProductRole::getDescription, dto.getDescription())
.set(AiProductRole::getPromptHead, dto.getPromptHead())
@@ -101,8 +104,13 @@
}
@Override
- public List<AiProductRole> productRoleTree() {
- return aiProductRoleMapper.selectList(null);
+ public List<AiProductRole> productRoleTree(String companyId) {
+
+ LambdaQueryWrapper<AiProductRole> query = Wrappers.lambdaQuery(AiProductRole.class);
+ if (StrUtil.isNotEmpty(companyId)){
+ query.eq(AiProductRole::getCompanyId, companyId);
+ }
+ return aiProductRoleMapper.selectList(query);
}
}
--
Gitblit v1.9.1