package com.yfd.platform.modules.patroltask.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 java.time.LocalDateTime;
import java.io.Serializable;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * <p>
 *
 * </p>
 *
 * @author zhengsl
 * @since 2024-03-28
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("iis_defect_device")
public class DefectDevice implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 缺陷库id
     */
    @TableId(value = "defect_id", type = IdType.ASSIGN_UUID)
    private String defectId;

    /**
     * 是否归入缺陷库，0：未归入；1：归入；默认0
     */
    private String isDefectFlag;

    /**
     * 巡视结果id
     */
    private String resultId;

    /**
     * 巡视任务执行ID
     */
    private String taskTodoId;

    /**
     * 巡视点位顺序号
     */
    private Integer orderNum;

    /**
     * 巡视设备编号
     */
    private String patroldeviceCode;

    /**
     * 巡视设备名称
     */
    private String patroldeviceName;

    /**
     * 巡视设备对应通道编号
     */
    private String patroldeviceChannelcode;

    /**
     * 巡视设备名称
     */
    private String patroldevicePos;

    /**
     * 判别用基准图
     */
    private String patroldeviceBaseimage;

    /**
     * 辅助识别的基准图有限区域
     */
    private String patroldeviceEffectiveregion;

    /**
     * 巡视日期
     */
    private String patroldeviceDate;

    /**
     * 任务编码
     */
    private String taskCode;

    /**
     * 任务名称
     */
    private String taskName;

    /**
     * 部件ID
     */
    private String componentId;

    /**
     * 部件名称
     */
    private String componentName;

    /**
     * 区域id
     */
    private String areaId;

    /**
     * 区域名称
     */
    private String areaName;

    /**
     * 间隔ID
     */
    private String bayId;

    /**
     * 间隔名称
     */
    private String bayName;

    /**
     * 主设备ID
     */
    private String mainDeviceId;

    /**
     * 主设备名称
     */
    private String mainDeviceName;

    /**
     * 设备点位id
     */
    private String deviceId;

    /**
     * 设备点位名称
     */
    private String deviceName;

    /**
     * 实物ID
     */
    private String materialId;

    /**
     * 0x01视频设备，0x02机器人，0x03无人机，0x04声纹装置，0x05在线检测
     */
    private String dataType;

    /**
     * 识别类型：1:表计读取；2:位置状态识别；3:设备外观查看；4:红外测温；5:声音检测；6:闪烁检测11:局放超声波检测12:局放地电压检测13:局放特高频检测101:环境温度检测102:环境湿度检测103:氧气浓度检测104SF6浓度检测
     */
    private String recognitionType;

    /**
     * 1:红外图谱；2:可见光照片；3:音频4:视频5:识别图片，存在多个文件，文件类型用逗号分隔
     */
    private String fileType;

    /**
     * 存在多个文件，路径用逗号分隔，并与文件类型一一对应
     */
    private String filePath;

    /**
     * 图像识别结果类型：meter    仪表读数
     */
    private String valueType;

    /**
     * 值
     */
    private String value;

    /**
     * 单位
     */
    private String unit;

    /**
     * 识别结果
     */
    @TableField("`desc`")
    private String desc;

    /**
     * 置信度
     */
    private String conf;

    /**
     * 时间
     */
    private String time;

    /**
     * 检测标注图片
     */
    private String defectFilePath;

    /**
     * 格式：x1,y1;x2,y2;x3,y3;x4,y4等为图片文件的像素点；多个报警框的左上角和右下角坐标
     */
    private String rectangle;

    /**
     * 0未巡视， 1：已巡视(图像已采集)，2：已完成（图像已分析）；  3:设备检修中；  4:巡视失败；   5:已修正  6:采集失败；
     */
    private String flag;

    /**
     * 0为失败，1为成功，2为判别异常
     */
    private String valid;

    /**
     * 修正值
     */
    private String reviseValue;

    /**
     * 修正单位
     */
    private String reviseUnit;

    /**
     * 修正结果，0：正常；1：异常
     */
    private String reviseValid;

    /**
     * 0：否；1：是
     */
    private String isAlarm;

    /**
     * 数据状态
     */
    private String datastatus;

    /**
     * 修改人
     */
    private String lastmodifier;

    /**
     * 最近修改时间
     */
    private LocalDateTime lastmodifydate;

    /**
     * 变电站编号
     */
    private String stationCode;

    /**
     * 备用1
     */
    private String custom1;

    /**
     * 备用2
     */
    private String custom2;

    /**
     * 备用3
     */
    private String custom3;

    /**
     * 机器人/无人机编码
     */
    private String robotCode;

    /**
     * 机器人识别结果
     */
    private String robotResult;


}
