package net.vtstar.zhongtong.avi.gateway.trial.domain;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import net.vtstar.scada.base.gather.domain.EquipmentData;
import net.vtstar.user.search.Search;
import net.vtstar.zhongtong.avi.global.web.Show;
import net.vtstar.zhongtong.avi.global.web.domain.enums.FieldType;

import javax.persistence.Column;
import javax.persistence.Id;
import javax.persistence.Table;
import java.util.Date;

/**
 * @Author: xiadongwei
 * @Date: 2019/10/17 11:52
 */

@ApiModel(value = "试交车间--充电桩", description = "充电桩监控数据表")
@Data
@Search(code = "CHARGING_PILE")
@Table(name = "eqp_data_charging_pile")
public class ChargingPileMachine extends EquipmentData {

    @Show(label = "设备编号")
    @Column(name = "eqp_code")
    @ApiModelProperty(notes = "设备编号")
    private String equipCode;

    @Show(label = "设备名称")
    @Column(name = "eqp_name")
    @ApiModelProperty(notes = "设备名称")
    @Search
    private String alias;

    @Show(label = "车辆编号")
    @ApiModelProperty(notes = "车辆编号")
    @Column(name = "bus_code")
    @Search
    private String busCode;

    @Show(label = "输出电压(V)")
    @ApiModelProperty(notes = "输出电压(V)")
    @Column(name = "output_voltage")
    private Float outputVoltage;

    @Show(label = "输出电流(A)")
    @ApiModelProperty(notes = "输出电流(A)")
    @Column(name = "output_current")
    private Float outputCurrent;

    @Show(label = "直流电量")
    @ApiModelProperty(notes = "直流电量")
    @Column(name = "dc_power")
    private Integer dcPower;

    @Show(label = "使用电量")
    @ApiModelProperty(notes = "使用电量")
    @Column(name = "use_power")
    private Float usePower;

    @Show(label = "最高单体蓄电池温度")
    @ApiModelProperty(notes = "最高单体蓄电池温度")
    @Column(name = "max_temperature")
    private Integer maxTemperature;

    @Show(label = "最高单体蓄电池温度编号")
    @ApiModelProperty(notes = "最高单体蓄电池温度编号")
    @Column(name = "max_temperature_code")
    private Integer maxTemperatureCode;

    @Show(label = "最低单体蓄电池温度")
    @ApiModelProperty(notes = "最低单体蓄电池温度")
    @Column(name = "min_temperature")
    private Integer minTemperature;

    @Show(label = "最低单体蓄电池温度编号")
    @ApiModelProperty(notes = "最低单体蓄电池温度编号")
    @Column(name = "min_temperature_code")
    private Integer minTemperatureCode;

    @Show(label = "SOC(%)")
    @ApiModelProperty(notes = "SOC(%)")
    @Column(name = "soc")
    private Integer soc;

    @Show(label = "采集时间",dataType = FieldType.DATETIME)
    @ApiModelProperty("时间")
    @Column(name = "create_time")
    private Date createTime;

    @Id
    private Long id;

    @ApiModelProperty("采集状态")
    @Column(name = "status")
    private String status;
}
