Browse Source

增加政务信息系统改造情况

tags/24080901
WendyYang 11 months ago
parent
commit
77fb242c93
21 changed files with 286 additions and 55 deletions
  1. +3
    -3
      hz-pm-api/src/main/java/com/hz/pm/api/external/model/enumeration/MhUnitStripEnum.java
  2. +2
    -2
      hz-pm-api/src/main/java/com/hz/pm/api/external/model/enumeration/MhUnitTypeEnum.java
  3. +0
    -12
      hz-pm-api/src/main/java/com/hz/pm/api/gov/manage/GovProjectCollectionManage.java
  4. +2
    -2
      hz-pm-api/src/main/java/com/hz/pm/api/projectdeclared/converter/ApplicationConverter.java
  5. +7
    -0
      hz-pm-api/src/main/java/com/hz/pm/api/projectdeclared/manage/DeclaredProjectManage.java
  6. +2
    -0
      hz-pm-api/src/main/java/com/hz/pm/api/projectdeclared/model/entity/ProjectDraft.java
  7. +6
    -4
      hz-pm-api/src/main/java/com/hz/pm/api/projectdeclared/model/vo/ProjectDraftVO.java
  8. +0
    -18
      hz-pm-api/src/main/java/com/hz/pm/api/projectlib/controller/NdProjectPaymentPlanController.java
  9. +52
    -0
      hz-pm-api/src/main/java/com/hz/pm/api/projectlib/entity/ProjectGovSystemReplaceInfos.java
  10. +58
    -2
      hz-pm-api/src/main/java/com/hz/pm/api/projectlib/manage/ProjectLibManage.java
  11. +16
    -0
      hz-pm-api/src/main/java/com/hz/pm/api/projectlib/mapper/ProjectGovSystemReplaceInfosMapper.java
  12. +5
    -0
      hz-pm-api/src/main/java/com/hz/pm/api/projectlib/mapper/ProjectGovSystemReplaceInfosMapper.xml
  13. +28
    -0
      hz-pm-api/src/main/java/com/hz/pm/api/projectlib/model/dto/GovSystemReplaceInfoDTO.java
  14. +6
    -4
      hz-pm-api/src/main/java/com/hz/pm/api/projectlib/model/dto/ProjectDTO.java
  15. +50
    -0
      hz-pm-api/src/main/java/com/hz/pm/api/projectlib/model/enumeration/GovSystemReplaceTypeEnum.java
  16. +5
    -6
      hz-pm-api/src/main/java/com/hz/pm/api/projectlib/model/enumeration/ProjectTypeEnum.java
  17. +5
    -1
      hz-pm-api/src/main/java/com/hz/pm/api/projectlib/model/vo/ProjectDetailVO.java
  18. +16
    -0
      hz-pm-api/src/main/java/com/hz/pm/api/projectlib/service/IProjectGovSystemReplaceInfosService.java
  19. +20
    -0
      hz-pm-api/src/main/java/com/hz/pm/api/projectlib/service/impl/ProjectGovSystemReplaceInfosServiceImpl.java
  20. +2
    -0
      hz-pm-api/src/main/java/com/hz/pm/api/user/manage/MhUnitManage.java
  21. +1
    -1
      hz-pm-gen/src/main/java/com/hz/pm/gen/config/CodeGen.java

+ 3
- 3
hz-pm-api/src/main/java/com/hz/pm/api/external/model/enumeration/MhUnitStripEnum.java View File

