package com.sooka.sponest.monitor.device.domain;

import com.ruoyi.common.datascope.base.domain.BaseBusinessEntity;
import com.sooka.sponest.monitor.camera.domain.CameraCodeAndNameVO;
import lombok.Data;
import com.ruoyi.common.core.annotation.Excel;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;

/**
 * 监测设备对象 centermonitor_t_monitoring_device
 *
 * @author ruoyi
 * @date 2023-03-14
 */
@Data
public class CentermonitorTMonitoringDevice extends BaseBusinessEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 注释
     */
    private String id;

    /**
     * 设备名称
     */
    @Excel(name = "设备名称")
    private String deviceName;

    /**
     * 品牌
     */
    @Excel(name = "品牌")
    private String brand;

    /**
     * 设备编码
     */
    @Excel(name = "设备编码")
    private String deviceCode;

    /**
     * 经度
     */
    @Excel(name = "经度")
    private String longitude;

    /**
     * 纬度
     */
    @Excel(name = "纬度")
    private String latitude;

    /**
     * 所属部门ID
     */
//    @Excel(name = "所属部门ID")
    private String deptId;

    /**
     * 所属部门
     */
    @Excel(name = "所属部门")
    private String deptName;

    //设备通用名称,在线,离线(数),数据(数)
    private String dictName;
    private Integer deviceOnline;
    private Integer deviceOffline;
    private String sensorType;
    private Integer dataCount;

    /**
     * 工作状态
     */
    @Excel(name = "工作状态", readConverterExp = "0=在线,1=离线")
    private String workingStatus;

    /**
     * 设备类型
     */
    @Excel(name = "设备类型", readConverterExp = "1=水质环境,2=土壤墒情,3=污染源,4=病虫害监测,5=大气监测,6=水压监测,7=水流速,8=水尺")
    private String deviceType;

    /**
     * 预警阈值
     */
    @Excel(name = "预警阈值")
    private Integer warnLine;

    /**
     * 负责人
     */
    @Excel(name = "负责人")
    private String charger;

    /**
     * 电话
     */
    @Excel(name = "电话")
    private String chargerTel;

    private String workingStatusText;

    private String deviceTypeText;

    /**
     * 备注
     */
    @Excel(name = "备注")
    private String remark;

    /**
     * 所属区域
     */
    @Excel(name = "所属区域")
    private String address;

    /**
     * 告警状态
     */
    private String openWarn;

    /**
     * 可用系统
     */
    private List<CentermonitorTMonitoringDevice> forSystem = new ArrayList<>();

    private String type;

    private String typeName;

    /**
     * 该属性用于回显监控设备数据
     * */
    private Map<String, Object> data;

    /**
     * 该属性用于回显监控设备阈值
     * */
    private Map<String, Object> threshold;

    /**
     * 传感器图片
     * */
    private List<String> deviceImages;

    private List<String> deviceImagesList;

    /**
     * 传感器的监测数据
     */
    private Map<String, Object> sensorDetectionList;

    private Map<String, Object> deviceList;

    private List<String> cameraCodeList;

    private String cameraCode;

    private String cameraName;

    private List<CameraCodeAndNameVO> cameras;

}
