package com.njcn.supervision.pojo.po.device;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.njcn.db.bo.BaseEntity;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.format.annotation.DateTimeFormat;

import java.time.LocalDate;

/**
 * Description:
 * Date: 2024/5/10  18:16【需求编号】
 *
 * @author clam
 * @version V1.0.0
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@TableName(value = "supervision_dev_main_report")
public class SupervisionDevMainReportPO extends BaseEntity {
    /**
     * id
     */
    @TableId(value = "id", type = IdType.ASSIGN_UUID)
    private String id;

    /**
     * 填报人
     */
    @TableField(value = "reporter")
    private String reporter;

    /**
     * 填报日期
     */
    @TableField(value = "report_date")
    private LocalDate reportDate;

    /**
     * 填报部门
     */
    @TableField(value = "org_id")
    private String orgId;

    /**
     * 工程预期投产日期
     */
    @TableField(value = "expected_production_date")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private LocalDate expectedProductionDate;

    /**
     * 所属地市
     */
    @TableField(value = "city")
    private String city;

    /**
     * 用户状态
     */
    @TableField(value = "user_status")
    private String userStatus;
    /**
     * 关联用户id
     */
    @TableField(value = "user_id")
    private String userId;

    /**
     * 用户名称
     */
    @TableField(value = "user_name")
    private String userName;
    /**
     *监测点台账信息
     */
    @TableField(value = "line_file_path")
    private String lineFilePath;
    /**
     * 台终端账信息文件
     */
    @TableField(value = "device_file_path")
    private String deviceFilePath;

    /**
     * 验收检验报告
     */
    @TableField(value = "acceptance_inspection_report")
    private String acceptanceInspectionReport;

    /**
     * 验收检验报告单
     */
    @TableField(value = "acceptance_inspection_report_single")
    private String acceptanceInspectionReportSingle;

    /**
     * 型式实验报告
     */
    @TableField(value = "type_experiment_report")
    private String typeExperimentReport;

    /**
     * 出厂检验报告
     */
    @TableField(value = "factory_inspection_report")
    private String factoryInspectionReport;

    /**
     * 性能检测报告
     */
    @TableField(value = "performance_test_report")
    private String performanceTestReport;

    /**
     * 信息安全检测报告
     */
    @TableField(value = "information_security_test_report")
    private String informationSecurityTestReport;

    /**
     * 其他附件
     */
    @TableField(value = "other_attachments")
    private String otherAttachments;

    /**
     * 流程实例的编号
     */
    @TableField(value = "process_instance_id")
    private String processInstanceId;

    /**
     * 流程实例的编号
     */
    @TableField(value = "history_instance_id")
    private String historyInstanceId;

    /**
     * 1:审批中；2：审批通过；3：审批不通过；4：已取消
     */
    @TableField(value = "status")
    private Integer status;


    /**
     * 状态：0-删除 1-正常
     */
    @TableField(value = "State")
    private Integer state;

    /**
     * 状态：0：系统建档 1：外部导入
     */
    @TableField(value = "import_type")
    private Integer importType;
}