@@ -15,11 +15,11 @@ import lombok.Getter;
@AllArgsConstructor
public enum MhUnitStripEnum {

GOV_COMPANY("国企"),
GOV_COMPANY("国"),

PARTY_GOV("党政"),
PARTY_GOV("党政领域"),

INDUSTRY("行业");
INDUSTRY("重点行业");

private final String name;



+ 2
- 2
hz-pm-api/src/main/java/com/hz/pm/api/external/model/enumeration/MhUnitTypeEnum.java View File

@@ -28,8 +28,8 @@ public enum MhUnitTypeEnum {
DEPT("D", "部门"),
OFFICE("O", "科室"),
SASAC("G", "国资委"),
TWO_GOV_COMPANY("C", "一级国企"),
ONE_GOV_COMPANY("E", "二级国企"),
ONE_GOV_COMPANY("C", "一级国企"),
TWO_GOV_COMPANY("E", "二级国企"),
KEY_INDUSTRY("K", "重点行业"),
INDUSTRY_MANAGE_DEPT("Z", "行业主管部门"),
INDUSTRY_COMPANY_UNIT("Q", "行业企事业单位");


+ 0
- 12
hz-pm-api/src/main/java/com/hz/pm/api/gov/manage/GovProjectCollectionManage.java View File

@@ -188,12 +188,6 @@ public class GovProjectCollectionManage {
.le(Objects.nonNull(req.getCreateOnMax()), GovBizProjectBaseinfo::getTongTime, req.getCreateOnMax())
.eq(StringUtils.isNotBlank(req.getProjectType()), GovBizProjectBaseinfo::getBaseProjType, req.getProjectType())
.in(CollUtil.isNotEmpty(req.getProjectCodes()), GovBizProjectBaseinfo::getBaseProjId, req.getProjectCodes())
.in(Objects.nonNull(req.getOldProjectType()) && ProjectTypeEnum.BUILD.getCode().equals(req.getOldProjectType()),
GovBizProjectBaseinfo::getBaseProjType, Lists.newArrayList(ProjectTypeNewEnum.FIRST_BUILD.getCode(),
ProjectTypeNewEnum.SJ_BUILD.getCode(), ProjectTypeNewEnum.SZ_BUILD.getCode()))
.in(Objects.nonNull(req.getOldProjectType()) && ProjectTypeEnum.DEV_OPS.getCode().equals(req.getOldProjectType()),
GovBizProjectBaseinfo::getBaseProjType, Lists.newArrayList(ProjectTypeNewEnum.NEW_OPERA.getCode(),
ProjectTypeNewEnum.XU_OPERA.getCode()))
.eq(GovBizProjectBaseinfo::getDeleted, Boolean.FALSE)
.orderByDesc(GovBizProjectBaseinfo::getBizTime);
baseinfoService.page(page, wrapper);
@@ -306,12 +300,6 @@ public class GovProjectCollectionManage {
.gt(Objects.nonNull(req.getCreateOnMin()), GovBizProjectDraft::getTongTime, req.getCreateOnMin())
.le(Objects.nonNull(req.getCreateOnMax()), GovBizProjectDraft::getTongTime, req.getCreateOnMax())
.eq(StringUtils.isNotBlank(req.getProjectType()), GovBizProjectDraft::getBaseProjType, req.getProjectType())
.in(Objects.nonNull(req.getOldProjectType()) && ProjectTypeEnum.BUILD.getCode().equals(req.getOldProjectType()),
GovBizProjectDraft::getBaseProjType, Lists.newArrayList(ProjectTypeNewEnum.FIRST_BUILD.getCode(),
ProjectTypeNewEnum.SJ_BUILD.getCode(), ProjectTypeNewEnum.SZ_BUILD.getCode()))
.in(Objects.nonNull(req.getOldProjectType()) && ProjectTypeEnum.DEV_OPS.getCode().equals(req.getOldProjectType()),
GovBizProjectDraft::getBaseProjType, Lists.newArrayList(ProjectTypeNewEnum.NEW_OPERA.getCode(),
ProjectTypeNewEnum.XU_OPERA.getCode()))
.eq(GovBizProjectDraft::getDeleted, Boolean.FALSE)
.eq(GovBizProjectDraft::getCreateId, user.getUserId())
.orderByDesc(GovBizProjectDraft::getBizTime);


+ 2
- 2
hz-pm-api/src/main/java/com/hz/pm/api/projectdeclared/converter/ApplicationConverter.java View File

@@ -87,10 +87,10 @@ public class ApplicationConverter {

if(Lists.newArrayList(ProjectTypeNewEnum.FIRST_BUILD.getCode(),
ProjectTypeNewEnum.SJ_BUILD.getCode(),ProjectTypeNewEnum.SZ_BUILD.getCode()).contains(projectType)){
return ProjectTypeEnum.BUILD.getCode();
return ProjectTypeEnum.RECONSTRUCTION.getCode();
}else if(Lists.newArrayList(ProjectTypeNewEnum.NEW_OPERA.getCode(),
ProjectTypeNewEnum.XU_OPERA.getCode()).contains(projectType)){
return ProjectTypeEnum.DEV_OPS.getCode();
return ProjectTypeEnum.COMPREHENSIVE_INTEGRATION.getCode();
}
return null;
}


+ 7
- 0
hz-pm-api/src/main/java/com/hz/pm/api/projectdeclared/manage/DeclaredProjectManage.java View File

@@ -31,6 +31,7 @@ import com.hz.pm.api.projectdeclared.model.vo.ProjectDraftVO;
import com.hz.pm.api.projectdeclared.service.IProjectDraftService;
import com.hz.pm.api.projectlib.helper.ProjectHelper;
import com.hz.pm.api.projectlib.manage.ProjectLibManage;
import com.hz.pm.api.projectlib.model.dto.GovSystemReplaceInfoDTO;
import com.hz.pm.api.projectlib.model.dto.ProjectDTO;
import com.hz.pm.api.projectlib.model.dto.ProjectPaymentPlanDTO;
import com.hz.pm.api.projectlib.model.entity.Project;
@@ -304,6 +305,9 @@ public class DeclaredProjectManage {
if (StrUtil.isNotBlank(draft.getDynamicForm())) {
vo.setDynamicForm(JSON.parseObject(draft.getDynamicForm(), Map.class));
}
if (StrUtil.isNotBlank(draft.getGovSystemReplaceInfos())) {
vo.setSystemReplaceInfos(JSONUtil.toList(draft.getGovSystemReplaceInfos(), GovSystemReplaceInfoDTO.class));
}
return vo;
}

@@ -344,6 +348,9 @@ public class DeclaredProjectManage {
draft.setCreateOn(LocalDateTime.now());
}
}
if (CollUtil.isNotEmpty(projectInfo.getSystemReplaceInfos())) {
draft.setGovSystemReplaceInfos(JSONUtil.toJsonStr(projectInfo.getSystemReplaceInfos()));
}
draft.setDraftType(draftType.getCode());
draft.setUpdateOn(LocalDateTime.now());
draft.setUserId(user.getUserIdStr());


+ 2
- 0
hz-pm-api/src/main/java/com/hz/pm/api/projectdeclared/model/entity/ProjectDraft.java View File

@@ -358,4 +358,6 @@ public class ProjectDraft implements Serializable {
@ApiModelProperty("暂存类型:1 项目申报、2 立项备案")
private Integer draftType;

private String govSystemReplaceInfos;

}

+ 6
- 4
hz-pm-api/src/main/java/com/hz/pm/api/projectdeclared/model/vo/ProjectDraftVO.java View File

@@ -3,6 +3,7 @@ package com.hz.pm.api.projectdeclared.model.vo;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.hz.pm.api.common.compare.Compare;
import com.hz.pm.api.projectlib.model.dto.GovSystemReplaceInfoDTO;
import com.hz.pm.api.projectlib.model.dto.ProjectPaymentPlanDTO;
import com.hz.pm.api.projectlib.model.entity.ProjectApplication;
import io.swagger.annotations.ApiModel;
@@ -26,14 +27,12 @@ import java.util.Map;
* @author zpf
* @since 2023-02-06
*/
@ApiModel(value = "NdProjectDraft对象", description = "")
@ApiModel(value = "NdProjectDraft对象")
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class ProjectDraftVO implements Serializable {

private static final long serialVersionUID = 1L;
public class ProjectDraftVO {

@ApiModelProperty("应用ID")
@TableId(type = IdType.AUTO)
@@ -382,4 +381,7 @@ public class ProjectDraftVO implements Serializable {
@ApiModelProperty("可研批复文件")
private String baseResearchReportApprovalFile;

@ApiModelProperty("政务系统改造情况")
private List<GovSystemReplaceInfoDTO> systemReplaceInfos;

}

+ 0
- 18
hz-pm-api/src/main/java/com/hz/pm/api/projectlib/controller/NdProjectPaymentPlanController.java View File

@@ -1,18 +0,0 @@
package com.hz.pm.api.projectlib.controller;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.stereotype.Controller;

/**
* <p>
* 前端控制器
* </p>
*
* @author WendyYang
* @since 2024-02-21
*/
@Controller
@RequestMapping("/api.projectlib/ndProjectPaymentPlan")
public class NdProjectPaymentPlanController {

}

+ 52
- 0
hz-pm-api/src/main/java/com/hz/pm/api/projectlib/entity/ProjectGovSystemReplaceInfos.java View File

@@ -0,0 +1,52 @@
package com.hz.pm.api.projectlib.entity;

import com.baomidou.mybatisplus.annotation.*;

import java.io.Serializable;
import java.time.LocalDateTime;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import io.swagger.models.auth.In;
import lombok.Data;

/**
* <p>
* 政务信息系统改造情况
* </p>
*
* @author WendyYang
* @since 2024-02-29
*/
@Data
@TableName("ND_PROJECT_GOV_SYSTEM_REPLACE_INFOS")
@ApiModel(value = "NdProjectGovSystemReplaceInfos对象")
public class ProjectGovSystemReplaceInfos implements Serializable {

private static final long serialVersionUID = 1L;

@TableId(value = "ID", type = IdType.AUTO)
private Long id;

@ApiModelProperty("替代前系统")
private String sourceSystem;

@ApiModelProperty("替代后系统")
private String targetSystem;

@ApiModelProperty("替代类型")
private Integer replaceType;

@ApiModelProperty("项目ID")
private Long projectId;

@ApiModelProperty("批次号")
private Integer batchNo;

@TableField(fill = FieldFill.INSERT)
private Long createBy;

@TableField(fill = FieldFill.INSERT)
private LocalDateTime createOn;

}

+ 58
- 2
hz-pm-api/src/main/java/com/hz/pm/api/projectlib/manage/ProjectLibManage.java View File

@@ -6,6 +6,7 @@ import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.lang.Assert;
import cn.hutool.core.util.NumberUtil;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
@@ -49,9 +50,11 @@ import com.hz.pm.api.projectdeclared.service.IOperationService;
import com.hz.pm.api.projectdeclared.service.IPreInsAcceptancePersonService;
import com.hz.pm.api.projectdeclared.service.IPurchaseService;
import com.hz.pm.api.projectdeclared.utils.GenerateProjectCodeUtil;
import com.hz.pm.api.projectlib.entity.ProjectGovSystemReplaceInfos;
import com.hz.pm.api.projectlib.handle.ProcessExecuteChainHandle;
import com.hz.pm.api.projectlib.helper.ProjectHelper;
import com.hz.pm.api.projectlib.model.constant.ProjectConstant;
import com.hz.pm.api.projectlib.model.dto.GovSystemReplaceInfoDTO;
import com.hz.pm.api.projectlib.model.dto.ProjectDTO;
import com.hz.pm.api.projectlib.model.dto.ProjectPaymentPlanDTO;
import com.hz.pm.api.projectlib.model.entity.*;
@@ -142,6 +145,7 @@ public class ProjectLibManage {
private final UserInfoHelper userInfoHelper;
private final IExpertReviewService expertReviewService;
private final ConstructionManage constructionManage;
private final IProjectGovSystemReplaceInfosService projectGovSystemReplaceInfosService;

public PageVo<ProjectLibListItemVO> projectLibList(ProjectListReq req) {
LambdaQueryWrapper<Project> query = ProjectHelper.projectQuery(req);
@@ -649,6 +653,36 @@ public class ProjectLibManage {
return project == null ? null : getProjectDetailLogic(project);
}

/**
* 获取政务信息系统改造情况
*
* @param projectId \
* @return \
*/
private List<GovSystemReplaceInfoDTO> getGovSystemReplaceInfos(Long projectId) {
Wrapper<ProjectGovSystemReplaceInfos> query = Wrappers.lambdaQuery(ProjectGovSystemReplaceInfos.class)
.eq(ProjectGovSystemReplaceInfos::getProjectId, projectId)
.orderByAsc(ProjectGovSystemReplaceInfos::getId)
.orderByAsc(ProjectGovSystemReplaceInfos::getBatchNo);
List<ProjectGovSystemReplaceInfos> govSystemReplaceInfos = projectGovSystemReplaceInfosService.list(query);
if (govSystemReplaceInfos.isEmpty()) {
return Collections.emptyList();
}
Map<Integer, List<ProjectGovSystemReplaceInfos>> replaceInfoGroup = CollUtils.group(govSystemReplaceInfos, ProjectGovSystemReplaceInfos::getBatchNo);
return replaceInfoGroup.entrySet().stream()
.sorted(Comparator.comparingInt(Map.Entry::getKey))
.map(w -> {
List<ProjectGovSystemReplaceInfos> currBatchValues = w.getValue();
ProjectGovSystemReplaceInfos firstReplaceInfo = currBatchValues.get(0);
GovSystemReplaceInfoDTO replaceInfo = new GovSystemReplaceInfoDTO();
replaceInfo.setReplaceType(firstReplaceInfo.getReplaceType());
replaceInfo.setTargetSystemName(firstReplaceInfo.getTargetSystem());
String systemNames = CollUtils.joinByComma(currBatchValues, ProjectGovSystemReplaceInfos::getSourceSystem);
replaceInfo.setTargetSystemName(systemNames);
return replaceInfo;
}).collect(Collectors.toList());
}

private ProjectDetailVO getProjectDetailLogic(Project project) {
ProjectDetailVO vo = new ProjectDetailVO();
BeanUtils.copyProperties(project, vo);
@@ -665,7 +699,7 @@ public class ProjectLibManage {
Map<Long, List<ProjectCoreBusinessIndicators>> coreBizMap = CollUtils.group(coreBizs, ProjectCoreBusinessIndicators::getApplicationId);
vo.setProjectApplications(CollUtils.convert(applications, app -> ProjectHelper.convertVOWithMap(app, coreBizMap)));
}
vo.setSystemReplaceInfos(getGovSystemReplaceInfos(project.getId()));
//审批信息
ProcessDetailReq req = new ProcessDetailReq();
req.setInstanceId(project.getInstCode());
@@ -854,6 +888,7 @@ public class ProjectLibManage {
if (projectService.save(project)) {
saveApplication(projectDto, project, null);
savePaymentPlans(project, projectDto.getPaymentPlanList());
saveGovSystemReplaceInfos(project, projectDto.getSystemReplaceInfos());
}
} else {
//否则是重新提交的 新生成一个新版本的项目
@@ -967,8 +1002,8 @@ public class ProjectLibManage {
*/
public Project newProjectWithVersion(ProjectDTO projectDto, Boolean isConstruct) {
Project oldProject = projectService.getById(projectDto.getId());
Assert.notNull(oldProject, "项目不存在!");
Project project = new Project();
VUtils.isTrue(Objects.isNull(oldProject)).throwMessage("项目不存在!");
BeanUtil.copyProperties(oldProject, project, CopyOptions.create()
.setIgnoreError(Boolean.TRUE).setIgnoreNullValue(Boolean.TRUE));
BeanUtil.copyProperties(projectDto, project, CopyOptions.create()
@@ -986,9 +1021,30 @@ public class ProjectLibManage {
projectService.reverseNewest(project.getProjectCode(), project.getId());
saveApplication(projectDto, project, isConstruct);
savePaymentPlans(project, projectDto.getPaymentPlanList());
saveGovSystemReplaceInfos(project, projectDto.getSystemReplaceInfos());
return project;
}

private void saveGovSystemReplaceInfos(Project project, List<GovSystemReplaceInfoDTO> govSystemReplaceInfos) {
if (CollUtil.isEmpty(govSystemReplaceInfos)) {
return;
}
List<ProjectGovSystemReplaceInfos> replaceInfos = new ArrayList<>();
for (int i = 0; i < govSystemReplaceInfos.size(); i++) {
GovSystemReplaceInfoDTO curr = govSystemReplaceInfos.get(i);
for (String systemName : curr.getSourceSystemNames()) {
ProjectGovSystemReplaceInfos replaceInfo = new ProjectGovSystemReplaceInfos();
replaceInfo.setProjectId(project.getId());
replaceInfo.setReplaceType(curr.getReplaceType());
replaceInfo.setSourceSystem(systemName);
replaceInfo.setTargetSystem(curr.getTargetSystemName());
replaceInfo.setReplaceType(i + 1);
replaceInfos.add(replaceInfo);
}
}
projectGovSystemReplaceInfosService.saveBatch(replaceInfos);
}

public Project saveProjectWithVersionAndStatus(ProjectDTO projectDto, Integer stageCode, Integer statusCode, Boolean isConstruct) {
Project oldProject = projectService.getById(projectDto.getId());
Project project = new Project();


+ 16
- 0
hz-pm-api/src/main/java/com/hz/pm/api/projectlib/mapper/ProjectGovSystemReplaceInfosMapper.java View File

@@ -0,0 +1,16 @@
package com.hz.pm.api.projectlib.mapper;

import com.hz.pm.api.projectlib.entity.ProjectGovSystemReplaceInfos;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;

/**
* <p>
* Mapper 接口
* </p>
*
* @author WendyYang
* @since 2024-02-29
*/
public interface ProjectGovSystemReplaceInfosMapper extends BaseMapper<ProjectGovSystemReplaceInfos> {

}

+ 5
- 0
hz-pm-api/src/main/java/com/hz/pm/api/projectlib/mapper/ProjectGovSystemReplaceInfosMapper.xml View File

@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.hz.pm.api.projectlib.mapper.ProjectGovSystemReplaceInfosMapper">

</mapper>

+ 28
- 0
hz-pm-api/src/main/java/com/hz/pm/api/projectlib/model/dto/GovSystemReplaceInfoDTO.java View File

@@ -0,0 +1,28 @@
package com.hz.pm.api.projectlib.model.dto;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.List;

/**
* <p>
* GovSystemReplaceInfoDTO
* </p>
*
* @author WendyYang
* @since 11:49 2024/2/29
*/
@Data
public class GovSystemReplaceInfoDTO {

@ApiModelProperty("替代前系统名称")
private List<String> sourceSystemNames;

@ApiModelProperty("被替代系统名称")
private String targetSystemName;

@ApiModelProperty("替代方式")
private Integer replaceType;

}

+ 6
- 4
hz-pm-api/src/main/java/com/hz/pm/api/projectlib/model/dto/ProjectDTO.java View File

@@ -14,7 +14,7 @@ import java.util.Map;

/**
* <p>
*
* 项目信息参数类
* </p>
*
* @author zpf
@@ -22,9 +22,7 @@ import java.util.Map;
*/
@Data
@ApiModel(value = "NdProjectDto")
public class ProjectDTO implements Serializable {

private static final long serialVersionUID = 1L;
public class ProjectDTO {

@ApiModelProperty("主键")
private Long id;
@@ -363,4 +361,8 @@ public class ProjectDTO implements Serializable {

@ApiModelProperty("立项依据证明材料")
private String baseProjBasisFile;

@ApiModelProperty("政务信息系统替代情况")
private List<GovSystemReplaceInfoDTO> systemReplaceInfos;

}

+ 50
- 0
hz-pm-api/src/main/java/com/hz/pm/api/projectlib/model/enumeration/GovSystemReplaceTypeEnum.java View File

@@ -0,0 +1,50 @@
package com.hz.pm.api.projectlib.model.enumeration;

import com.hz.pm.api.common.util.StrUtils;
import io.swagger.models.auth.In;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.Getter;

import java.util.Arrays;
import java.util.Optional;

/**
* <p>
* GovSystemReplaceTypeEnum
* </p>
*
* @author WendyYang
* @since 12:01 2024/2/29
*/
@Getter
@AllArgsConstructor
public enum GovSystemReplaceTypeEnum {

// 综合集成、改造提升、基础设施、统建应用、新建、暂缓

COMPREHENSIVE_INTEGRATION("综合集成", 1),
RECONSTRUCTION("改造提升", 2),
INFRASTRUCTURE("基础设施", 3),
UNIFIED_CONSTRUCTION_APPLICATION("统建应用", 4),
NEW_BUILT("新建", 5),
SUSPEND("暂缓", 6);

private final String val;

private final Integer code;


public static Optional<GovSystemReplaceTypeEnum> get(Integer code) {
return Arrays.stream(values())
.filter(w -> w.getCode().equals(code))
.findFirst();
}

public static String getVal(Integer code) {
return get(code)
.flatMap(w -> Optional.of(w.getVal()))
.orElse(StrUtils.EMPTY);
}

}

+ 5
- 6
hz-pm-api/src/main/java/com/hz/pm/api/projectlib/model/enumeration/ProjectTypeEnum.java View File

@@ -19,14 +19,13 @@ import java.util.Objects;
@AllArgsConstructor
@NoArgsConstructor
public enum ProjectTypeEnum {
/**
* 项目类型
*/
BUILD(1, "建设"),
DEV_OPS(2, "运维");

private Integer code;
RECONSTRUCTION("改造提升", 1),
COMPREHENSIVE_INTEGRATION("综合集成", 2),
NEW_BUILT("新增", 3);

private String desc;
private Integer code;

public static String getDesc(Integer code) {
if (Objects.isNull(code)) {


+ 5
- 1
hz-pm-api/src/main/java/com/hz/pm/api/projectlib/model/vo/ProjectDetailVO.java View File

@@ -6,7 +6,8 @@ import com.alibaba.fastjson.annotation.JSONField;
import com.hz.pm.api.common.compare.Compare;
import com.hz.pm.api.dashboard.model.vo.ProtraitProjectOutputVO;
import com.hz.pm.api.portrait.model.vo.TagVO;
import com.hz.pm.api.projectdeclared.model.vo.*;
import com.hz.pm.api.projectdeclared.model.vo.PurchaseFullInfoVO;
import com.hz.pm.api.projectlib.model.dto.GovSystemReplaceInfoDTO;
import com.hz.pm.api.projectlib.model.dto.ProjectPaymentPlanDTO;
import com.hz.pm.api.projectlib.model.enumeration.ProjectStatusEnum;
import com.hz.pm.api.projectlib.model.enumeration.ProjectTypeNewEnum;
@@ -551,4 +552,7 @@ public class ProjectDetailVO {
@ApiModelProperty("年度支付计划")
private List<ProjectPaymentPlanDTO> annualPaymentPlans;

@ApiModelProperty("政务信息系统改造情况")
private List<GovSystemReplaceInfoDTO> systemReplaceInfos;

}

+ 16
- 0
hz-pm-api/src/main/java/com/hz/pm/api/projectlib/service/IProjectGovSystemReplaceInfosService.java View File

@@ -0,0 +1,16 @@
package com.hz.pm.api.projectlib.service;

import com.hz.pm.api.projectlib.entity.ProjectGovSystemReplaceInfos;
import com.baomidou.mybatisplus.extension.service.IService;

/**
* <p>
* 服务类
* </p>
*
* @author WendyYang
* @since 2024-02-29
*/
public interface IProjectGovSystemReplaceInfosService extends IService<ProjectGovSystemReplaceInfos> {

}

+ 20
- 0
hz-pm-api/src/main/java/com/hz/pm/api/projectlib/service/impl/ProjectGovSystemReplaceInfosServiceImpl.java View File

@@ -0,0 +1,20 @@
package com.hz.pm.api.projectlib.service.impl;

import com.hz.pm.api.projectlib.entity.ProjectGovSystemReplaceInfos;
import com.hz.pm.api.projectlib.mapper.ProjectGovSystemReplaceInfosMapper;
import com.hz.pm.api.projectlib.service.IProjectGovSystemReplaceInfosService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;

/**
* <p>
* 服务实现类
* </p>
*
* @author WendyYang
* @since 2024-02-29
*/
@Service
public class ProjectGovSystemReplaceInfosServiceImpl extends ServiceImpl<ProjectGovSystemReplaceInfosMapper, ProjectGovSystemReplaceInfos> implements IProjectGovSystemReplaceInfosService {

}

+ 2
- 0
hz-pm-api/src/main/java/com/hz/pm/api/user/manage/MhUnitManage.java View File

@@ -1,10 +1,12 @@
package com.hz.pm.api.user.manage;

import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.hz.pm.api.common.util.StrUtils;
import com.hz.pm.api.external.model.enumeration.MhUnitStripEnum;
import com.hz.pm.api.external.model.enumeration.MhUnitTypeEnum;
import com.hz.pm.api.user.helper.MhUnitCache;
import com.hz.pm.api.user.model.dto.MhUnitTreeDTO;


+ 1
- 1
hz-pm-gen/src/main/java/com/hz/pm/gen/config/CodeGen.java View File

@@ -55,7 +55,7 @@ public class CodeGen {
}

public static void main(String[] args) {
generate("WendyYang", "projectlib", PATH_YYD, "nd_project_payment_plan");
generate("WendyYang", "projectlib", PATH_YYD, "nd_project_gov_system_replace_infos");
}

}

Loading…
Cancel
Save