package com.artfess.rescue.patrol.model;

import com.artfess.base.entity.BizDelModel;
import com.artfess.rescue.patrol.vo.VideoMonitorPointInfoVO;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableName;
import java.time.LocalDate;
import java.util.List;

import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableField;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
 * 视频巡检任务表
 *
 * @company 阿特菲斯信息技术有限公司
 * @author 系统管理员
 * @since 2024-08-02
 */
@ApiModel(value="BizInspectionVideoTask对象", description="视频巡检任务表")
@TableName("biz_inspection_video_task")
@Data
public class BizInspectionVideoTask extends BizDelModel<BizInspectionVideoTask> {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "主键_ID")
    @TableId(value = "ID_", type = IdType.ASSIGN_ID)
    private String id;

    @ApiModelProperty(value = "任务单据号")
    @TableField("TASK_NO_")
    private String taskNo;

    @ApiModelProperty(value = "任务名称")
    @TableField("TASK_NAME_")
    private String taskName;

    @ApiModelProperty(value = "视频巡检配置ID")
    @TableField("TASK_CONF_ID_")
    private String taskConfId;

    @ApiModelProperty(value = "巡检日期")
    @TableField("INSPECT_DATE_")
    private LocalDate inspectDate;

    @ApiModelProperty(value = "巡检类型，【字典】，1：日常，2：专项")
    @TableField("TYPE_")
    private Integer type;

    @ApiModelProperty(value = "用户ids")
    @TableField("USER_IDS_")
    private String userIds;

    @ApiModelProperty(value = "巡检人员名单")
    @TableField("USER_NAMES_")
    private String userNames;

    @ApiModelProperty(value = "所属路段ID")
    @TableField("ROAD_ID_")
    private String roadId;

    @ApiModelProperty(value = "所属路段名称")
    @TableField("ROAD_NAME_")
    private String roadName;

    @ApiModelProperty(value = "任务状态，【字典】 0：未开始，1：巡查中，2：巡查完成")
    @TableField("TASK_STATUS_")
    private Integer taskStatus;

    @ApiModelProperty(value = "巡检配置视频点关联信息")
    @TableField(exist = false)
    private List<VideoMonitorPointInfoVO>taskVideo;

    @ApiModelProperty(value = "当前巡查到的视频序号")
    @TableField(exist = false)
    private Integer rank;
}
