package com.huatek.busi.entity;

import com.huatek.torch.sql.annotation.FieldName;
import com.huatek.torch.sql.annotation.Id;
import com.huatek.torch.sql.annotation.TableName;
import com.huatek.torch.sql.beans.Pojo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springframework.format.annotation.DateTimeFormat;

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

@Data
@EqualsAndHashCode(callSuper = false)
@TableName("x_lab_arrester_report_basis_data")
@ApiModel("离线实验报告基础数据")
public class LabBlqReportBasisData extends Pojo implements Serializable {

    private static final long serialVersionUID = 1L;

    @Id("id")
    @ApiModelProperty(value = "id", name = "唯一主键标识", required = true)
    private String id;

    @FieldName("ref_id")
    @ApiModelProperty(value = "refId", name = "关联附件编号")
    private String refId;

    @FieldName("m_id")
    @ApiModelProperty(value = "mId", name = "主报告编号")
    private String mId;

    @FieldName("test_item")
    @ApiModelProperty(value = "testItem", name = "试验项目")
    private String testItem;

    @FieldName("test_equ")
    @ApiModelProperty(value = "testEqu", name = "试验设备")
    private String testEqu;

    @FieldName("checker")
    @ApiModelProperty(value = "checker", name = "校核者")
    private String checker;

    @FieldName("test_date")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @ApiModelProperty(value = "testDate", name = "试验日期")
    private LocalDate testDate;

    @FieldName("maintenance_unit")
    @ApiModelProperty(value = "maintenanceUnit", name = "检修单位")
    private String maintenanceUnit;

    @FieldName("test_staff")
    @ApiModelProperty(value = "testStaff", name = "试验人员")
    private String testStaff;

    @FieldName("test_conclusion")
    @ApiModelProperty(value = "testConclusion", name = "试验结论")
    private String testConclusion;

    @FieldName("create_user")
    @ApiModelProperty(value = "createUser", name = "创建者")
    private String createUser;

    @FieldName("create_time")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "createTime", name = "创建时间")
    private LocalDateTime createTime;

    @FieldName("update_user")
    @ApiModelProperty(value = "updateUser", name = "更新者")
    private String updateUser;

    @FieldName("update_time")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "updateTime", name = "更新时间")
    private LocalDateTime updateTime;

    @FieldName("deleted")
    @ApiModelProperty(value = "deleted", name = "是否删除 0否 1是")
    private String deleted;
}
