Administrator
1 days ago 49400da0804fd0ab56056fbd0a2c9ee36cd091b6
feat(ai): 增加公司 ID 筛选功能

- 在 AiProductPointController 中添加公司 ID 筛选
- 更新 AiProductPointService 接口,为 pointTree 方法添加公司 ID 参数
- 修改 AiProductPointServiceImpl 中的 pointTree 方法,增加公司 ID 筛选
- 更新 ViewController 中的产品点树获取逻辑,按公司 ID 筛选
4 files modified
28 ■■■■ changed files
src/main/java/cc/mrbird/febs/ai/controller/product/ViewController.java 4 ●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/ai/controller/productPoint/AiProductPointController.java 9 ●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/ai/service/AiProductPointService.java 2 ●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/ai/service/impl/AiProductPointServiceImpl.java 13 ●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/ai/controller/product/ViewController.java
@@ -72,11 +72,13 @@
        Set<String> productIds = new HashSet<>();
        AiProduct entity = aiProductService.getById(id);
        String companyId = entity.getCompanyId();
        if(ObjectUtil.isNotNull(entity)){
            //右侧数据
            LambdaQueryWrapper<AiProductPointLink> query = Wrappers.lambdaQuery(AiProductPointLink.class);
            if(StrUtil.isNotEmpty(id)){
                query.eq(AiProductPointLink::getProductId, id);
                query.eq(AiProductPointLink::getCompanyId, companyId);
            }
            List<AiProductPointLink> selectedList = aiProductPointLinkService.selectListByQuery(query);
            if(CollUtil.isNotEmpty(selectedList)){
@@ -85,7 +87,7 @@
            }
            //左侧数据
            List<AiProductPoint> allList = aiProductPointService.pointTree();
            List<AiProductPoint> allList = aiProductPointService.pointTree(companyId);
            if(CollUtil.isNotEmpty(allList)){
                //stream流操作mallMembers,生成一个新的List<MallMemberVo>
                vos = allList.stream().map(AiProductPoint -> {
src/main/java/cc/mrbird/febs/ai/controller/productPoint/AiProductPointController.java
@@ -29,7 +29,8 @@
    @GetMapping("list")
    public FebsResponse list(AiProductPoint dto, QueryRequest request) {
        String companyId = getCurrentUserCompanyId();
        dto.setCompanyId(companyId);
        Map<String, Object> data = getDataTable(service.listInPage(dto, request));
        return new FebsResponse().success().data(data);
    }
@@ -38,6 +39,8 @@
    @ControllerEndpoint(operation = "新增", exceptionMessage = "操作失败")
    public FebsResponse add(@RequestBody @Valid AiProductPoint dto) {
        String companyId = getCurrentUserCompanyId();
        dto.setCompanyId(companyId);
        return service.add(dto);
    }
@@ -60,6 +63,8 @@
    @GetMapping(value = "/pointTree")
    public FebsResponse pointTree() {
        return new FebsResponse().success().data(service.pointTree());
        String companyId = getCurrentUserCompanyId();
        return new FebsResponse().success().data(service.pointTree(companyId));
    }
}
src/main/java/cc/mrbird/febs/ai/service/AiProductPointService.java
@@ -32,6 +32,6 @@
    FebsResponse delete(String id);
    List<AiProductPoint> pointTree();
    List<AiProductPoint> pointTree(String companyId);
}
src/main/java/cc/mrbird/febs/ai/service/impl/AiProductPointServiceImpl.java
@@ -9,6 +9,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 @@
    public IPage<AiProductPoint> listInPage(AiProductPoint dto, QueryRequest request) {
        Page<AiProductPoint> page = new Page<>(request.getPageNum(), request.getPageSize());
        LambdaQueryWrapper<AiProductPoint> query = Wrappers.lambdaQuery(AiProductPoint.class);
        if (StrUtil.isNotEmpty(dto.getCompanyId())){
            query.eq(AiProductPoint::getCompanyId, dto.getCompanyId());
        }
        Page<AiProductPoint> pages = aiProductPointMapper.selectPage(page, query);
        return pages;
    }
@@ -96,9 +100,12 @@
    }
    @Override
    public List<AiProductPoint> pointTree() {
        return aiProductPointMapper.selectList(null);
    public List<AiProductPoint> pointTree(String companyId) {
        LambdaQueryWrapper<AiProductPoint> query = Wrappers.lambdaQuery(AiProductPoint.class);
        if (StrUtil.isNotEmpty(companyId)){
            query.eq(AiProductPoint::getCompanyId, companyId);
        }
        return aiProductPointMapper.selectList(query);
    }