

package com.lutao.entity;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.lutao.annotate.Validation;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.time.LocalDateTime;

/**
 * 危险行为识别信息记录
 *
 * @author guoyc
 * @date 2023-07-20 10:58:39
 */
@Data
@TableName("dangerous_act_record")
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "危险行为识别信息记录")
public class DangerousActRecord extends Model<DangerousActRecord> {

    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    @TableId
    @ApiModelProperty(value="主键")
    private Integer id;

    /**
     * 原始id
     */
    @ApiModelProperty(value="原始id")
    @Validation(message = "dangerous_act_record表{id}不能为空")
    private String originId;

    /**
     * 设施名称
     */
    @ApiModelProperty(value="设施名称")
    private String facilityName;

    @ApiModelProperty(value = "设施编码")
    private String facilityCode;

    @ApiModelProperty(value = "设备名称")
    private String equipName;

    @ApiModelProperty(value = "设备编码")
    private String equipCode;

    /**
     * 报警行为名称
     */
    @ApiModelProperty(value="报警行为名称")
    @Validation(message = "dangerous_act_record表{alarm_action_name}不能为空")
    private String alarmActionName;

    @ApiModelProperty(value = "报警行为编码 1.人员脱岗，2.吸烟，3.烟火，4.检修作业未放置灭火器，5.非佩戴安全帽，6.非法闯入")
    @Validation(message = "dangerous_acr_record表{alarm_action_code}不能为空")
    private String alarmActionCode;

    /**
     * 摄像机编号
     */
    @ApiModelProperty(value="摄像机编号")
    @Validation(message = "dangerous_act_record表{camera_int}不能为空")
    private String cameraInt;

    /**
     * 报警图片地址
     */
    @ApiModelProperty(value="报警图片地址")
    @Validation(message = "dangerous_act_record表{alarm_picture_url}不能为空")
    private String alarmPictureUrl;

    /**
     * 报警时间
     */
    @ApiModelProperty(value="报警时间")
    @Validation(message = "dangerous_act_record表{alarm_time}不能为空")
    private LocalDateTime alarmTime;

    /**
     * 报警处理时间
     */
    @ApiModelProperty(value="报警处理时间")
    private LocalDateTime reviewTime;

    /**
     * 报警处理人
     */
    @ApiModelProperty(value="报警处理人")
    private String reviewUser;

    /**
     * 报警处理状态,0 未处理  1处理中  2已处理
     */
    @ApiModelProperty(value="报警处理状态,0 未处理  1处理中  2已处理")
    @Validation(message = "dangerous_act_record表{review_status}不能为空")
    private Integer reviewStatus;

    /**
     * 系统平台id
     */
    @ApiModelProperty(value="系统平台id")
    private String pfId;

    /**
     * 应用id
     */
    @ApiModelProperty(value="应用id")
    private String appId;

    /**
     * 平台编码
     */
    @ApiModelProperty(value="平台编码")
    @Validation(message = "dangerous_act_record表{platform_code}不能为空")
    private String platformCode;

    /**
     * 平台名称
     */
    @ApiModelProperty(value="平台名称")
    private String platformName;

    /**
     * 平台id
     */
    @ApiModelProperty(value="平台id")
    private String platformId;

    /**
     * 创建时间
     */
    @ApiModelProperty(value="创建时间")
    private LocalDateTime createDate;

    /**
     * 创建人姓名
     */
    @ApiModelProperty(value="创建人姓名")
    private String createBy;

    /**
     * 修改时间
     */
    @ApiModelProperty(value="修改时间")
    private LocalDateTime updateDate;

    /**
     * 修改人
     */
    @ApiModelProperty(value="修改人")
    private String updateBy;

    @ApiModelProperty(value = "数据收集时间")
    @TableField(fill = FieldFill.INSERT)
    private LocalDateTime createTime;

    @ApiModelProperty(value = "数据更新时间")
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;
}
