From 49400da0804fd0ab56056fbd0a2c9ee36cd091b6 Mon Sep 17 00:00:00 2001 From: Administrator <15274802129@163.com> Date: Mon, 15 Sep 2025 16:22:55 +0800 Subject: [PATCH] feat(ai): 增加公司 ID 筛选功能 --- src/main/java/cc/mrbird/febs/ai/controller/product/ViewController.java | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 51 insertions(+), 2 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 6a43ac0..fea3805 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 @@ -37,6 +37,8 @@ private final AiProductPointLinkService aiProductPointLinkService; private final AiProductPointService aiProductPointService; private final AiProductRoleLinkService aiProductRoleLinkService; + private final AiProductQuestionLinkService aiProductQuestionLinkService; + private final AiProductQuestionService aiProductQuestionService; private final AiProductRoleService aiProductRoleService; @GetMapping("list") @@ -70,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)){ @@ -83,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 -> { @@ -110,11 +114,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)){ @@ -123,7 +129,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 -> { @@ -140,4 +146,47 @@ model.addAttribute("chooseId", id); return FebsUtil.view("modules/ai/product/productRoleSet"); } + + + + @GetMapping("productQuestionSet/{id}") + @RequiresPermissions("productList:productQuestionSet") + public String productQuestionSet(@PathVariable String id, Model model) { + List<AdminMoveChooseInfoVo> vos = new ArrayList<>(); + Set<String> productIds = new HashSet<>(); + + AiProduct entity = aiProductService.getById(id); + if(ObjectUtil.isNotNull(entity)){ + //右侧数据 + LambdaQueryWrapper<AiProductQuestionLink> query = Wrappers.lambdaQuery(AiProductQuestionLink.class); + if(StrUtil.isNotEmpty(id)){ + query.eq(AiProductQuestionLink::getProductId, id); + } + List<AiProductQuestionLink> selectedList = aiProductQuestionLinkService.selectListByQuery(query); + if(CollUtil.isNotEmpty(selectedList)){ + //stream流操作happyMemberLabelRecords,获取memberId的set集合 + productIds = selectedList.stream().map(AiProductQuestionLink::getProductQuestionId).collect(Collectors.toSet()); + } + + //左侧数据 + LambdaQueryWrapper<AiProductQuestion> aiProductQuestionLambdaQueryWrapper = Wrappers.lambdaQuery(AiProductQuestion.class); + aiProductQuestionLambdaQueryWrapper.eq(AiProductQuestion::getProductCategoryId, entity.getProductCategoryId()); + aiProductQuestionLambdaQueryWrapper.eq(AiProductQuestion::getState, 1); + List<AiProductQuestion> allList = aiProductQuestionService.productQuestionTree(aiProductQuestionLambdaQueryWrapper); + if(CollUtil.isNotEmpty(allList)){ + //stream流操作mallMembers,生成一个新的List<MallMemberVo> + vos = allList.stream().map(AiProductQuestion -> { + AdminMoveChooseInfoVo vo = new AdminMoveChooseInfoVo(); + vo.setId(AiProductQuestion.getId()); + vo.setName(AiProductQuestion.getTitle()); + return vo; + }).collect(Collectors.toList()); + } + } + + model.addAttribute("productQuestionAll", vos); + model.addAttribute("productQuestionSelected", productIds); + model.addAttribute("chooseId", id); + return FebsUtil.view("modules/ai/product/productQuestionSet"); + } } -- Gitblit v1.9.1