fuliqi
2024-11-29 ae6fd06555845067b72a0b094126c858275a5bd9
business/src/main/java/com/ycl/domain/vo/ProjectInfoVO.java
@@ -1,5 +1,7 @@
package com.ycl.domain.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ycl.domain.entity.File;
import com.ycl.domain.entity.ProjectInfo;
import com.ycl.system.domain.base.AbsVo;
import io.swagger.annotations.ApiModel;
@@ -14,6 +16,7 @@
import java.util.Arrays;
import java.util.Date;
import java.util.List;
import java.util.stream.Collectors;
/**
 * 项目管理基础信息表展示
@@ -64,7 +67,7 @@
    /** 主管部门(对应审批部门id) */
    @ApiModelProperty("主管部门(对应审批部门id)")
    private List<Long> competentDepartmentList;
    private String competentDepartment;
    /** 行政区域 */
    @ApiModelProperty("行政区域")
    private String area;
@@ -72,7 +75,7 @@
    /** 管理归口  (0基本建设(发改),  1更新改造(经信),  2单纯购置(发改),  3信息化(发改),  4其他投资) */
    @ApiModelProperty("管理归口  (0基本建设(发改),  1更新改造(经信),  2单纯购置(发改),  3信息化(发改),  4其他投资)")
    private List<String> managementCentralizationList;
    private String managementCentralization;
    /** 项目审批类型 */
    @ApiModelProperty("项目审批类型")
    private String projectApprovalType;
@@ -92,14 +95,17 @@
    /** 立项时间 */
    @ApiModelProperty("立项时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createProjectTime;
    /** 计划开工时间 */
    @ApiModelProperty("计划开工时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date planStartTime;
    /** 计划竣工时间 */
    @ApiModelProperty("计划竣工时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date planCompleteTime;
    /** 中标单位 */
@@ -112,6 +118,7 @@
    /** 中标时间 */
    @ApiModelProperty("中标时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date winTime;
    /** 详细地址 */
@@ -138,14 +145,6 @@
    @ApiModelProperty("联系方式")
    private String contact;
    /** 创建时间 */
    @ApiModelProperty("创建时间")
    private Date gmtCreateTime;
    /** 更新时间 */
    @ApiModelProperty("更新时间")
    private Date gmtUpdateTime;
    /** 更新人 */
    @ApiModelProperty("更新人")
    private Long updateBy;
@@ -154,7 +153,17 @@
    @ApiModelProperty("创建人")
    private Long createBy;
    // TODO 关联其它几张表
    /** 状态码 */
    @ApiModelProperty("状态码")
    private String projectColorCode;
    @ApiModelProperty("文件")
    private List<File> fileList;
    private Long processId;
    private ProjectInvestmentInfoVO projectInvestmentInfo;
    private ProjectInvestmentFundingVO projectInvestmentFunding;
    private ProjectUnitRegistrationInfoVO projectUnitRegistrationInfo;
    private ProjectInvestmentPolicyComplianceVO projectInvestmentPolicyCompliance;
    public static ProjectInfoVO getVoByEntity(@NonNull ProjectInfo entity, ProjectInfoVO vo) {
        if(vo == null) {
@@ -164,18 +173,32 @@
        //主管部门转成list
        String competentDepartment = entity.getCompetentDepartment();
        if(!StringUtils.isBlank(competentDepartment)){
            List<Long> competentDepartmentList = new ArrayList<>();
            String[] split = competentDepartment.split(",");
            for (String s : split) {
                Long.parseLong(s);
            }
            List<Long> list = Arrays.stream(competentDepartment.split(","))
                    .map(Long::parseLong)
                    .collect(Collectors.toList());
            vo.setCompetentDepartmentList(list);
        }
        //管理归口转换
        String managementCentralization = entity.getManagementCentralization();
        if(!StringUtils.isBlank(managementCentralization)){
            Arrays.asList(managementCentralization.split(","));
            vo.setManagementCentralizationList(Arrays.asList(managementCentralization.split(",")));
        }
        return vo;
    }
    //转换字符串集合字段
    public static void transform(@NonNull ProjectInfoVO vo) {
        //主管部门转成list
        String competentDepartment = vo.getCompetentDepartment();
        if(!StringUtils.isBlank(competentDepartment)){
            List<Long> list = Arrays.stream(competentDepartment.split(","))
                    .map(Long::parseLong)
                    .collect(Collectors.toList());
            vo.setCompetentDepartmentList(list);
        }
        //管理归口转换
        String managementCentralization = vo.getManagementCentralization();
        if(!StringUtils.isBlank(managementCentralization)){
            vo.setManagementCentralizationList(Arrays.asList(managementCentralization.split(",")));
        }
    }
}