package com.huatek.busi.entity;

import com.huatek.torch.sql.annotation.FieldName;
import com.huatek.torch.sql.annotation.TableName;
import com.huatek.torch.sql.beans.Pojo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * <p>
 *      热点温度计算结果表
 *  </p>
 *
 * @author dong
 * @since 2023-07-19
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("hot_spot_temperature_result")
public class HotSpotTemperatureResult extends Pojo implements Serializable{

    private static final long serialVersionUID = 1L;
    @FieldName("id")
    private String id;

    /**
     * 站点id
     */
    @ApiModelProperty(value = "站点id",  name="siteId")
    @FieldName("site_id")
    private String siteId;

    /**
     * 站点设备树ID
     */
    @ApiModelProperty(value = "站点设备树ID",  name="mainTreeId")
    @FieldName("main_tree_id")
    private String mainTreeId;

    /**
     * 评测时间
     */
    @ApiModelProperty(value = "评测时间",  name="assessTime")
    @FieldName("assess_time")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime assessTime;

    /**
     * 环境温度
     */
    @ApiModelProperty(value = "环境温度",  name="environmentTemperature")
    @FieldName("environment_temperature")
    private String environmentTemperature;

    /**
     * 额定电流下的顶层油温升
     */
    @ApiModelProperty(value = "额定电流下的顶层油温升",  name="topOilTemperature")
    @FieldName("top_oil_temperature")
    private String topOilTemperature;

    /**
     * 额定电流下的负载损耗和空载损耗之比
     */
    @ApiModelProperty(value = "额定电流下的负载损耗和空载损耗之比",  name="lossRatio")
    @FieldName("loss_ratio")
    private String lossRatio;

    /**
     * 负载系数，负载电流/额定电流
     */
    @ApiModelProperty(value = "负载系数，负载电流/额定电流",  name="loadCoefficient")
    @FieldName("load_coefficient")
    private String loadCoefficient;

    /**
     * 油的指数
     */
    @ApiModelProperty(value = "油的指数",  name="indexOfOil")
    @FieldName("Index_of_oil")
    private String indexOfOil;

    /**
     * 绕组测温最高点温度
     */
    @ApiModelProperty(value = "绕组测温最高点温度",  name="windingTemperature")
    @FieldName("winding_temperature")
    private String windingTemperature;

    /**
     * 绕组指数
     */
    @ApiModelProperty(value = "绕组指数",  name="windingIndex")
    @FieldName("winding_index")
    private String windingIndex;

    /**
     * 变压器最终老化系数计算
     */
    @ApiModelProperty(value = "变压器最终老化系数计算",  name="agingCoefficient")
    @FieldName("aging_coefficient")
    private String agingCoefficient;

    /**
     * co2
     */
    @ApiModelProperty(value = "co2",  name="co2")
    @FieldName("co2")
    private String co2;

    /**
     * co
     */
    @ApiModelProperty(value = "co",  name="co")
    private String co;

    /**
     * 计算结果
     */
    @ApiModelProperty(value = "计算结果",  name="result")
    private String result;

    /**
     * 评估类型：1.手动 2.自动
     */
    @ApiModelProperty(value = "评估类型：1.手动 2.自动",  name="type")
    private String type;

    /**
     * 算法类型：1.手动计算页面输入参数envvTemp + temp1*((1+r*k^2 )/(1+r))^x + hgr*k^y  2.自动 老算法 CO2/CO  3.新算法 V*B2 V = 2^(h-98)/6
     */
    @ApiModelProperty(value = "算法类型：1.手动计算页面输入参数envvTemp + temp1*((1+r*k^2 )/(1+r))^x + hgr*k^y  2.自动 老算法 CO2/CO  3.新算法 V*B2 V = 2^(h-98)/6",  name="arithmeticType")
    @FieldName("arithmetic_ype")
    private String arithmeticType;

    /**
     * 计算步骤
     */
    @ApiModelProperty(value = "计算步骤",  name="calculationStep")
    @FieldName("calculation_step")
    private String calculationStep;

}
