package com.artfess.rescue.patrol.model;

import cn.afterturn.easypoi.excel.annotation.Excel;
import com.artfess.base.entity.BizDelModel;
import com.baomidou.mybatisplus.annotation.IdType;
import com.artfess.base.entity.BaseModel;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import java.time.LocalDate;
import java.time.LocalTime;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;

import com.fasterxml.jackson.annotation.JsonIgnore;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * 视频巡检记录
 *
 * @company 阿特菲斯信息技术有限公司
 * @author 系统管理员
 * @since 2025-04-11
 */
@ApiModel(value="BizVideoInspection对象", description="视频巡检记录")
@EqualsAndHashCode(callSuper = true)
@TableName("biz_video_inspection")
@Data
public class BizVideoInspection extends BizDelModel<BizVideoInspection> {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "主键ID")
    @TableId(value = "id_", type = IdType.ASSIGN_ID)
    private String id;

    @ApiModelProperty(value = "所属区域ID")
    @TableField("region_id_")
    private String regionId;

    @ApiModelProperty(value = "所属区域名称")
    @TableField("region_name_")
    private String regionName;

    @ApiModelProperty(value = "所属路段名称")
    @TableField("road_name_")
    @Excel(name = "所属路段名称")
    private String roadName;

    @ApiModelProperty(value = "检查类型（1：正常轮询，2：抽查）")
    @TableField("check_type_")
    @Excel(name = "检查类型（1.正常轮询，2抽查）")
    private String checkType;

    @ApiModelProperty(value = "巡检类型（1:路段广场，2：隧道）")
    @TableField("Inspection_type_")
    @Excel(name = "巡检类型（1.路段广场，2.隧道）")
    private String inspectionType;

    @ApiModelProperty(value = "巡检地点名称")
    @TableField("place_name_")
    @Excel(name = "巡检地点名称")
    private String placeName;

    @ApiModelProperty(value = "巡检日期")
    @TableField("Inspection_date_")
    @Excel(name = "巡检日期",format = "yyyy/MM/dd")
    private LocalDate inspectionDate;

    @ApiModelProperty(value = "巡检时间")
    @TableField("Inspection_time_")
    private LocalTime inspectionTime;

    @ApiModelProperty(value = "巡检结果（1.正常，2.异常）")
    @TableField("Inspection_result_")
    @Excel(name = "巡检结果（1.正常，2.异常）")
    private String inspectionResult;

    @ApiModelProperty(value = "异常处理记录")
    @TableField("result_record_")
    @Excel(name = "异常处理记录")
    private String resultRecord;

    @ApiModelProperty(value = "记录人")
    @TableField("record_user_")
    @Excel(name = "记录人")
    private String recordUser;

    @ApiModelProperty(value = "备注")
    @TableField("remark_")
    @Excel(name = "备注")
    private String remark;

    @ApiModelProperty(value = "租户ID")
    @TableField("tenant_id_")
    private String tenantId;

    @TableField(exist = false)
    @ApiModelProperty(value = "巡检时间，后端导入解析用，前段忽略")
    @Excel(name = "巡检时间")
    @JsonIgnore
    private String inspectionTimeStr;
}
