package com.njcn.gather.plan.pojo.vo;

import cn.afterturn.easypoi.excel.annotation.Excel;
import com.njcn.gather.pojo.constant.DetectionValidMessage;
import lombok.Data;

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

/**
 * @author caozehui
 * @data 2024-12-11
 */
@Data
public class AdPlanExcel {
    @Excel(name = "名称*", width = 40, needMerge = true, orderNum = "0")
    @NotBlank(message = DetectionValidMessage.NAME_NOT_BLANK)
    private String name;

    @Excel(name = "检测源*", width = 40, needMerge = true, orderNum = "1")
    @NotBlank(message = DetectionValidMessage.SOURC_NOT_BLANK)
    private String source;

    @Excel(name = "数据源*", width = 20, needMerge = true, orderNum = "2")
    @NotBlank(message = DetectionValidMessage.DATASOURCE_NOT_BLANK)
    private String datasourceId;

    @Excel(name = "脚本*", width = 40, needMerge = true, orderNum = "3")
    @NotBlank(message = DetectionValidMessage.SCRIPT_NOT_BLANK)
    private String scriptId;

    @Excel(name = "误差体系*", width = 40, needMerge = true, orderNum = "4")
    @NotBlank(message = DetectionValidMessage.ERRORSYS_NOT_BLANK)
    private String errorSysId;

    @Excel(name = "数据处理原则*", width = 20, needMerge = true, orderNum = "5")
    @NotBlank(message = DetectionValidMessage.DATA_RULE_NOT_BLANK)
    private String dataRule;

    @Excel(name = "是否做守时检测*", width = 20, replace = {"否_0", "是_1"}, needMerge = true, orderNum = "6")
    @NotNull(message = DetectionValidMessage.TIMECHECK_NOT_NULL)
    private Integer timeCheck;

    @Excel(name = "关联报告模板*", width = 20, replace = {"否_0", "是_1"}, needMerge = true, orderNum = "7")
    @NotNull(message = DetectionValidMessage.ASSOCIATE_REPORT_NOT_NULL)
    private Integer associateReport;

    @Excel(name = "报告模版（当关联报告模版为是时必填）", width = 40, needMerge = true, orderNum = "8")
    private String reportTemplateId;

//    @Excel(name = "检测状态*", width = 10, replace = {"未检_0", "检测中_1", "检测完成_2"}, needMerge = true, orderNum = "9")
//    @NotNull(message = DetectionValidMessage.TEST_STATE_NOT_NULL)
//    private Integer testState;
//
//    @Excel(name = "报告生成状态*", width = 15, replace = {"未生成_0", "部分生成_1", "全部生成_2"}, needMerge = true, orderNum = "10")
//    @NotNull(message = DetectionValidMessage.REPORT_STATE_NOT_NULL)
//    private Integer reportState;
//
//    @Excel(name = "检测结果*", width = 10, replace = {"不符合_0", "符合_1", "未检_2"}, needMerge = true, orderNum = "11")
//    @NotNull(message = DetectionValidMessage.CHECK_RESULT_STATE_NOT_NULL)
//    private Integer result;
}
