package com.jiayue.ipp.common.data.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.jiayue.ipp.common.data.enums.EquipmentTypeEnum;
import com.jiayue.ipp.common.mybatis.base.BaseDataEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.math.BigDecimal;
import java.time.LocalDate;
import java.util.Date;

/**
 * idp_wind_turbine_info
 *
 * @author whc
 * @date 2022-03-18 15:50:00
 */
@Data
@TableName("idp_wind_turbine_info")
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "idp_wind_turbine_info")
public class WindTurbineInfo extends BaseDataEntity<WindTurbineInfo> {
    private static final long serialVersionUID = 1L;

    public WindTurbineInfo() {
        this.setEquipmentType(EquipmentTypeEnum.WINDTURBINE.getCode());
    }

    /**
     * 主键ID
     */
    @TableId(type = IdType.ASSIGN_UUID)
    @ApiModelProperty(value = "主键ID")
    private String id;


    /**
     * 备用字段A
     */
    @ApiModelProperty(value = "备用字段A")
    private String backupA;


    /**
     * 备用字段B
     */
    @ApiModelProperty(value = "备用字段B")
    private String backupB;


    /**
     * 备用字段C
     */
    @ApiModelProperty(value = "备用字段C")
    private String backupC;


    /**
     * 备用字段D
     */
    @ApiModelProperty(value = "备用字段D")
    private String backupD;


    /**
     * 备用字段E
     */
    @ApiModelProperty(value = "备用字段E")
    private String backupE;


    /**
     * 设备类型
     */
    @ApiModelProperty(value = "设备类型")
    private Integer equipmentType;


    /**
     * 名称
     */
    @ApiModelProperty(value = "名称")
    private String name;


    /**
     * 制造商
     */
    @ApiModelProperty(value = "制造商")
    private String manufacturer;


    /**
     * 型号
     */
    @ApiModelProperty(value = "型号")
    private String modelNumber;


    /**
     * 安装时间
     */
    @ApiModelProperty(value = "安装时间")
    private Date installationTime;


    /**
     * 是否上报 1:是 0 否
     */
    @ApiModelProperty(value = "是否上报 1:是 0 否")
    private String report;


    /**
     * 入库时间间隔 单位 s
     */
    @ApiModelProperty(value = "入库时间间隔 单位 s")
    private Integer timeInterval;


    /**
     * 设备编号
     */
    @ApiModelProperty(value = "设备编号")
    private String equipmentNo;


    /**
     * 风机等级
     */
    @ApiModelProperty(value = "风机等级")
    private Integer grade;


    /**
     * 设计空气密度
     */
    @ApiModelProperty(value = "设计空气密度")
    private BigDecimal airDensity = new BigDecimal(-99);


    /**
     * 切入速度
     */
    @ApiModelProperty(value = "切入速度")
    private BigDecimal cutInSpeed = new BigDecimal(-99);


    /**
     * 额定风速
     */
    @ApiModelProperty(value = "额定风速")
    private BigDecimal ratedWindSpeed = new BigDecimal(-99);


    /**
     * 切出速度
     */
    @ApiModelProperty(value = "切出速度")
    private BigDecimal cutOutSpeed = new BigDecimal(-99);


    /**
     * 生存风速
     */
    @ApiModelProperty(value = "生存风速")
    private BigDecimal liveWindSpeed = new BigDecimal(-99);


    /**
     * 叶轮直径（m）
     */
    @ApiModelProperty(value = "叶轮直径（m）")
    private BigDecimal windWheelDiameter = new BigDecimal(-99);


    /**
     * 最大转速（m）
     */
    @ApiModelProperty(value = "最大转速（m）")
    private BigDecimal windWheelMaxSpeed = new BigDecimal(-99);


    /**
     * 最小转速（m）
     */
    @ApiModelProperty(value = "最小转速（m）")
    private BigDecimal windWheelMinSpeed = new BigDecimal(-99);


    /**
     * 额定转速（m）
     */
    @ApiModelProperty(value = "额定转速（m）")
    private BigDecimal windWheelRatedSpeed = new BigDecimal(-99);


    /**
     * 轮毂高度（m）
     */
    @ApiModelProperty(value = "轮毂高度（m）")
    private BigDecimal hubHeight = new BigDecimal(-99);


    /**
     * 并网日期（m）
     */
    @ApiModelProperty(value = "并网日期")
    private Date parallelInDate;


    /**
     * 使用寿命
     */
    @ApiModelProperty(value = "使用寿命")
    private BigDecimal lifeLength = new BigDecimal(-99);


    /**
     * 最大功率
     */
    @ApiModelProperty(value = "最大功率")
    private BigDecimal maxPower = new BigDecimal(-99);


    /**
     * 风机是否样板机 1:是 0:否
     */
    @ApiModelProperty(value = "风机是否样板机 1:是 0:否")
    private String sample;


    /**
     * 经度
     */
    @ApiModelProperty(value = "经度")
    private BigDecimal longitude = new BigDecimal(-99);


    /**
     * 纬度
     */
    @ApiModelProperty(value = "纬度")
    private BigDecimal latitude = new BigDecimal(-99);


    /**
     * 集电线路
     */
    @ApiModelProperty(value = "集电线路")
    private String collectorCircuit;


    /**
     * 分期
     */
    @ApiModelProperty(value = "分期")
    private String divideIntoDifferentPeriod;

    /**
     * 绑定数据采集通道
     */
    @ApiModelProperty(value = "绑定数据采集通道")
    private String bindTunnel;
}
