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

import com.jiayue.ipfcst.common.data.abst.AbstractBaseEntity;
import com.jiayue.ipfcst.common.data.constant.enums.ElectricFieldStatrsEnum;
import com.jiayue.ipfcst.common.data.constant.enums.ElectricFieldTypeEnum;
import com.jiayue.ipfcst.common.data.constant.enums.ProvinceEnum;
import lombok.Data;
import lombok.EqualsAndHashCode;

import javax.persistence.*;
import javax.validation.constraints.Digits;
import java.math.BigDecimal;

/**
 * 场站实体
 *
 * @author yh
 * @version 1.0
 * @since 2019/7/22 11:16
 */
@EqualsAndHashCode(callSuper = true)
@Data
@Entity
public class ElectricField extends AbstractBaseEntity {
    /**
     * 备用字段A（用于所属地调字段）
     */
    /**
     * 备用字段B（站内受阻容量，不需要页面显示）
     */
    /**
     * 备用字段C（合同结束日期）
     */
    /**
     * 场站编号（运维标识，主键）
     */
    @Id
    @Column
    private String stationCode;

    /**
     * 场站状态
     */
    @Column
    @Enumerated(EnumType.STRING)
    private ElectricFieldStatrsEnum stationStatusEnum;

    /**
     * 电站名称
     */
    @Column
    private String name;

    /**
     * 场站标识
     */
    @Column
    private String sign;


    /**
     * 别名(上网变电站名称)
     */
    @Column
    private String netSubstationName;

    /**
     * 场站装机容量（MW）
     */
    @Column
    @Digits(integer = 10, fraction = 2)
    private BigDecimal capacity;

    /**
     * 并网设备数
     */
    @Column
    private Integer gridCE;

    /**
     * 场站经度
     */
    @Column
    @Digits(integer = 10, fraction = 6)
    private BigDecimal longitude;

    /**
     * 场站纬度
     */
    @Column
    @Digits(integer = 10, fraction = 6)
    private BigDecimal latitude;

    /**
     * 场站海拔
     */
    @Column
    private BigDecimal altitude;


    /**
     * 场站类型
     */
    @Column
    @Enumerated(EnumType.STRING)
    private ElectricFieldTypeEnum electricFieldTypeEnum;

    /**
     * 上报省调
     */
    @Column
    @Enumerated(EnumType.STRING)
    private ProvinceEnum provinceEnum;

    /**
     * 入库时间间隔  单位 s
     */
    private Integer interval;


    /**
     * 场站所属公司
     */
    @Column
    private String company;

    /**
     * 场站位置
     */
    @Column
    private String location;

    /**
     * 场站面积
     */
    @Column
    private BigDecimal area;


}
