package com.ningdatech.pmapi.projectlib.model.dto;

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

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

/**
 * <p>
 * 项目应用表
 * </p>
 *
 * @author WendyYang
 * @since 2023-02-05
 */
@ApiModel(value = "NdProjectApplication对象", description = "")
@Data
public class ProjectApplicationDTO implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty("应用ID")
    private Long id;

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

    @ApiModelProperty("是否初次建设 0否 1是")
    private Integer isFirst;

    @ApiModelProperty("应用名称")
    private String applicationName;

    @ApiModelProperty("创建时间")
    private LocalDateTime createOn;

    @ApiModelProperty("关联IRS现有应用")
    private String relatedExistsApplication;

    @ApiModelProperty("关联IRS现有应用-IRS应用编码")
    private String relatedExistsApplicationCode;

    @ApiModelProperty("应用类型")
    private String applicationType;

    @ApiModelProperty("建设层级 1:国家 2:省级 3:市级 4:县（市、区）")
    private Integer buildLevel;

    @ApiModelProperty("是否统建应用 0:否 1:是")
    private Integer isUniteBuild;

    @ApiModelProperty("统建类型 1:全省统建 2:全市统建")
    private Integer unionBuildKind;

    @ApiModelProperty("是否数改系统 0:否 1:是")
    private Integer isDigitalModification;

    @ApiModelProperty("数改系统")
    private String digitalModification;

    @ApiModelProperty("业务领域")
    private String bizDomain;

    @ApiModelProperty("发布端")
    private String publishSide;

    @ApiModelProperty("是否一本账场景应用名称 0:否 1:是")
    private Integer isAccountAppName;

    @ApiModelProperty("一本账应用名称")
    private String accountAppName;

    @ApiModelProperty("领域大脑一本账")
    private String domainBrainAccount;

    @ApiModelProperty("是否业务协同 0:否 1:是")
    private Integer isBizCooperate;

    @ApiModelProperty("业务协同描述")
    private String bizCooperateInfo;

    @ApiModelProperty("使用范围")
    private String usesRangeRemark;

    @ApiModelProperty("应用简介")
    private String applicationSummary;

    @ApiModelProperty("应用备注")
    private String applicationRemark;

    @ApiModelProperty("应用总投资测算明细-文件")
    private String applicationEstimateFile;

    @ApiModelProperty("等保级别 1:一级 2:二级 3:三级 4:四级 5:五级")
    private Integer secrecyGrade;

    @ApiModelProperty("密码测评级别 1:一级 2:二级 3:三级 4:四级 5:五级")
    private Integer passwordGrade;

    @ApiModelProperty("是否符合国家信息技术应用创新相关规范 0:否 1:是")
    private Integer nationalItSpec;

    @ApiModelProperty("是否使用政务云资源 0否 1是")
    private Integer useGovCloud;

    @ApiModelProperty("云资源类型")
    private String cloudsType;

    @ApiModelProperty("云资源基础规格")
    private String cloudsFoundationSpecifications;

    @ApiModelProperty("云资源台数")
    private Integer cloudsNumber;

    @ApiModelProperty("云资源用户描述")
    private String cloudsDescription;

    @ApiModelProperty("网络环境 1:政务内网 2:政务外网 3:互联网 4:业务专网 5:单机")
    private Integer netEnv;

    @ApiModelProperty("是否使用公共数据 0否 1是")
    private Integer useCommonData;

    @ApiModelProperty("数据名称")
    private String dataName;

    @ApiModelProperty("是否使用公共组件 0否 1是")
    private Integer useCommonComponent;

    @ApiModelProperty("使用的公共组件名称")
    private String commonComponents;

    @ApiModelProperty("是否产生公共组件 0否 1是")
    private Integer produceCommonComponent;

    @ApiModelProperty("预计产生组件名称")
    private String produceCommonComponents;

    @ApiModelProperty("试点任务名称")
    private String pilotTasksName;

    @ApiModelProperty("试点任务编号")
    private String pilotTasksCode;

    @ApiModelProperty("所属重大应用名称")
    private String importantTaskName;

    @ApiModelProperty("所属重大应用编号")
    private String importantTaskCode;

    @ApiModelProperty("所属子场景应用名称")
    private String subSceneApplicationName;

    @ApiModelProperty("试点文件")
    private String experimentsFile;

}
