package com.jeeplus.modules.filing.approvalStage.entity;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.jeeplus.common.utils.excel.annotation.ExcelField;
import com.jeeplus.core.persistence.DataEntity;

import java.util.Date;

public class EarlyStage extends DataEntity<EarlyStage> {
    /**
     * 项目编码
     * */
    private String projectCode;

    /**
     * 单体编码
     * */
    private String monomerCode;

    /**
     * 项目名称
     * */
    private String entryName;
    /**
     * 核准文号
     * */
    private String approvalNumber;
    /**
     * 核准日期
     * */
    private Date dateOfApproval;
    /**
     * 核准金额
     * */
    private String approvedAmount;

    /**
     * 核准附件
     */
    private String approvedAnnex;
    /**
     * 可研批复文号
     * */
    private String replyNo;
    /**
     * 可研批复日期
     * */
    private Date approvalDate;
    /**
     * 可研静态态投资金额
     * */
    private String staticInvestment;
    /**
     * 可研动态投资金额
     * */
    private String dynamicInvestment;

    /**
     * 可研附件
     */
    private String studyAppendix;

    /**
     * 父级id
     */
    private String parentId;

    /**
     * 建设规模（变电容量）万伏安
     * */
    private String constructionScaleVA;
    /**
     * 建设规模（线路长度）千米
     * */
    private String constructionScaleKM;
    /**
     * 铁塔数量/钢管杆数量
     * */
    private String numberOf;
    /**
     * 导线型号及双回否型号
     * */
    private String conductorType;
    /**
     * 导线型号及双回否长度
     * */
    private String conductorLength;
    /**
     * 变压器来源新购/利旧，主变来源的变电站
     * */
    private String theSource;
    /**
     * 模块化建设方案
     * */
    private String modularConstructionScheme;
    /**
     * 工程难点描述
     * */
    private String descriptionOf;
    /**
     * 里程碑开工日期
     * */
    private Date milestoneStartDate;
    /**
     * 里程碑投产日期
     * */
    private Date milestoneCommissioningDate;
    /**
     * 内控开工日期
     * */
    private Date startDate;
    /**
     * 内控投产日期
     * */
    private Date internalControl;
    /**
     * 主设备最早到货时间
     * */
    private Date earliestArrival;
    /**
     * 线路塔材到货计划
     * */
    private Date arrivalPlan;

    @ExcelField(title="项目编码", align=2, sort=1)
    public String getProjectCode() {
        return projectCode;
    }

    public void setProjectCode(String projectCode) {
        this.projectCode = projectCode;
    }

    @ExcelField(title="单体编码", align=2, sort=2)
    public String getMonomerCode() {
        return monomerCode;
    }

    public void setMonomerCode(String monomerCode) {
        this.monomerCode = monomerCode;
    }

    @ExcelField(title="项目名称", align=2, sort=3)
    public String getEntryName() {
        return entryName;
    }

    public void setEntryName(String entryName) {
        this.entryName = entryName;
    }

    @ExcelField(title="核准文号", align=2, sort=4)
    public String getApprovalNumber() {
        return approvalNumber;
    }

    public void setApprovalNumber(String approvalNumber) {
        this.approvalNumber = approvalNumber;
    }

    @JsonFormat(pattern = "yyyy-MM-dd")
    @ExcelField(title="核准日期", align=2, sort=5)
    public Date getDateOfApproval() {
        return dateOfApproval;
    }

    public void setDateOfApproval(Date dateOfApproval) {
        this.dateOfApproval = dateOfApproval;
    }

    @ExcelField(title="核准金额", align=2, sort=6)
    public String getApprovedAmount() {
        return approvedAmount;
    }

    public void setApprovedAmount(String approvedAmount) {
        this.approvedAmount = approvedAmount;
    }

    public String getApprovedAnnex() {
        return approvedAnnex;
    }

    public void setApprovedAnnex(String approvedAnnex) {
        this.approvedAnnex = approvedAnnex;
    }

    @ExcelField(title="可研批复文号", align=2, sort=7)
    public String getReplyNo() {
        return replyNo;
    }

    public void setReplyNo(String replyNo) {
        this.replyNo = replyNo;
    }

    @JsonFormat(pattern = "yyyy-MM-dd")
    @ExcelField(title="可研批复日期", align=2, sort=8)
    public Date getApprovalDate() {
        return approvalDate;
    }

    public void setApprovalDate(Date approvalDate) {
        this.approvalDate = approvalDate;
    }

    @ExcelField(title="可研静态态投资金额", align=2, sort=9)
    public String getStaticInvestment() {
        return staticInvestment;
    }

