diff --git a/ruoyi-modules/guoyan-platform/src/main/java/org/dromara/platform/controller/InspectionPlanInfoController.java b/ruoyi-modules/guoyan-platform/src/main/java/org/dromara/platform/controller/InspectionPlanInfoController.java index 7bc4f5d..e395e91 100644 --- a/ruoyi-modules/guoyan-platform/src/main/java/org/dromara/platform/controller/InspectionPlanInfoController.java +++ b/ruoyi-modules/guoyan-platform/src/main/java/org/dromara/platform/controller/InspectionPlanInfoController.java @@ -8,6 +8,7 @@ import jakarta.servlet.http.HttpServletResponse; import jakarta.validation.constraints.*; import cn.dev33.satoken.annotation.SaCheckPermission; import org.apache.ibatis.annotations.Param; +import org.dromara.platform.domain.AgreementInfo; import org.dromara.platform.domain.vo.ioCompanySelectVo; import org.springframework.web.bind.annotation.*; import org.springframework.validation.annotation.Validated; @@ -124,4 +125,11 @@ public class InspectionPlanInfoController extends BaseController { Set rs = inspectionPlanInfoService.getIoCompanyNames(); return R.ok(rs); } + + @SaCheckPermission("platform:inspectPlanInfo:findLeafNodeInfos") + @GetMapping("/findLeafNodeInfos") + public R> findLeafNodeInfos( @Param("categoryId") String categoryId) { + List rs = inspectionPlanInfoService.findLeafNodeInfos(categoryId); + return R.ok(rs); + } } diff --git a/ruoyi-modules/guoyan-platform/src/main/java/org/dromara/platform/service/IInspectionPlanInfoService.java b/ruoyi-modules/guoyan-platform/src/main/java/org/dromara/platform/service/IInspectionPlanInfoService.java index 98d816c..91f5a6a 100644 --- a/ruoyi-modules/guoyan-platform/src/main/java/org/dromara/platform/service/IInspectionPlanInfoService.java +++ b/ruoyi-modules/guoyan-platform/src/main/java/org/dromara/platform/service/IInspectionPlanInfoService.java @@ -1,5 +1,6 @@ package org.dromara.platform.service; +import org.dromara.platform.domain.AgreementInfo; import org.dromara.platform.domain.vo.InspectionPlanInfoVo; import org.dromara.platform.domain.bo.InspectionPlanInfoBo; import org.dromara.common.mybatis.core.page.TableDataInfo; @@ -75,4 +76,12 @@ public interface IInspectionPlanInfoService { * @return */ Set getIoCompanyNames(); + + + /** + * 获取服务目录下,服务小类的全部信息 + * @param categoryId + * @return + */ + List findLeafNodeInfos(String categoryId); } diff --git a/ruoyi-modules/guoyan-platform/src/main/java/org/dromara/platform/service/impl/InspectionPlanInfoServiceImpl.java b/ruoyi-modules/guoyan-platform/src/main/java/org/dromara/platform/service/impl/InspectionPlanInfoServiceImpl.java index 6df2ec6..bb0e126 100644 --- a/ruoyi-modules/guoyan-platform/src/main/java/org/dromara/platform/service/impl/InspectionPlanInfoServiceImpl.java +++ b/ruoyi-modules/guoyan-platform/src/main/java/org/dromara/platform/service/impl/InspectionPlanInfoServiceImpl.java @@ -224,4 +224,25 @@ public class InspectionPlanInfoServiceImpl implements IInspectionPlanInfoService } return new HashSet<>(); } + + @Override + public List findLeafNodeInfos(String categoryId) { + // 初始化待新增的协议信息集合 + List agreementInfos = new ArrayList<>(); + // 根据服务目录最外层id获取到所有服务最里层id + List agreementInfoDtoList = serviceCatalogCategoryService.findLeafNodeIds(categoryId); + // 将id收集放入新的集合 + List leafNodeIds =agreementInfoDtoList.stream() + .map(AgreementInfoDto::getId) + .collect(Collectors.toList()); + + for (String leafNodeId : leafNodeIds) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(AgreementInfo::getServiceCategoryId, leafNodeId); + List infoList = agreementInfoMapper.selectList(queryWrapper); + agreementInfos.addAll(infoList); + + } + return agreementInfos; + } }