package com.zksy.dispatch.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.time.LocalDateTime;

/**
 * 初判核实表
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@TableName(value = "dis_event_verify", schema = "app_user")
public class DisEventVerify {

    @TableId(value = "id", type = IdType.AUTO)
    @ApiModelProperty("主键ID")
    private Long id;

    @ApiModelProperty("关联统一事件主表ID（dis_event.id）")
    private Long relEventId;

    @ApiModelProperty("关联接报ID")
    private Long reportId;

    @ApiModelProperty("事件编号")
    private String eventNo;

    @ApiModelProperty("事件类别")
    private String category;

    @ApiModelProperty("事件级别")
    @TableField("\"level\"")
    private String level;

    @ApiModelProperty("地点")
    private String location;

    @ApiModelProperty("描述")
    private String description;

    @ApiModelProperty("判定时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private LocalDateTime judgeTime;

    @ApiModelProperty("核实人")
    private String verifier;

    @ApiModelProperty("核实时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private LocalDateTime verifyTime;

    @ApiModelProperty("核实意见")
    private String opinion;

    @ApiModelProperty("是否属实")
    private String isReal;

    @ApiModelProperty("事件ID")
    private String eventId;

    @ApiModelProperty("状态（待核实/已核实）")
    private String status;

    @ApiModelProperty("创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private LocalDateTime createTime;

    @ApiModelProperty("更新时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private LocalDateTime updateTime;

    @TableLogic(value = "0", delval = "2")
    @ApiModelProperty("删除标志（0=正常 2=删除）")
    private String delFlag;
}
