package com.template.model.request;

import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;

/**
 * 上报信息
 */
@Data
public class payloadRequest {
    //region 烟雾报警上报
    /**
     * 烟感报警上报
     * 服务ID 1
     */
    /**
     * 烟雾监测状态
     * 烟雾报警：0
     * 烟雾报警解除：1
     */
    private Integer smoke_state;
    /**
     * 数值范围：0-100；
     * 单位：百分比/%；
     * 步长：1
     */
    private Integer smoke_value;
    /**
     * 电池电量
     * 数值范围：1-100；
     * 单位：百分比/%； 步长：1
     */
    private Integer battery_value;
    /**
     * 信号强度
     * 取值范围：-32768-32767 单位：0.1 分贝毫瓦
     * /0.1dBm；
     * 步长：1
     */
    private Integer signalPower;
    /**
     * 信噪比
     * 取值范围：-32768-32767； 单位：0.1 分贝/0.1dB；
     * 步长：1
     */
    private Integer snr;
    /**
     * 终端发射功率
     * 取值范围：-32768-32767； 单位：无；
     * 步长：1
     */
    private Integer tx_Power;
    /**
     * 小区位置信息
     * 取值范围：
     * -2147483648-2147483647；
     * 单位：无； 步长：1
     */
    private Integer cell_ID;
    //endregion

    //region 心跳
    /**
     * 心跳周期
     * 数值范围：0-24；
     * 单位：小时/h；
     * 步长：0.01
     */
    private Double heartbeat_time;
    /**
     * 厂家名称
     * 变长
     */
    private String manufacturer_name;
    /**
     * 终端型号
     * 变长
     */
    private String terminal_type;
    /**
     * 硬件版本
     * 变长
     */
    private String hardware_version;
    /**
     * 软件版本
     * 变长
     */
    private String software_version;
    /**
     * 终端设备识别号
     */
    @JsonProperty("IMEI")
    private String imei;
    /**
     * 终端sim卡标识
     */
    @JsonProperty("IMSI")
    private String imsi;
    /**
     * sim卡卡号
     */
    @JsonProperty("ICCID")
    private String iccid;
    /**
     * 电池电量
     * 数值范围：1-100；
     * 单位：百分比/%； 步长：1
     * private Integer battery_value;
     */
    /**
     * 数值范围：0-5；
     * 单位：伏特/V；
     * 步长：0.001
     */
    private Double battery_voltage;
    /**
     * 参考信号接收功率
     * 取值范围：-32768-32767；
     * 单位：0.1 分贝毫瓦
     * /0.1dBm；
     * 步长：1
     */
    private Integer rsrp;
    /**
     * 信号与干扰加噪声比
     * 取值范围：-32768-32767；
     * 单位：0.1 分贝/0.1dB；
     * 步长：1
     */
    private Integer sinr;
    /**
     * 物理小区标识
     * 取值范围：-32768-32767；
     * 单位：无；
     * 步长：1
     */
    private Integer pci;
    /**
     * 无线信号覆盖等级
     * 取值范围：-32768-32767；
     * 单位：无；
     * 步长：1
     */
    private Integer ecl;
    /**
     * 小区位置信息
     * 取值范围：
     * -2147483648-2147483647；
     * 单位：无； 步长：1
     * private Integer cell_ID;
     */
    //endregion

    //region 烟感参数上报
    /**
     * 温度
     * 数值范围：-15~100；
     * 单位：℃
     * 4字节
     * 步长：1
     */
    private Integer temperature;
    /**
     * 温度监测状态
     * 0：正常；
     * 1：高温报警；
     * 2：故障；
     */
    private Integer tempState;
    /**
     * 温度阈值
     * 数值范围:45~75
     * 单位：℃
     * 4字节
     * 步长：1
     */
    private Integer temperature_threshold;
    /**
     * 迷宫污染度
     * 数值范围:0~4096
     * 单位：ADC
     * 4字节
     * 步长：1
     */
    private Integer labyrinth_pollution_level;
    /**
     * 传感器采样ADC
     * 数值范围:0~4096
     * 单位：ADC
     * 4字节
     * 步长：1
     */
    private Integer smoke_sample;
    /**
     * 标定环境无烟ADC
     * 数值范围:0~4096
     * 单位：ADC
     * 4字节
     * 步长：1
     */
    private Integer smoke_initvalue;
    /**
     * 标定报警阈值ADC
     * 数值范围:0~4096
     * 单位：ADC
     * 4字节
     * 步长：1
     */
    private Integer smoke_threshold;
    //endregion
}
