package org.jeecg.modules.sensor.entity;

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 com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecg.common.aspect.annotation.Dict;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.util.List;

/**
 * @Description: 设备传感器数据表
 * @Author: jeecg-boot
 * @Date:   2021-02-07
 * @Version: V1.0
 */
@Data
@TableName("bu_sensor_device_data")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="bu_sensor_device_data对象", description="设备传感器数据表")
public class BuSensorDeviceData implements Serializable {
    private static final long serialVersionUID = 1L;

	/**主键*/
	@TableId(type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "主键")
    private String id;
	/**创建人*/
    @ApiModelProperty(value = "创建人")
    private String createBy;
	/**创建日期*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "创建日期")
    private java.util.Date createTime;
	/**更新人*/
    @ApiModelProperty(value = "更新人")
    private String updateBy;
	/**更新日期*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "更新日期")
    private java.util.Date updateTime;
	/**所属部门*/
    @ApiModelProperty(value = "所属部门")
    private String sysOrgCode;
	/**采集时刻*/
	@Excel(name = "采集时刻", width = 15, format = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "采集时刻")
    private java.util.Date time;
	/**设备ID*/
	@Excel(name = "设备ID", width = 15)
    @ApiModelProperty(value = "设备ID")
    @Dict(dictTable = "bu_device",dicText = "device_name",dicCode = "id")
    private String deviceId;
    /**U相电流*/
    @Excel(name = "U相电流", width = 15)
    @ApiModelProperty(value = "U相电流")
    private Double udl;
    /**V相电流*/
    @Excel(name = "V相电流", width = 15)
    @ApiModelProperty(value = "V相电流")
    private Double vdl;
    /**W相电流*/
    @Excel(name = "W相电流", width = 15)
    @ApiModelProperty(value = "W相电流")
    private Double wdl;
    /**U相电压*/
    @Excel(name = "U相电压", width = 15)
    @ApiModelProperty(value = "U相电压")
    private Double udy;
    /**V相电压*/
    @Excel(name = "V相电压", width = 15)
    @ApiModelProperty(value = "V相电压")
    private Double vdy;
    /**W相电压*/
    @Excel(name = "W相电压", width = 15)
    @ApiModelProperty(value = "W相电压")
    private Double wdy;
    /**总有功功率*/
    @Excel(name = "总有功功率", width = 15)
    @ApiModelProperty(value = "总有功功率")
    private Double activePower;
    /**频率*/
    @Excel(name = "频率", width = 15)
    @ApiModelProperty(value = "频率")
    private Double frequency;
    /**总电能*/
    @Excel(name = "总电能", width = 15)
    @ApiModelProperty(value = "总电能")
    private Double eng;
    @Excel(name = "总功率因数", width = 15)
    @ApiModelProperty(value = "总功率因数")
    private Double powerFactor;
    /**温湿度*/
    @Excel(name = "温湿度", width = 15)
    @ApiModelProperty(value = "温湿度")
    private String wsd;
    /**噪声*/
    @Excel(name = "噪声", width = 15)
    @ApiModelProperty(value = "噪声")
    private String zs;
    @Excel(name = "功率", width = 15)
    @ApiModelProperty(value = "功率")
    private Double gl;
    /**震动x*/
    @Excel(name = "震动x", width = 15)
    @ApiModelProperty(value = "震动x")
    @TableField(exist = false)
    private String zdx;
    /**震动y*/
    @Excel(name = "震动y", width = 15)
    @ApiModelProperty(value = "震动y")
    @TableField(exist = false)
    private String zdy;
    /**震动z*/
    @Excel(name = "震动z", width = 15)
    @ApiModelProperty(value = "震动z")
    @TableField(exist = false)
    private String zdz;
    /**氧气*/
    @Excel(name = "yq", width = 15)
    @ApiModelProperty(value = "氧气")
    @TableField(exist = false)
    private Double o2;
    /**一氧化碳*/
    @Excel(name = "co", width = 15)
    @ApiModelProperty(value = "一氧化碳")
    @TableField(exist = false)
    private Double co;
    /**可燃性气体*/
    @Excel(name = "ch", width = 15)
    @ApiModelProperty(value = "可燃性气体")
    @TableField(exist = false)
    private Double ch4;
    /**湿度*/
    @Excel(name = "湿度", width = 15)
    @ApiModelProperty(value = "湿度")
    @TableField(exist = false)
    private String sd;
    /**烟雾*/
    @Excel(name = "烟雾", width = 15)
    @ApiModelProperty(value = "烟雾")
    @TableField(exist = false)
    private String smoke;
    /**烟雾*/
    @Excel(name = "烟雾", width = 15)
    @ApiModelProperty(value = "烟雾")
    @TableField(exist = false)
    private double data;

    /**震动x*/
    @Excel(name = "震动x", width = 15)
    @ApiModelProperty(value = "震动x")
    @TableField(exist = false)
    private String valuex;
    /**震动y*/
    @Excel(name = "震动y", width = 15)
    @ApiModelProperty(value = "震动y")
    @TableField(exist = false)
    private String valuey;
    /**震动z*/
    @Excel(name = "震动z", width = 15)
    @ApiModelProperty(value = "震动z")
    @TableField(exist = false)
    private String valuez;

    /**x向加速度振动值*/
    @TableField(exist = false)
    private Double accX;
    /**y向振动值*/
    @TableField(exist = false)
    private Double accY;
    /**z向振动值*/
    @TableField(exist = false)
    private Double accZ;
    /**x向速度振动值*/
    @TableField(exist = false)
    private Double speedX;
    /**y向振动值*/
    @TableField(exist = false)
    private Double speedY;
    /**z向振动值*/
    @TableField(exist = false)
    private Double speedZ;
    /**x向位移振动值*/
    @TableField(exist = false)
    private Double displacementX;
    /**y向振动值*/
    @TableField(exist = false)
    private Double displacementY;
    /**z向振动值*/
    @TableField(exist = false)
    private Double displacementZ;
    /**温度*/
    @TableField(exist = false)
    private Double temperature;
    /**硫化氢*/
    @TableField(exist = false)
    private Double h2s;
    /**设备名称*/
    @TableField(exist = false)
    private String deviceName;
    /**设备名称*/
    @TableField(exist = false)
    private List<String> deviceNameList;
    @TableField(exist = false)
    private Integer number;

    @TableField(exist = false)
    private String monthDay;

    @TableField(exist = false)
    private Double discharge;

    @TableField(exist = false)
    private Double flowspeed;

    @TableField(exist = false)
    private Double flowrate;
}
