package com.zksy.base.warning.domain;

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.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

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

@TableName(value = "warning_reason", schema = "app_user")
@Data
public class WarningReason implements Serializable {

    @TableId(value = "reason_id", type = IdType.ASSIGN_UUID)
    @ApiModelProperty("原因ID")
    private String reasonId;

    @TableField("reason_code")
    @ApiModelProperty("原因编码")
    private String reasonCode;

    @TableField("reason_name")
    @ApiModelProperty("原因名称")
    private String reasonName;

    @TableField("warning_type")
    @ApiModelProperty("预警类型")
    private String warningType;

    @TableField("warning_level")
    @ApiModelProperty("预警级别")
    private String warningLevel;

    @TableField("description")
    @ApiModelProperty("原因描述")
    private String description;

    @TableField("sort_order")
    @ApiModelProperty("排序")
    private Integer sortOrder;

    @TableField("status")
    @ApiModelProperty("状态（0-正常 1-停用）")
    private String status;

    @TableField("create_by")
    @ApiModelProperty("创建人")
    private String createBy;

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

    @TableField("update_by")
    @ApiModelProperty("更新人")
    private String updateBy;

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

    @TableField(exist = false)
    private static final long serialVersionUID = 1L;
}