    public void setStaticInvestment(String staticInvestment) {
        this.staticInvestment = staticInvestment;
    }

    @ExcelField(title="可研动态投资金额", align=2, sort=10)
    public String getDynamicInvestment() {
        return dynamicInvestment;
    }

    public void setDynamicInvestment(String dynamicInvestment) {
        this.dynamicInvestment = dynamicInvestment;
    }

    public String getStudyAppendix() {
        return studyAppendix;
    }

    public void setStudyAppendix(String studyAppendix) {
        this.studyAppendix = studyAppendix;
    }

    public String getParentId() {
        return parentId;
    }

    public void setParentId(String parentId) {
        this.parentId = parentId;
    }

    @ExcelField(title="建设规模（变电容量）万伏安", align=2, sort=11)
    public String getConstructionScaleVA() {
        return constructionScaleVA;
    }

    public void setConstructionScaleVA(String constructionScaleVA) {
        this.constructionScaleVA = constructionScaleVA;
    }

    @ExcelField(title="建设规模（线路长度）千米", align=2, sort=12)
    public String getConstructionScaleKM() {
        return constructionScaleKM;
    }

    public void setConstructionScaleKM(String constructionScaleKM) {
        this.constructionScaleKM = constructionScaleKM;
    }

    @ExcelField(title="铁塔数量/钢管杆数量", align=2, sort=13)
    public String getNumberOf() {
        return numberOf;
    }

    public void setNumberOf(String numberOf) {
        this.numberOf = numberOf;
    }

    @ExcelField(title="导线型号及双回否型号", align=2, sort=14)
    public String getConductorType() {
        return conductorType;
    }

    public void setConductorType(String conductorType) {
        this.conductorType = conductorType;
    }

    @ExcelField(title="导线型号及双回否长度", align=2, sort=15)
    public String getConductorLength() {
        return conductorLength;
    }

    public void setConductorLength(String conductorLength) {
        this.conductorLength = conductorLength;
    }

    @ExcelField(title="变压器来源新购/利旧，主变来源的变电站", align=2, sort=16)
    public String getTheSource() {
        return theSource;
    }

    public void setTheSource(String theSource) {
        this.theSource = theSource;
    }

    @ExcelField(title="模块化建设方案", align=2, sort=17)
    public String getModularConstructionScheme() {
        return modularConstructionScheme;
    }

    public void setModularConstructionScheme(String modularConstructionScheme) {
        this.modularConstructionScheme = modularConstructionScheme;
    }

    @ExcelField(title="工程难点描述", align=2, sort=18)
    public String getDescriptionOf() {
        return descriptionOf;
    }

    public void setDescriptionOf(String descriptionOf) {
        this.descriptionOf = descriptionOf;
    }

    @JsonFormat(pattern = "yyyy-MM-dd")
    @ExcelField(title="里程碑开工日期", align=2, sort=19)
    public Date getMilestoneStartDate() {
        return milestoneStartDate;
    }

    public void setMilestoneStartDate(Date milestoneStartDate) {
        this.milestoneStartDate = milestoneStartDate;
    }

    @JsonFormat(pattern = "yyyy-MM-dd")
    @ExcelField(title="里程碑投产日期", align=2, sort=20)
    public Date getMilestoneCommissioningDate() {
        return milestoneCommissioningDate;
    }

    public void setMilestoneCommissioningDate(Date milestoneCommissioningDate) {
        this.milestoneCommissioningDate = milestoneCommissioningDate;
    }

    @JsonFormat(pattern = "yyyy-MM-dd")
    @ExcelField(title="内控开工日期", align=2, sort=21)
    public Date getStartDate() {
        return startDate;
    }

    public void setStartDate(Date startDate) {
        this.startDate = startDate;
    }

    @JsonFormat(pattern = "yyyy-MM-dd")
    @ExcelField(title="内控投产日期", align=2, sort=22)
    public Date getInternalControl() {
        return internalControl;
    }

    public void setInternalControl(Date internalControl) {
        this.internalControl = internalControl;
    }

    @JsonFormat(pattern = "yyyy-MM-dd")
    @ExcelField(title="主设备最早到货时间", align=2, sort=23)
    public Date getEarliestArrival() {
        return earliestArrival;
    }

    public void setEarliestArrival(Date earliestArrival) {
        this.earliestArrival = earliestArrival;
    }

    @JsonFormat(pattern = "yyyy-MM-dd")
    @ExcelField(title="线路塔材到货计划", align=2, sort=24)
    public Date getArrivalPlan() {
        return arrivalPlan;
    }

    public void setArrivalPlan(Date arrivalPlan) {
        this.arrivalPlan = arrivalPlan;
    }
}
