Commit bce87e3c authored by liukai's avatar liukai

修改问题

parent 9f5574b8
......@@ -4,6 +4,8 @@ package com.pms.ocp.controller;
import com.github.pagehelper.PageInfo;
import com.pms.ocp.model.ResponseResult;
import com.pms.ocp.model.entity.*;
import com.pms.ocp.model.vo.OcpApiGroupVo;
import com.pms.ocp.model.vo.OcpModelGroupVO;
import com.pms.ocp.model.vo.ResponseVO;
import com.pms.ocp.service.*;
import io.swagger.annotations.Api;
......@@ -92,7 +94,7 @@ public class PmsApiDetailsController {
}
@ApiOperation("服务分类")
@PostMapping("/getPamm")
@PostMapping("province/provinceList")
public ResponseVO<PageInfo<PmsApiManagement>> getPamm(@RequestBody PmsApiManagement pmsApiManagement) {
return pmsApiManagementService.getPammList(pmsApiManagement);
}
......@@ -128,5 +130,11 @@ public class PmsApiDetailsController {
return pmsApiManagementService.updateApi(pmsApiMangageApi);
}
@ApiOperation("模型分类导航")
@GetMapping("/navigation")
public ResponseVO<List<OcpApiGroupVo>> getApiNavigation() {
return pmsApiManagementService.getApiNavigation();
}
}
package com.pms.ocp.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.pms.ocp.model.vo.OcpApiGroupVo;
import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface OcpApiGroupVoMapper extends BaseMapper<OcpApiGroupVo> {
}
\ No newline at end of file
......@@ -28,6 +28,8 @@ public interface PmsApiManagementMapper extends BaseMapper<PmsApiManagement> {
int updateOag(PmsApiMangageApi pmsApiMangageApi);
List<PmsApiManagement> getList(PmsApiManagement pmsApiManagement);
......
......@@ -125,17 +125,25 @@ public class PmsApiManagement {
private String companyCode;
@ApiModelProperty("当前页")
private Integer currentPage;
private Integer pageNum;
@ApiModelProperty("每页条数")
private Integer pageSize;
public Integer getCurrentPage() {
return currentPage;
public String getApiGroupCode() {
return apiGroupCode;
}
public void setCurrentPage(Integer currentPage) {
this.currentPage = currentPage;
public void setApiGroupCode(String apiGroupCode) {
this.apiGroupCode = apiGroupCode;
}
public Integer getPageNum() {
return pageNum;
}
public void setPageNum(Integer pageNum) {
this.pageNum = pageNum;
}
public Integer getPageSize() {
......
package com.pms.ocp.model.vo;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;
import java.sql.Timestamp;
import java.util.List;
@Data
@Accessors(chain = true)
@TableName("ocp_api_group")
@ApiModel("服务分类表")
public class OcpApiGroupVo {
@TableId(type = IdType.ASSIGN_ID)
@ApiModelProperty("主键ID")
private String objId;
@ApiModelProperty("分类编码")
private String apiGroupCode;
@ApiModelProperty("分类名称")
private String apiGroupName;
@ApiModelProperty("推广类型0统推,1自建")
private long apiGroupPromotionType;
@ApiModelProperty("分类所属公司")
private String apiGroupCompanyCode;
@ApiModelProperty("分类版本")
private String apiGroupVersion;
@ApiModelProperty("显示顺序")
private long apiGroupOrderNo;
@ApiModelProperty("提交人id")
private String apiGroupUserId;
@ApiModelProperty("提交人姓名")
private String apiGroupUserName;
@ApiModelProperty("创建时间")
private Timestamp apiGroupCtime;
@ApiModelProperty("修改时间")
private Timestamp apiGroupMtime;
@ApiModelProperty("上级code")
private String apiGroupPcode;
@ApiModelProperty("是否删除0-否1-是")
private long isDelete;
@ApiModelProperty("分层树层级 1中台层 2中心层 3 服务组层 4服务层 ")
private String apiGroupLevel;
@ApiModelProperty("上级分类名称")
@TableField(exist = false)
private String classIfy;
@TableField(exist = false)
@ApiModelProperty(value = "子类集合")
private List<OcpApiGroupVo> childrenList;
}
\ No newline at end of file
......@@ -6,8 +6,12 @@ import com.github.pagehelper.PageInfo;
import com.pms.ocp.model.ResponseResult;
import com.pms.ocp.model.entity.PmsApiManagement;
import com.pms.ocp.model.entity.PmsApiMangageApi;
import com.pms.ocp.model.vo.OcpApiGroupVo;
import com.pms.ocp.model.vo.OcpModelGroupVO;
import com.pms.ocp.model.vo.ResponseVO;
import java.util.List;
public interface PmsApiManagementService extends IService<PmsApiManagement> {
......@@ -27,6 +31,8 @@ public interface PmsApiManagementService extends IService<PmsApiManagement> {
ResponseResult updateApi(PmsApiMangageApi pmsApiMangageApi);
ResponseVO<List<OcpApiGroupVo>> getApiNavigation();
......
package com.pms.ocp.service.impl;
import cn.hutool.core.collection.CollectionUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.pms.ocp.common.constants.Constant;
import com.pms.ocp.common.constants.CodeEnum;
import com.pms.ocp.common.utils.GUIDGenerator;
import com.pms.ocp.mapper.OcpApiBaseMapper;
import com.pms.ocp.mapper.OcpApiGroupMapper;
import com.pms.ocp.mapper.PmsApiManagementMapper;
import com.pms.ocp.mapper.PmsApiModelRelMapper;
import com.pms.ocp.mapper.*;
import com.pms.ocp.model.CommonCode;
import com.pms.ocp.model.ResponseResult;
import com.pms.ocp.model.entity.*;
import com.pms.ocp.model.vo.OcpApiGroupVo;
import com.pms.ocp.model.vo.ResponseVO;
import com.pms.ocp.service.PmsApiManagementService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.*;
@Service
......@@ -37,15 +36,18 @@ public class PmsApiManagementServiceImpl extends ServiceImpl<PmsApiManagementMap
@Autowired
private PmsApiModelRelMapper pmsApiModelRelMapper;
@Autowired
private OcpApiGroupVoMapper ocpApiGroupVoMapper;
@Override
public ResponseVO<PageInfo<PmsApiManagement>> getPammList(PmsApiManagement pmsApiManagement) {
if (pmsApiManagement.getCurrentPage() ==null || pmsApiManagement.getPageSize() == null) {
if (pmsApiManagement.getPageNum() ==null || pmsApiManagement.getPageSize() == null) {
return ResponseVO.error("分页参数不能为空");
}
PageHelper.startPage(pmsApiManagement.getCurrentPage(),pmsApiManagement.getPageSize());
List<PmsApiManagement> pammList = pmsApiManagementMapper.getPammList(pmsApiManagement);
PageHelper.startPage(pmsApiManagement.getPageNum(),pmsApiManagement.getPageSize());
List<PmsApiManagement> pammList = pmsApiManagementMapper.getList(pmsApiManagement);
PageInfo<PmsApiManagement> pageInfo = new PageInfo<>(pammList);
return ResponseVO.ok(pageInfo);
}
......@@ -97,6 +99,55 @@ public class PmsApiManagementServiceImpl extends ServiceImpl<PmsApiManagementMap
return new ResponseResult(CommonCode.SUCCESS);
}
@Override
public ResponseVO<List<OcpApiGroupVo>> getApiNavigation() {
//根据是否传入搜索条件创建构造器进行查询
List<OcpApiGroupVo> apiTypeList = this.selectByCondition(null, null);
if (CollectionUtil.isEmpty(apiTypeList)) {
return ResponseVO.error(CodeEnum.NO_DATA);
}
//对模型分类信息进行处理
List<OcpApiGroupVo> resultList = this.build(apiTypeList);
return ResponseVO.ok(resultList);
}
private List<OcpApiGroupVo> selectByCondition(String... searchCondition) {
QueryWrapper<OcpApiGroupVo> queryWrapper = new QueryWrapper<>();
//根据是否传入搜索条件创建构造器进行查询
queryWrapper.eq(StringUtils.isNotEmpty(searchCondition[0]), "api_group_pcode", searchCondition[0])
.like(StringUtils.isNotEmpty(searchCondition[1]),"api_group_name", searchCondition[1]);
return ocpApiGroupVoMapper.selectList(queryWrapper);
}
private List<OcpApiGroupVo> build(List<OcpApiGroupVo> treeNodes) {
List<OcpApiGroupVo> result = new ArrayList<>();
//list转map =>将每个对象的id作为key,自己作为value.
Map<String, OcpApiGroupVo> nodeMap = new LinkedHashMap<>(treeNodes.size());
for (OcpApiGroupVo treeNode : treeNodes) {
nodeMap.put(treeNode.getApiGroupCode(), treeNode);
}
for (OcpApiGroupVo node : nodeMap.values()) {
//得到自己的父类
OcpApiGroupVo parent = nodeMap.get(node.getApiGroupPcode());
if (parent != null && (node.getApiGroupPcode().equals(parent.getApiGroupCode()))
&& (!"".equals(node.getApiGroupPcode())|| !"".equals(parent.getApiGroupCode()))
&& !parent.getApiGroupCode().equals(node.getApiGroupCode())) {
//防止每次都new list或者只是使用该对象就new对象浪费内存或者覆盖上一次记录
if (parent.getChildrenList() == null) {
parent.setChildrenList(new LinkedList<>());
}
//设置上级父类名称
node.setClassIfy(parent.getApiGroupName());
//说明他有父类其下子类都需要加一级
parent.getChildrenList().add(node);
continue;
}
result.add(node);
}
return result;
}
private QueryWrapper<OcpApiBase> getCondition(String apiCode){
QueryWrapper<OcpApiBase> qw = new QueryWrapper<>();
......
......@@ -86,9 +86,6 @@
<if test="apiUnit !=null and apiUnit!=''">
and oab.api_unit = #{apiUnit}
</if>
<if test="apiName !=null and apiName!=''">
and oab.api_name = #{apiName}
</if>
<if test="apiPromotion !=null and apiPromotion!=''">
and oab.api_promotion = #{apiPromotion}
</if>
......
......@@ -3,66 +3,10 @@
<mapper namespace="com.pms.ocp.mapper.PmsApiManagementMapper">
<select id="getPammList" resultType="com.pms.ocp.model.entity.PmsApiManagement">
select
oab.obj_id,
oab.api_code,
api_name,
oab.api_group_code,
oab.api_promotion,
oab.api_req,
oab.api_resp,
oab.api_url,
oab.api_ctime,
oab.api_mtime,
oab.api_user_id,
oab.api_unit,
oab.owner_company_code,
oab.is_delete,
oab.api_zone,
oab.api_layer,
oab.api_version,
oab.api_center_code,
oab.api_description,
api_user_name,
api_group_name,
oti.iocn_type,
oti.code_no,
oti.iocn,
oti.company_code
from ocp_api_base oab LEFT JOIN
ocp_api_group oag on oab.api_group_code = oag.api_group_code
INNER JOIN ocp_tenant_iocn oti on oab.api_code = oti.code_no
<if test="apiName != null and apiName != ''">
and api_name = #{apiName}
</if>
<if test="apiGroupName != null and apiGroupName != ''">
and api_group_name = #{apiGroupName}
</if>
<if test="apiUserName != null and apiUserName != ''">
and api_user_name = #{apiUserName}
</if>
<!-- <if test="startCTime !=null ">-->
<!-- <![CDATA[-->
<!-- and oab.api_mtime >= #{startCTime}-->
<!-- ]]>-->
<!-- </if>-->
<!-- <if test="endCTime !=null ">-->
<!-- <![CDATA[-->
<!-- and oab.api_mtime <= #{endCTime}-->
<!-- ]]>-->
<!-- </if>-->
<if test="apiMtime != null">
AND api_mtime &lt;= DATE_FORMAT(#{apiMtime},'%Y-%m-%d ')
</if>
<if test="isDelete != null and isDelete != ''">
and oab.is_delete = #{isDelete}
</if>
select from ocp_api_group oag
LEFT JOIN ocp_api_base oab on
oag.api_group_code = oab.api_group_code
where oag.api_group_code = #{apiGroupCode}
</select>
<select id="getPammByCode" resultType="com.pms.ocp.model.entity.PmsApiManagement">
......@@ -198,6 +142,12 @@
</if>
</update>
<select id="getList" resultType="com.pms.ocp.model.entity.PmsApiManagement">
select * from ocp_api_group oag
LEFT JOIN ocp_api_base oab on
oag.api_group_code = oab.api_group_code
where oag.api_group_code = #{apiGroupCode}
</select>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment