package com.yanzhu.jh.video.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 设备数据对象 dev_ai_project_data
 * 
 * @author JiangYuQi
 * @date 2023-09-27
 */
public class DevAiProjectData extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键 */
    private Long id;

    /** 项目主键 */
    @Excel(name = "项目主键")
    private Long projectId;

    private String projectName;

    /** 部门主键 */
    @Excel(name = "部门主键")
    private Long deptId;

    private String deptName;

    /** 设备ID */
    @Excel(name = "设备ID")
    private Long deviceId;

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

    /** 设备网口 0 IP 地址 */
    @Excel(name = "设备网口 0 IP 地址")
    private String deviceAddr0;

    /** 设备网口 1 IP 地址 */
    @Excel(name = "设备网口 1 IP 地址")
    private String deviceAddr1;

    /** 设备的序列号 */
    @Excel(name = "设备的序列号")
    private String serialNumber;

    /** 相机的序列号 */
    @Excel(name = "相机的序列号")
    private String ipcSerialNum;

    /** 相机的 IP 地址 */
    @Excel(name = "相机的 IP 地址")
    private String ipcAddr;

    /** 行为分析图片地址 */
    @Excel(name = "行为分析图片地址")
    private String imageUrl;

    /** 通道号，用来唯一标识任务 ID */
    @Excel(name = "通道号，用来唯一标识任务 ID")
    private Long channelId;

    /** 通道名称 */
    @Excel(name = "通道名称")
    private String channelName;

    /** 报警类型 */
    @Excel(name = "报警类型")
    private Long alarmType;

    /** 告警 ID */
    @Excel(name = "告警 ID")
    private Long alarmId;

    /** 上报间隔 */
    @Excel(name = "上报间隔")
    private String reportRate;

    /** 采集时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "采集时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date timestamp;

    /** 左上角 X 坐标 */
    @Excel(name = "左上角 X 坐标")
    private String leftTopX;

    /** 左上角 Y 坐标 */
    @Excel(name = "左上角 Y 坐标")
    private String leftTopY;

    /** 右下角 X 坐标 */
    @Excel(name = "右下角 X 坐标")
    private String rightBtmX;

    /** 右下角 Y 坐标 */
    @Excel(name = "右下角 Y 坐标")
    private String rightBtmY;

    /** 当前告警区域人数 */
    @Excel(name = "当前告警区域人数")
    private Long personNum;

    /** 绊线进入人数数量 */
    @Excel(name = "绊线进入人数数量")
    private Long inNum;

    /** 绊线离开人数数量 */
    @Excel(name = "绊线离开人数数量")
    private Long outNum;

    /** 车牌号 */
    @Excel(name = "车牌号")
    private Long plateNo;

    /** ValueType 为 1 时，代表明火检测；ValueType 为 2 时，代表烟雾检测； */
    @Excel(name = "ValueType 为 1 时，代表明火检测；ValueType 为 2 时，代表烟雾检测；")
    private String valueType;

    private String alarmTypeName;

    /** 告警短视频的地址 */
    @Excel(name = "告警短视频的地址")
    private String alarmVideourl;

    /** 告警短视频的名称 */
    @Excel(name = "告警短视频的名称")
    private String alarmVideoName;

    /** 人脸比对结果 */
    @Excel(name = "人脸比对结果")
    private String compareResult;

    /** 数据状态 */
    @Excel(name = "数据状态")
    private String isDel;

    public String getProjectName() {
        return projectName;
    }

    public void setProjectName(String projectName) {
        this.projectName = projectName;
    }

    public String getDeptName() {
        return deptName;
    }

    public void setDeptName(String deptName) {
        this.deptName = deptName;
    }

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setProjectId(Long projectId) 
    {
        this.projectId = projectId;
    }

    public Long getProjectId() 
    {
        return projectId;
    }
    public void setDeptId(Long deptId) 
    {
        this.deptId = deptId;
    }

    public Long getDeptId() 
    {
        return deptId;
    }
    public void setDeviceId(Long deviceId) 
    {
        this.deviceId = deviceId;
    }

    public Long getDeviceId() 
    {
        return deviceId;
    }
    public void setDeviceName(String deviceName) 
    {
        this.deviceName = deviceName;
    }

    public String getDeviceName() 
    {
        return deviceName;
    }
    public void setDeviceAddr0(String deviceAddr0) 
    {
        this.deviceAddr0 = deviceAddr0;
    }

    public String getDeviceAddr0() 
    {
        return deviceAddr0;
    }
    public void setDeviceAddr1(String deviceAddr1) 
    {
        this.deviceAddr1 = deviceAddr1;
    }

    public String getDeviceAddr1() 
    {
        return deviceAddr1;
    }
    public void setSerialNumber(String serialNumber) 
    {
        this.serialNumber = serialNumber;
    }

    public String getSerialNumber() 
    {
        return serialNumber;
    }
    public void setIpcSerialNum(String ipcSerialNum) 
    {
        this.ipcSerialNum = ipcSerialNum;
    }

    public String getIpcSerialNum() 
    {
        return ipcSerialNum;
    }
    public void setIpcAddr(String ipcAddr) 
    {
        this.ipcAddr = ipcAddr;
    }

    public String getIpcAddr() 
    {
        return ipcAddr;
    }
    public void setImageUrl(String imageUrl) 
    {
        this.imageUrl = imageUrl;
    }

    public String getImageUrl() 
    {
        return imageUrl;
    }
    public void setChannelId(Long channelId) 
    {
        this.channelId = channelId;
    }

    public Long getChannelId() 
    {
        return channelId;
    }
    public void setChannelName(String channelName) 
    {
        this.channelName = channelName;
    }

    public String getChannelName() 
    {
        return channelName;
    }
    public void setAlarmType(Long alarmType) 
    {
        this.alarmType = alarmType;
    }

    public Long getAlarmType() 
    {
        return alarmType;
    }
    public void setAlarmId(Long alarmId) 
    {
        this.alarmId = alarmId;
    }

    public Long getAlarmId() 
    {
        return alarmId;
    }
    public void setReportRate(String reportRate) 
    {
        this.reportRate = reportRate;
    }

    public String getReportRate() 
    {
        return reportRate;
    }
    public void setTimestamp(Date timestamp) 
    {
        this.timestamp = timestamp;
    }

    public Date getTimestamp() 
    {
        return timestamp;
    }
    public void setLeftTopX(String leftTopX) 
    {
        this.leftTopX = leftTopX;
    }

    public String getLeftTopX() 
    {
        return leftTopX;
    }
    public void setLeftTopY(String leftTopY) 
    {
        this.leftTopY = leftTopY;
    }

    public String getLeftTopY() 
    {
        return leftTopY;
    }
    public void setRightBtmX(String rightBtmX) 
    {
        this.rightBtmX = rightBtmX;
    }

    public String getRightBtmX() 
    {
        return rightBtmX;
    }
    public void setRightBtmY(String rightBtmY) 
    {
        this.rightBtmY = rightBtmY;
    }

    public String getRightBtmY() 
    {
        return rightBtmY;
    }
    public void setPersonNum(Long personNum) 
    {
        this.personNum = personNum;
    }

    public Long getPersonNum() 
    {
        return personNum;
    }
    public void setInNum(Long inNum) 
    {
        this.inNum = inNum;
    }

    public Long getInNum() 
    {
        return inNum;
    }
    public void setOutNum(Long outNum) 
    {
        this.outNum = outNum;
    }

    public Long getOutNum() 
    {
        return outNum;
    }
    public void setPlateNo(Long plateNo) 
    {
        this.plateNo = plateNo;
    }

    public Long getPlateNo() 
    {
        return plateNo;
    }
    public void setValueType(String valueType) 
    {
        this.valueType = valueType;
    }

    public String getValueType() 
    {
        return valueType;
    }
    public void setAlarmVideourl(String alarmVideourl) 
    {
        this.alarmVideourl = alarmVideourl;
    }

    public String getAlarmVideourl() 
    {
        return alarmVideourl;
    }
    public void setAlarmVideoName(String alarmVideoName) 
    {
        this.alarmVideoName = alarmVideoName;
    }

    public String getAlarmVideoName() 
    {
        return alarmVideoName;
    }
    public void setCompareResult(String compareResult) 
    {
        this.compareResult = compareResult;
    }

    public String getCompareResult() 
    {
        return compareResult;
    }
    public void setIsDel(String isDel) 
    {
        this.isDel = isDel;
    }

    public String getIsDel() 
    {
        return isDel;
    }

    public String getAlarmTypeName() {
        return alarmTypeName;
    }

    public void setAlarmTypeName(String alarmTypeName) {
        this.alarmTypeName = alarmTypeName;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("projectId", getProjectId())
            .append("deptId", getDeptId())
            .append("deviceId", getDeviceId())
            .append("deviceName", getDeviceName())
            .append("deviceAddr0", getDeviceAddr0())
            .append("deviceAddr1", getDeviceAddr1())
            .append("serialNumber", getSerialNumber())
            .append("ipcSerialNum", getIpcSerialNum())
            .append("ipcAddr", getIpcAddr())
            .append("imageUrl", getImageUrl())
            .append("channelId", getChannelId())
            .append("channelName", getChannelName())
            .append("alarmType", getAlarmType())
            .append("alarmId", getAlarmId())
            .append("reportRate", getReportRate())
            .append("timestamp", getTimestamp())
            .append("leftTopX", getLeftTopX())
            .append("leftTopY", getLeftTopY())
            .append("rightBtmX", getRightBtmX())
            .append("rightBtmY", getRightBtmY())
            .append("personNum", getPersonNum())
            .append("inNum", getInNum())
            .append("outNum", getOutNum())
            .append("plateNo", getPlateNo())
            .append("valueType", getValueType())
            .append("alarmVideourl", getAlarmVideourl())
            .append("alarmVideoName", getAlarmVideoName())
            .append("compareResult", getCompareResult())
            .append("createTime", getCreateTime())
            .append("isDel", getIsDel())
            .toString();
    }
}
