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

import java.math.BigDecimal;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

import cn.afterturn.easypoi.excel.annotation.Excel;
import lombok.Data;

/**
 * <p>
 * AnnualLibImportDTO
 * </p>
 *
 * @author WendyYang
 * @since 13:46 2023/2/13
 */
@Data
public class AnnualLibExportDTO {

    @NotNull(message = "年度投资额不能为空")
    @Excel(name = "年度投资额",groupName = "2023年计划")
    private BigDecimal annualPlanAmount;

    @NotNull(message = "自由资金不能为空")
    @Excel(name = "自有资金",groupName = "资金来源")
    private BigDecimal declareHaveAmount;
    @Excel(name = "政府投资-本级财政资金")
    @NotNull(message = "政府投资-本级财政不能为空")
    private BigDecimal declareGovOwnFinanceAmount;
    @Excel(name = "政府投资-上级补助资金")
    @NotNull(message = "政府投资-上级补助资金不能为空")
    private BigDecimal declareGovSuperiorFinanceAmount;
    @Excel(name = "银行贷款")
    @NotNull(message = "银行贷款不能为空")
    private BigDecimal declareBankLendingAmount;
    @Excel(name = "其他")
    @NotNull(message = "其他不能为空")
    private BigDecimal declareOtherAmount;

    @Excel(name = "一季度",groupName = "进度和支付计划")
    @NotBlank(message = "一季度不能为空")
    private String firstQuarter;
    @Excel(name = "二季度")
    @NotBlank(message = "二季度不能为空")
    private String secondQuarter;
    @Excel(name = "三季度")
    @NotBlank(message = "三季度不能为空")
    private String thirdQuarter;
    @Excel(name = "四季度")
    @NotBlank(message = "四季度不能为空")
    private String fourthQuarter;

    @NotNull(message = "序号不能为空")
    @Excel(name = "序号")
    private Integer serialNumber;

    @Excel(name = "项目id")
    @NotNull(message = "项目ID不能为空")
    private Long projectId;

    @Excel(name = "项目名称")
    @NotBlank(message = "项目名称不能为空")
    private String projectName;

    @NotBlank(message = "建设内容不能为空")
    @Excel(name = "建设内容")
    private String projectIntroduction;

    @NotBlank(message = "建设依据不能为空")
    @Excel(name = "建设依据")
    private String buildBasis;

    @Excel(name = "建设性质")
    @NotBlank(message = "建设性质不能为空")
    private String isFirst;

    @Excel(name = "建设起止年限(填写到月)")
    @NotBlank(message = "建设起止年限不能为空")
    private String buildCycle;

    @NotBlank(message = "总投资不能为空")
    @Excel(name = "总投资")
    private BigDecimal declaredAmount;

    @Excel(name = "建设单位")
    @NotBlank(message = "建设单位不能为空")
    private String buildUnitName;

    @Excel(name = "项目联系人")
    @NotBlank(message = "项目联系人不能为空")
    private String contactName;

    @Excel(name = "项目分管领导")
    @NotBlank(message = "项目分管领导不能为空")
    private String responsibleMan;

    @Excel(name = "备注")
    private String projectRemarks;

}
