diff --git a/adc-da-slrs/src/main/java/com/adc/da/pdmcSarResource/controller/PDMCSarResourceController.java b/adc-da-slrs/src/main/java/com/adc/da/pdmcSarResource/controller/PDMCSarResourceController.java new file mode 100644 index 00000000..c1af4031 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/pdmcSarResource/controller/PDMCSarResourceController.java @@ -0,0 +1,37 @@ +package com.adc.da.pdmcSarResource.controller; + +import com.adc.da.base.web.BaseController; +import com.adc.da.http.ResponseMessage; +import com.adc.da.http.Result; +import com.adc.da.pdmcSarResource.entity.PDMCSarResource; +import com.adc.da.pdmcSarResource.service.PDMCSarResourceService; +import com.adc.da.slrs.sarResource.entity.TsResource; +import io.swagger.annotations.Api; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.List; + +/** + *

+ * 对外接口:目录树接口 + *

+ * + * @author Administrator + * @date 2023-05-10 + */ +@Api("目录树接口") +@RestController +@RequestMapping("/api/pdmcSarResource/ts-resource") +public class PDMCSarResourceController extends BaseController { + @Resource + private PDMCSarResourceService pdmcSarResourceService; + + @GetMapping("/getMenu") + public ResponseMessage> getMenu() { + List menuList = pdmcSarResourceService.getMenuList(); + return Result.success(menuList); + } +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/pdmcSarResource/dao/PDMCSarResourceDao.java b/adc-da-slrs/src/main/java/com/adc/da/pdmcSarResource/dao/PDMCSarResourceDao.java new file mode 100644 index 00000000..25134e59 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/pdmcSarResource/dao/PDMCSarResourceDao.java @@ -0,0 +1,10 @@ +package com.adc.da.pdmcSarResource.dao; + +import com.adc.da.pdmcSarResource.entity.PDMCSarResource; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface PDMCSarResourceDao extends BaseMapper { + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/pdmcSarResource/entity/PDMCSarResource.java b/adc-da-slrs/src/main/java/com/adc/da/pdmcSarResource/entity/PDMCSarResource.java new file mode 100644 index 00000000..cf6a6a33 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/pdmcSarResource/entity/PDMCSarResource.java @@ -0,0 +1,56 @@ +package com.adc.da.pdmcSarResource.entity; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.springframework.data.annotation.Transient; + +import java.util.List; + +/** + *

+ * TODO 添加类/接口功能描述 + *

+ * + * @author Administrator + * @date 2023-05-10 + */ +@ApiModel(value = "PDMCTsResource对象",description = "") +@Data +@TableName("ts_resource") +@Accessors(chain = true) +public class PDMCSarResource { + @ApiModelProperty("ID") + @TableId("ID") + private String id; + + @ApiModelProperty("父级ID") + @TableField("PARENT_ID") + private String parentId; + + @ApiModelProperty("目录名称") + @TableField("MENU_NAME") + private String menuName; + + @ApiModelProperty("法规类型") + @TableField("SOR_DIVIDE") + private String sorDivide; + + @ApiModelProperty("预留字段") + @TableField("REMARKS") + private String remarks; + + @ApiModelProperty("排序字段") + @TableField("DISPLAY_SEQ") + private Long displaySeq; + + @ApiModelProperty("子节点") + @TableField(exist=false) + private List children; +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/pdmcSarResource/service/PDMCSarResourceService.java b/adc-da-slrs/src/main/java/com/adc/da/pdmcSarResource/service/PDMCSarResourceService.java new file mode 100644 index 00000000..b8cb80db --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/pdmcSarResource/service/PDMCSarResourceService.java @@ -0,0 +1,10 @@ +package com.adc.da.pdmcSarResource.service; + +import com.adc.da.pdmcSarResource.entity.PDMCSarResource; +import com.baomidou.mybatisplus.extension.service.IService; + +import java.util.List; + +public interface PDMCSarResourceService extends IService { + List getMenuList(); +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/pdmcSarResource/service/impl/PDMCSarResourceServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/pdmcSarResource/service/impl/PDMCSarResourceServiceImpl.java new file mode 100644 index 00000000..8de4e14c --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/pdmcSarResource/service/impl/PDMCSarResourceServiceImpl.java @@ -0,0 +1,66 @@ +package com.adc.da.pdmcSarResource.service.impl; + +import com.adc.da.pdmcSarResource.dao.PDMCSarResourceDao; +import com.adc.da.pdmcSarResource.entity.PDMCSarResource; +import com.adc.da.pdmcSarResource.service.PDMCSarResourceService; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.apache.commons.lang3.StringUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.Comparator; +import java.util.List; +import java.util.stream.Collectors; + +/** + *

+ * 对外接口ServiceImpl:目录树接口 + *

+ * + * @author wxy + * @date 2023-05-10 + */ +@Service +public class PDMCSarResourceServiceImpl extends ServiceImpl implements PDMCSarResourceService { + @Resource + private PDMCSarResourceDao pdmcSarResourceDao; + + @Override + public List getMenuList() { + List pdmcSarResourceList = new ArrayList<>(); + + QueryWrapper queryWrapper =new QueryWrapper<>(); + queryWrapper.isNull("PARENT_ID"); + queryWrapper.eq("VALID_FLAG","0"); + queryWrapper.eq("SOR_DIVIDE","INLAND_STAND").or().eq("SOR_DIVIDE","FOREIGN_STAND"); + queryWrapper.orderByAsc("DISPLAY_SEQ"); + pdmcSarResourceList=pdmcSarResourceDao.selectList(queryWrapper); + for(PDMCSarResource resource:pdmcSarResourceList){ + QueryWrapper TsResourceQueryWrapper=new QueryWrapper<>(); + TsResourceQueryWrapper.eq("VALID_FLAG","0"); + TsResourceQueryWrapper.like("PARENT_IDS",","+resource.getId()+","); + TsResourceQueryWrapper.orderByAsc("DISPLAY_SEQ"); + List children=pdmcSarResourceDao.selectList(TsResourceQueryWrapper); + resource.setChildren(recursionGetListChildrenStand(resource,children)); + } + return pdmcSarResourceList; + } + /** + * 递归调用获取子节点 + * @return List + */ + private List recursionGetListChildrenStand(PDMCSarResource resource,List children){ + List tsResources = children.stream() + .filter(resource1 -> !children.isEmpty() && StringUtils.isNotBlank(resource1.getParentId()) && resource1.getParentId().equals(resource.getId())) + .collect(Collectors.toList()); + if(!tsResources.isEmpty()){ + tsResources = tsResources.stream().sorted(Comparator.comparing(PDMCSarResource::getDisplaySeq)).collect(Collectors.toList()); + tsResources.forEach(resource1 -> { + resource1.setChildren(recursionGetListChildrenStand(resource1,children)); + }); + } + return tsResources; + } +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/pdmcSarLawsStandInfo/controller/PDMCSarLawsStandInfoController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/pdmcSarLawsStandInfo/controller/PDMCSarLawsStandInfoController.java new file mode 100644 index 00000000..b1083e59 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/pdmcSarLawsStandInfo/controller/PDMCSarLawsStandInfoController.java @@ -0,0 +1,62 @@ +package com.adc.da.slrs.pdmcSarLawsStandInfo.controller; + +import cn.hutool.core.util.ObjectUtil; +import com.adc.da.base.web.BaseController; +import com.adc.da.http.PageInfo; +import com.adc.da.http.ResponseMessage; +import com.adc.da.http.Result; +import com.adc.da.slrs.pdmcSarLawsStandInfo.entity.PDMCSarLawsStandInfo; +import com.adc.da.slrs.pdmcSarLawsStandInfo.service.PDMCSarLawsStandInfoService; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.List; + +/** + *

+ * 对外接口:福田标准法规--标准法规库--国内标准法规 + *

+ * + * @author wxy + * @date 2023-05-09 + */ +@Api("对外接口:福田标准法规--标准法规库--国内标准法规") +@RestController +@RequestMapping("/${restPath}/pdmcSarStandardsInfo/sar-standards-info") +public class PDMCSarLawsStandInfoController extends BaseController { + public static final Logger logger = LoggerFactory.getLogger(PDMCSarLawsStandInfoController.class); + + @Resource + private PDMCSarLawsStandInfoService pdmcSarLawsStandInfoService; + + @ApiOperation("对外提供的SarStandardsInfo信息接口") + @GetMapping("getSarStandardsInfo") + public ResponseMessage> getSarStandardsInfoPage( + @RequestParam(value = "current", defaultValue = "1") Long current, + @RequestParam(value = "limit",required = false,defaultValue = "100") Long limit, + @RequestParam(defaultValue = "0") String mark) throws Exception { + if (ObjectUtil.isEmpty(current)){ + current = 1L; + } + if (ObjectUtil.isEmpty(limit)){ + limit = 100L; + } + Page page = new Page<>(current, limit); + Page sarStandardsInfoPage = pdmcSarLawsStandInfoService.getSarStandardsInfo(page); + PageInfo pdmcSarLawsStandInfoPageInfo = new PageInfo<>(); + pdmcSarLawsStandInfoPageInfo.setList(sarStandardsInfoPage.getRecords()); + pdmcSarLawsStandInfoPageInfo.setPageNo((int)sarStandardsInfoPage.getCurrent()); + pdmcSarLawsStandInfoPageInfo.setCount(sarStandardsInfoPage.getTotal()); + pdmcSarLawsStandInfoPageInfo.setPageSize((int) sarStandardsInfoPage.getSize()); + return Result.success(pdmcSarLawsStandInfoPageInfo); + } + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/pdmcSarLawsStandInfo/dao/PDMCSarLawsStandInfoDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/pdmcSarLawsStandInfo/dao/PDMCSarLawsStandInfoDao.java new file mode 100644 index 00000000..9b3b216c --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/pdmcSarLawsStandInfo/dao/PDMCSarLawsStandInfoDao.java @@ -0,0 +1,15 @@ +package com.adc.da.slrs.pdmcSarLawsStandInfo.dao; + +import com.adc.da.slrs.pdmcSarLawsStandInfo.entity.PDMCSarLawsStandInfo; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +@Mapper +public interface PDMCSarLawsStandInfoDao extends BaseMapper { + Page getSarStandardsInfo(@Param("page")Page page); + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/pdmcSarLawsStandInfo/entity/PDMCSarLawsStandInfo.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/pdmcSarLawsStandInfo/entity/PDMCSarLawsStandInfo.java new file mode 100644 index 00000000..886722a2 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/pdmcSarLawsStandInfo/entity/PDMCSarLawsStandInfo.java @@ -0,0 +1,73 @@ +package com.adc.da.slrs.pdmcSarLawsStandInfo.entity; + +import com.adc.da.base.entity.BaseEntity; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * PDMCSarLawsStandInfo对象 + * + * @author wxy + * @date 2023-05-09 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@Accessors(chain = true) +@ApiModel(value = "PDMCSarLawsStandInfo对象",description = "") +@TableName("sar_standards_info") +public class PDMCSarLawsStandInfo extends BaseEntity { + private static final long serialVersionUID = 1L; + // 文件ID + @ApiModelProperty(value = "主键") + @TableId("ID") + private String id; + // 所属目录ID + @ApiModelProperty(value = "所属目录ID") + @TableField("MENU_ID") + private String menuId; + + @ApiModelProperty(value = "文件编号,政策编号") + @TableField("STAND_NUMBER") + private String standNumber; + + @ApiModelProperty(value = "中文名称") + @TableField("STAND_NAME") + private String standName; + + @ApiModelProperty(value = "英文名称") + @TableField("STAND_EN_NAME") + private String standEnName; + + @ApiModelProperty(value = "文本状态") + @TableField("TEXT_STATUS") + private String textState; + + @ApiModelProperty(value = "代替标准号") + @TableField("REPLACE_STAND_NUM") + private String replaceStandNum; + + @ApiModelProperty(value = "发文日期") + @TableField("ISSUE_TIME") + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + private String issueTime; + + @ApiModelProperty("实施日期") + @TableField("PUT_TIME") + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + private String putTime; + + @ApiModelProperty(value = "顺序编号") + @TableField(exist = false) + private Long sort; + + @ApiModelProperty(value = "链接") + @TableField(exist = false) + private String link; +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/pdmcSarLawsStandInfo/service/PDMCSarLawsStandInfoService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/pdmcSarLawsStandInfo/service/PDMCSarLawsStandInfoService.java new file mode 100644 index 00000000..ce24327b --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/pdmcSarLawsStandInfo/service/PDMCSarLawsStandInfoService.java @@ -0,0 +1,17 @@ +package com.adc.da.slrs.pdmcSarLawsStandInfo.service; + +import com.adc.da.slrs.pdmcSarLawsStandInfo.entity.PDMCSarLawsStandInfo; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.IService; + +import java.util.List; + +/** + * 对外接口Service:福田标准法规--标准法规库--国内标准法规 + * + * @author wxy + * @date 2023-05-09 + */ +public interface PDMCSarLawsStandInfoService extends IService { + Page getSarStandardsInfo(Page page); +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/pdmcSarLawsStandInfo/service/impl/PDMCSarLawsStandInfoServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/pdmcSarLawsStandInfo/service/impl/PDMCSarLawsStandInfoServiceImpl.java new file mode 100644 index 00000000..3fb7237a --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/pdmcSarLawsStandInfo/service/impl/PDMCSarLawsStandInfoServiceImpl.java @@ -0,0 +1,26 @@ +package com.adc.da.slrs.pdmcSarLawsStandInfo.service.impl; + +import com.adc.da.slrs.pdmcSarLawsStandInfo.dao.PDMCSarLawsStandInfoDao; +import com.adc.da.slrs.pdmcSarLawsStandInfo.entity.PDMCSarLawsStandInfo; +import com.adc.da.slrs.pdmcSarLawsStandInfo.service.PDMCSarLawsStandInfoService; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 对外接口ServiceImpl:福田标准法规--标准法规库--国内标准法规 + * + * @author wxy + * @date 2023-05-09 + */ +@Service +public class PDMCSarLawsStandInfoServiceImpl extends ServiceImpl implements PDMCSarLawsStandInfoService { + + @Override + public Page getSarStandardsInfo(Page page) { + + return baseMapper.getSarStandardsInfo(page); + } +} diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/pdmcSarLawsStandInfo/PDMCSarLawsStandInfoMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/pdmcSarLawsStandInfo/PDMCSarLawsStandInfoMapper.xml new file mode 100644 index 00000000..9be62eb4 --- /dev/null +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/pdmcSarLawsStandInfo/PDMCSarLawsStandInfoMapper.xml @@ -0,0 +1,39 @@ + + + + + + + + + + + + + + + + + + + + + DISTINCT sar_standards_info.ID, + sar_stand_menu.MENU_ID as MENU_ID, + sar_standards_info.STAND_NUMBER as STAND_NUMBER, + sar_standards_info.STAND_NAME as STAND_NAME, + sar_standards_info.STAND_EN_NAME as STAND_EN_NAME, + sar_standards_info.STAND_STATE as TEXT_STATE, + sar_standards_info.ISSUE_TIME as ISSUE_TIME, + sar_standards_info.REPLACE_STAND_NUM as REPLACE_STAND_NUM, + concat('https://srms.foton.com.cn/#/otherStandardDetails/',sar_standards_info.ID,'/',sar_standards_info.STAND_TYPE,'_STAND') as LINK + + + + +