diff --git a/src/main/java/com/pms/ocp/controller/ApiBasicManagementController.java b/src/main/java/com/pms/ocp/controller/ApiBasicManagementController.java index 6158f5b1fa6eb19eafe0a0a8a8993eb205f75d9c..544b75913bed0d046d9f9ae8419ef4709216f673 100644 --- a/src/main/java/com/pms/ocp/controller/ApiBasicManagementController.java +++ b/src/main/java/com/pms/ocp/controller/ApiBasicManagementController.java @@ -5,6 +5,7 @@ import com.pms.ocp.common.utils.ExcelUtils; import com.pms.ocp.common.utils.FileExport; import com.pms.ocp.common.utils.FileUtil; import com.pms.ocp.model.dto.ApiBaseDto; +import com.pms.ocp.model.dto.OcpGroupBaseDto; import com.pms.ocp.model.entity.OcpApiBase; import com.pms.ocp.model.entity.OcpApiGroup; import com.pms.ocp.model.vo.OcpApiBaseVo; @@ -209,8 +210,8 @@ public class ApiBasicManagementController { @ApiOperation("服务分类层级") @GetMapping("/apiBaseTreeOther") - public ResponseVO> apiBaseTreeOther(String apiGroupCompanyCode, String apiGroupCode, Integer apiGroupPromotionType) { - List apiTreeGroupDtos = apiBasicManagementService.apiBaseTreeOther(apiGroupCompanyCode, apiGroupCode, apiGroupPromotionType); + public ResponseVO> apiBaseTreeOther(String apiGroupCompanyCode, String apiGroupCode, Integer apiGroupPromotionType,String apiCode,String apiPromotion) { + List apiTreeGroupDtos = apiBasicManagementService.apiBaseTreeOther(apiGroupCompanyCode, apiGroupCode, apiGroupPromotionType,apiCode,apiPromotion); return ResponseVO.ok(apiTreeGroupDtos); } diff --git a/src/main/java/com/pms/ocp/controller/TenantBasicManagementController.java b/src/main/java/com/pms/ocp/controller/TenantBasicManagementController.java index f7e5dadc95d81e49c949b7265c642ed9f910333e..07d403f5440e11cc689efcbc444ae51bb6c6662e 100644 --- a/src/main/java/com/pms/ocp/controller/TenantBasicManagementController.java +++ b/src/main/java/com/pms/ocp/controller/TenantBasicManagementController.java @@ -1,6 +1,5 @@ package com.pms.ocp.controller; - import com.github.pagehelper.PageInfo; import com.pms.ocp.model.dto.*; @@ -21,6 +20,7 @@ import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; import java.sql.Timestamp; import java.util.List; + /** * @author guofanfan */ @@ -86,12 +86,24 @@ public class TenantBasicManagementController { @ApiOperation("应用树层级") @GetMapping("/tenantBaseTreeOther") - public ResponseVO> tenantBaseTreeOther(@RequestParam(required = false) String tenantGroupCode, @RequestParam(required = false) String tenantGroupCompanyCode + public ResponseVO> tenantBaseTreeOther(@RequestParam(required = false) String tenantGroupCode, @RequestParam(required = false) String tenantGroupCompanyCode, + @RequestParam(required = false) String tenantCode ) { - List ocpApiGroups = tenantBasicManagementService.tenantBaseTreeOther(tenantGroupCode, tenantGroupCompanyCode); + List ocpApiGroups = tenantBasicManagementService.tenantBaseTreeOther(tenantGroupCode, tenantGroupCompanyCode,tenantCode); +// if (ocpApiGroups.size() != 0) { +// return ResponseVO.ok(ocpApiGroups); +// } else { +// List ocpBaseGroupDto = tenantBasicManagementService.selectBase(tenantGroupCode, tenantGroupCompanyCode); +// +// } return ResponseVO.ok(ocpApiGroups); } + /** + * @param tenantGroupCode + * @param tenantGroupCompanyCode + * @return + */ @ApiOperation("应用树底层") @GetMapping("/tenantBaseTree") public ResponseVO> tenantBaseTree(@RequestParam(required = false) String tenantGroupCode, diff --git a/src/main/java/com/pms/ocp/mapper/OcpApiGroupMapper.java b/src/main/java/com/pms/ocp/mapper/OcpApiGroupMapper.java index 7b68d58034435ddf8842817a40a7c8c5e1a8b5c1..ef9b7fff7dd03c54a3825e7ef77a1c9207d32e54 100644 --- a/src/main/java/com/pms/ocp/mapper/OcpApiGroupMapper.java +++ b/src/main/java/com/pms/ocp/mapper/OcpApiGroupMapper.java @@ -2,6 +2,7 @@ package com.pms.ocp.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.pms.ocp.model.dto.ApiBaseDto; +import com.pms.ocp.model.dto.OcpGroupBaseDto; import com.pms.ocp.model.entity.OcpApiBase; import com.pms.ocp.model.entity.OcpApiGroup; import com.pms.ocp.model.vo.OcpApiBaseVo; @@ -21,5 +22,9 @@ public interface OcpApiGroupMapper extends BaseMapper { List selectPageLists(ApiBaseDto apiBaseReq); + List apiTree(String apiGroupCompanyCode, String apiGroupPcode, Integer apiGroupPromotionType,String apiPromotion); + + List selectBase(String apiGroupCompanyCode, String apiGroupPcode,String apiPromotion); + // List queryApiTreeData1(); } diff --git a/src/main/java/com/pms/ocp/mapper/OcpTenantGroupMapper.java b/src/main/java/com/pms/ocp/mapper/OcpTenantGroupMapper.java index 70e6d44570f825314ec0bdaf884419863b0ede97..d5169f7c05991a19613ab67ba16785e2a232cb7c 100644 --- a/src/main/java/com/pms/ocp/mapper/OcpTenantGroupMapper.java +++ b/src/main/java/com/pms/ocp/mapper/OcpTenantGroupMapper.java @@ -3,10 +3,11 @@ package com.pms.ocp.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.pms.ocp.model.dto.GroupDto; + import com.pms.ocp.model.dto.OcpTenantBaseDto; import com.pms.ocp.model.dto.TenantDto; import com.pms.ocp.model.entity.OcpTenantGroup; -import com.pms.ocp.model.vo.ResponseVO; + import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -19,4 +20,6 @@ public interface OcpTenantGroupMapper extends BaseMapper { List selectPageLists(TenantDto tenantDto); OcpTenantGroup selectRegister(@Param("tenantGroupCode") String tenantGroupCode, @Param("tenantGroupCompanyCode") String tenantGroupCompanyCode); + + List selectBase(@Param("tenantGroupCode") String tenantGroupCode, String tenantGroupCompanyCode); } diff --git a/src/main/java/com/pms/ocp/model/dto/GroupDto.java b/src/main/java/com/pms/ocp/model/dto/GroupDto.java index 827dc28b127d9c1d0244b86d8fdf191eac1372b3..8a02bbbcd85ee26e27e9241c8725d0f27fb7286e 100644 --- a/src/main/java/com/pms/ocp/model/dto/GroupDto.java +++ b/src/main/java/com/pms/ocp/model/dto/GroupDto.java @@ -23,6 +23,10 @@ public class GroupDto extends OcpTenantGroup implements Serializable { @ApiModelProperty("应用代码") private String tenantCode; + @ApiModelProperty("flag") + private Integer flag; + + /** * 应用分类代码 */ diff --git a/src/main/java/com/pms/ocp/model/dto/OcpGroupBaseDto.java b/src/main/java/com/pms/ocp/model/dto/OcpGroupBaseDto.java new file mode 100644 index 0000000000000000000000000000000000000000..dd28cd35ccd8b91f859e0b98b0d312a0adf2fb0d --- /dev/null +++ b/src/main/java/com/pms/ocp/model/dto/OcpGroupBaseDto.java @@ -0,0 +1,27 @@ +package com.pms.ocp.model.dto; + +import com.pms.ocp.model.entity.OcpApiGroup; +import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serializable; + +/** + * @author guofanfan + * 服务组dto + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class OcpGroupBaseDto extends OcpApiGroup implements Serializable { + @ApiModelProperty("服务代码") + private String apiCode; + + @ApiModelProperty("服务接口中文名称") + private String apiName; + + @ApiModelProperty("服务分类代码") + private String apiGroupCode; +} diff --git a/src/main/java/com/pms/ocp/service/ApiBasicManagementService.java b/src/main/java/com/pms/ocp/service/ApiBasicManagementService.java index 634d166088f020f52789cdb3baeacc52dfe0bbcb..3576226a01bac9a698d71c0598823beb9c7b6ff9 100644 --- a/src/main/java/com/pms/ocp/service/ApiBasicManagementService.java +++ b/src/main/java/com/pms/ocp/service/ApiBasicManagementService.java @@ -3,10 +3,7 @@ package com.pms.ocp.service; import com.baomidou.mybatisplus.extension.service.IService; import com.github.pagehelper.PageInfo; import com.pms.ocp.model.QueryResponseResult; -import com.pms.ocp.model.dto.ApiBaseDto; -import com.pms.ocp.model.dto.ApiTreeGroupDto; -import com.pms.ocp.model.dto.OcpApiBaseDto; -import com.pms.ocp.model.dto.WholeLinkParamDto; +import com.pms.ocp.model.dto.*; import com.pms.ocp.model.entity.OcpApiBase; import com.pms.ocp.model.entity.OcpApiExtent; import com.pms.ocp.model.entity.OcpApiGroup; @@ -75,7 +72,7 @@ public interface ApiBasicManagementService extends IService { * @param apiGroupPcode * @return */ - List apiBaseTreeOther(String apiGroupCompanyCode, String apiGroupPcode,Integer apiGroupPromotionType); + List apiBaseTreeOther(String apiGroupCompanyCode, String apiGroupPcode, Integer apiGroupPromotionType, String apiCode,String apiPromotion); /** * 根据分组code获取列表 diff --git a/src/main/java/com/pms/ocp/service/TenantBasicManagementService.java b/src/main/java/com/pms/ocp/service/TenantBasicManagementService.java index 3a35a3ab4b9b32cc3ba92f3966b5d4a3b187c668..e78eecd2aa6b6adf6773a10d494ccf014d931caa 100644 --- a/src/main/java/com/pms/ocp/service/TenantBasicManagementService.java +++ b/src/main/java/com/pms/ocp/service/TenantBasicManagementService.java @@ -2,10 +2,7 @@ package com.pms.ocp.service; import com.baomidou.mybatisplus.extension.service.IService; import com.github.pagehelper.PageInfo; -import com.pms.ocp.model.dto.GroupDto; -import com.pms.ocp.model.dto.OcpTenantBaseDto; -import com.pms.ocp.model.dto.TenantDto; -import com.pms.ocp.model.dto.WholeLinkParamDto; +import com.pms.ocp.model.dto.*; import com.pms.ocp.model.entity.OcpApiGroup; import com.pms.ocp.model.entity.OcpTenantBase; import com.pms.ocp.model.entity.OcpTenantGroup; @@ -64,7 +61,7 @@ public interface TenantBasicManagementService extends IService { * @param tenantGroupCompanyCode * @return */ - List tenantBaseTreeOther(String tenantGroupCode, String tenantGroupCompanyCode); + List tenantBaseTreeOther(String tenantGroupCode, String tenantGroupCompanyCode,String tenantCode); /** * 应用列表 @@ -91,6 +88,14 @@ public interface TenantBasicManagementService extends IService { */ OcpTenantGroup selectRegister(String tenantGroupCode, String tenantGroupCompanyCode); + /** + * 查询基础表 + * @param tenantGroupCode + * @param tenantGroupCompanyCode + * @return + */ + List selectBase(String tenantGroupCode, String tenantGroupCompanyCode); + /** * 应用树 * @param tenantGroupCode diff --git a/src/main/java/com/pms/ocp/service/impl/ApiBasicManagementServiceImpl.java b/src/main/java/com/pms/ocp/service/impl/ApiBasicManagementServiceImpl.java index e00a23b9cae518feafc32bdf09bde67b91120bbb..fc1c1852d55575e60eb23cc2fc1c6ed6db52b415 100644 --- a/src/main/java/com/pms/ocp/service/impl/ApiBasicManagementServiceImpl.java +++ b/src/main/java/com/pms/ocp/service/impl/ApiBasicManagementServiceImpl.java @@ -2,24 +2,21 @@ package com.pms.ocp.service.impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.metadata.IPage; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.baomidou.mybatisplus.extension.service.IService; + import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import com.pms.ocp.common.constants.StringUtils; -import com.pms.ocp.common.exception.BeagleException; -import com.pms.ocp.common.utils.MenuTree; + import com.pms.ocp.mapper.ApiBasicManagementMapper; import com.pms.ocp.mapper.OcpApiExtentMapper; import com.pms.ocp.mapper.OcpApiGroupMapper; import com.pms.ocp.mapper.OcpApiSubsMapper; -import com.pms.ocp.model.CommonCode; -import com.pms.ocp.model.QueryResponseResult; + import com.pms.ocp.model.dto.ApiBaseDto; -import com.pms.ocp.model.dto.OcpApiBaseDto; -import com.pms.ocp.model.dto.WholeLinkParamDto; + +import com.pms.ocp.model.dto.OcpGroupBaseDto; + import com.pms.ocp.model.entity.OcpApiBase; import com.pms.ocp.model.entity.OcpApiExtent; import com.pms.ocp.model.entity.OcpApiGroup; @@ -29,7 +26,6 @@ import com.pms.ocp.model.vo.*; import com.pms.ocp.service.ApiBasicManagementService; import com.pms.ocp.service.OcpApiExtentService; - import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -39,6 +35,7 @@ import java.time.LocalDateTime; import java.util.ArrayList; import java.util.Arrays; +import java.util.Collections; import java.util.List; import java.util.stream.Collectors; @@ -57,6 +54,7 @@ public class ApiBasicManagementServiceImpl extends ServiceImpl apiGroupCode = new ArrayList<>(); + /** * 导出查询 * @@ -98,6 +96,7 @@ public class ApiBasicManagementServiceImpl extends ServiceImpl apiBaseTreeOther(String apiGroupCompanyCode, String apiGroupPcode,Integer apiGroupPromotionType) { - List ocpApiGroups = ocpApiGroupMapper.apiBaseTreeOther(apiGroupCompanyCode,apiGroupPcode,apiGroupPromotionType); - return ocpApiGroups; + public List apiBaseTreeOther(String apiGroupCompanyCode, String apiGroupPcode, Integer apiGroupPromotionType, String apiCode, String apiPromotion) { + List ocpApiGroups = ocpApiGroupMapper.apiTree(apiGroupCompanyCode, apiGroupPcode, apiGroupPromotionType, apiPromotion); + if (ocpApiGroups.size() != 0) { + return ocpApiGroups; + } else { + if (org.apache.commons.lang3.StringUtils.isNotEmpty(apiCode)) { + return Collections.EMPTY_LIST; + } else { + List ocpGroupBaseDto = ocpApiGroupMapper.selectBase(apiGroupCompanyCode, apiGroupPcode, apiPromotion); + if (ocpGroupBaseDto.size() != 0) { + return ocpGroupBaseDto; + } + return Collections.EMPTY_LIST; + } + } + } @Override public ResponseVO> getBaseByGroupCode(ApiBaseDto apiBaseReq) { if (apiBaseReq.getPageNum() == null || apiBaseReq.getPageSize() == null) { - return ResponseVO.error("分页参数不能为空"); + return ResponseVO.error("分页参数不能为空"); } apiGroupCode.add(apiBaseReq.getApiGroupCode()); - setGroupIdValue(apiBaseReq.getApiGroupCompanyCode() ,apiBaseReq.getApiGroupCode(),apiBaseReq.getApiPromotion()); - PageHelper.startPage(apiBaseReq.getPageNum(),apiBaseReq.getPageSize()); + setGroupIdValue(apiBaseReq.getApiGroupCompanyCode(), apiBaseReq.getApiGroupCode(), apiBaseReq.getApiPromotion()); + PageHelper.startPage(apiBaseReq.getPageNum(), apiBaseReq.getPageSize()); apiBaseReq.setApiGroupCodeList(apiGroupCode); List ocpApiBaseVos = ocpApiGroupMapper.selectPageLists(apiBaseReq); apiGroupCode.clear(); @@ -207,7 +218,7 @@ public class ApiBasicManagementServiceImpl extends ServiceImpl codes = getIdsByPIdPub(apiGroupCompanyCode,code,apiGroupPromotionType); - if(codes.size()>0){ - for (String cod : codes ){ - setGroupIdValue(apiGroupCompanyCode,cod,apiGroupPromotionType); + private void setGroupIdValue(String apiGroupCompanyCode, String code, Integer apiGroupPromotionType) { + List codes = getIdsByPIdPub(apiGroupCompanyCode, code, apiGroupPromotionType); + if (codes.size() > 0) { + for (String cod : codes) { + setGroupIdValue(apiGroupCompanyCode, cod, apiGroupPromotionType); apiGroupCode.add(cod); - }; + } + ; } } /** * pcode服务分组 + * * @param apiGroupCompanyCode * @param code * @return */ - public List getIdsByPIdPub(String apiGroupCompanyCode,String code,Integer apiGroupPromotionType) { - List ocpApiGroups = ocpApiGroupMapper.apiBaseTreeOther(apiGroupCompanyCode, code,apiGroupPromotionType); + public List getIdsByPIdPub(String apiGroupCompanyCode, String code, Integer apiGroupPromotionType) { + List ocpApiGroups = ocpApiGroupMapper.apiBaseTreeOther(apiGroupCompanyCode, code, apiGroupPromotionType); return ocpApiGroups.stream().map(OcpApiGroup::getApiGroupCode).collect(Collectors.toList()); } diff --git a/src/main/java/com/pms/ocp/service/impl/TenantBasicManagementServiceImpl.java b/src/main/java/com/pms/ocp/service/impl/TenantBasicManagementServiceImpl.java index 82864993e6e4e3ef15271b94f5163d5f82fc5514..0553c3c6f36b2689c634c377abb85206f95bd737 100644 --- a/src/main/java/com/pms/ocp/service/impl/TenantBasicManagementServiceImpl.java +++ b/src/main/java/com/pms/ocp/service/impl/TenantBasicManagementServiceImpl.java @@ -10,6 +10,7 @@ import com.pms.ocp.mapper.OcpTenantExtentMapper; import com.pms.ocp.mapper.OcpTenantGroupMapper; import com.pms.ocp.mapper.TenantBasicManagementMapper; import com.pms.ocp.model.dto.GroupDto; + import com.pms.ocp.model.dto.OcpTenantBaseDto; import com.pms.ocp.model.dto.TenantDto; import com.pms.ocp.model.entity.*; @@ -20,10 +21,13 @@ import org.apache.commons.lang3.StringUtils; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.util.CollectionUtils; + import java.sql.Timestamp; import java.time.LocalDateTime; import java.util.ArrayList; import java.util.Arrays; +import java.util.Collections; import java.util.List; import java.util.stream.Collectors; @@ -250,10 +254,22 @@ public class TenantBasicManagementServiceImpl extends ServiceImpl tenantBaseTreeOther(String tenantGroupCode, String tenantGroupCompanyCode) { + public List tenantBaseTreeOther(String tenantGroupCode, String tenantGroupCompanyCode, String tenantCode) { List ocpTenantGroups = ocpTenantGroupMapper.tenantBaseTreeOther(tenantGroupCode, tenantGroupCompanyCode); + if (ocpTenantGroups.size() != 0) { + return ocpTenantGroups; + } else { + if (StringUtils.isNotEmpty(tenantCode)) { + return Collections.EMPTY_LIST; + } else { + List groupDtos = ocpTenantGroupMapper.selectBase(tenantGroupCode, tenantGroupCompanyCode); + if (groupDtos.size() != 0) { + return groupDtos; + } + return Collections.EMPTY_LIST; + } - return ocpTenantGroups; + } } @@ -310,6 +326,18 @@ public class TenantBasicManagementServiceImpl extends ServiceImpl selectBase(String tenantGroupCode, String tenantGroupCompanyCode) { + List groupDto = ocpTenantGroupMapper.selectBase(tenantGroupCode, tenantGroupCompanyCode); + return groupDto; + } + /** * 应用树2 * diff --git a/src/main/resources/mapper/OcpApiGroupMapper.xml b/src/main/resources/mapper/OcpApiGroupMapper.xml index fca2619f7db6e86543b655f8e8de7c851027d82a..65ac7b1b953f1fdac3ef281d15cbc8a4a181df82 100644 --- a/src/main/resources/mapper/OcpApiGroupMapper.xml +++ b/src/main/resources/mapper/OcpApiGroupMapper.xml @@ -22,7 +22,7 @@ select api_group_code,api_group_name,api_group_pcode,api_group_level from ocp_api_group where is_delete = 0 - and api_group_pcode is null + and api_group_pcode is null and api_group_pcode = #{apiGroupPcode} @@ -36,7 +36,7 @@ select api_group_code,api_group_name,api_group_pcode,api_group_level from ocp_api_group where is_delete = 0 - and api_group_pcode is null + and api_group_pcode is null and api_group_pcode = #{apiGroupPcode} @@ -48,6 +48,29 @@ and api_group_promotion_type =#{apiGroupPromotionType} + + + + + + select obj_id,api_code,api_name,api_group_code from ocp_api_base + + + and api_group_code = #{apiGroupPcode} + + + and owner_company_code =#{apiGroupCompanyCode} + + + and api_promotion=#{apiPromotion} + + + + + + + + + + \ No newline at end of file diff --git a/src/main/resources/mapper/OcpGroup.xml b/src/main/resources/mapper/OcpGroup.xml index 0f6d413ccd11baebe9627bcb89be83e3cdad6c1b..ca9fef4e5fd4c3e1f3d970df93d2f0b2f01e8cde 100644 --- a/src/main/resources/mapper/OcpGroup.xml +++ b/src/main/resources/mapper/OcpGroup.xml @@ -9,7 +9,7 @@ - + @@ -19,8 +19,6 @@ +