package com.njcn.supervision.pojo.vo.survey;

import com.njcn.db.bo.BaseEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.time.LocalDate;

/**
 * <p>
 * 普测测试的管理表
 * </p>
 *
 * @author hongawen
 * @since 2024-05-30
 */
@Data
public class SurveyTestVO extends BaseEntity implements Serializable {

    private static final long serialVersionUID = 1L;


    /**
     * 普测测试管理表id
     */
    private String id;

    /**
     * 普测计划表id
     */
    private String planId;

    /**
     * 普测计划名称
     */
    private String planName;

    /**
     * 0 关联系统内变电站；1 用户手动输入变电站
     */
    private Integer customSubstationFlag;

    /**
     * 变电站台账ID或者用户手动输入的变电站名称
     */
    private String substation;

    /**
     * 变电站名称
     */
    private String substationName;

    /**
     * 变电站电压等级
     */
    private String voltageLevel;

    /**
     * 计划开始时间
     */
    private LocalDate planStartTime;

    /**
     * 计划结束时间
     */
    private LocalDate planEndTime;

    /**
     * 负责单位id
     */
    private String deptId;

    /**
     * 负责单位名称
     */
    private String deptName;

    /**
     * 计划完成时间
     */
    private LocalDate completeTime;

    /**
     * 测试负责人
     */
    private String completeBy;

    /**
     * 测试报告
     */
    private String testReport;

    /**
     * 技术监督报告
     */
    private String supervisionReport;

    /**
     * 其他报告
     */
    private String otherReport;

    /**
     * 是否有问题 0 没有问题 1 有问题
     */
    private Integer problemFlag;

    /**
     * 问题描述
     */
    private String problemDetail;

    /**
     * 测试审批状态(1:审批中；2：审批通过；3：审批不通过；4：已取消)
     */
    private Integer status;

    /**
     * 流程实例id
     */
    private String processInstanceId;

    /**
     * 历史流程id列表
     */
    private String historyInstanceId;


    /**
     * 是否发起警告单(0：否；1：是)
     */
    private Integer initiateWarningFlag;

    /**
     * 监督类型
     */
    @ApiModelProperty(value = "监督类型")
    private String supvType;

    /**
     * 监督对象名称
     */
    @ApiModelProperty(value = "监督对象名称")
    private String supvObjectName;

    /**
     * 状态：0-删除 1-正常
     */
    private Integer state;

    @ApiModelProperty(value = "状态：0-未解决 1-已解决")
    private Integer dealState;

    @ApiModelProperty(value = "采取措施")
    private String takeStep;

    @ApiModelProperty(value = "处理成效报告")
    private String reportPath;
    private String reformAdvice;

}
