package com.njcn.prepare.harmonic.pojo.mysql;

import com.baomidou.mybatisplus.annotation.FieldFill;
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 com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateTimeDeserializer;
import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer;
import com.github.jeffreyning.mybatisplus.anno.MppMultiId;
import com.njcn.db.bo.BaseEntity;
import java.io.Serializable;
import java.time.LocalDateTime;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;

/**
 * <p>
 * 
 * </p>
 *
 * @author wr
 * @since 2023-10-13
 */
@Getter
@Setter
@TableName("pms_statistics_special_monitor")
@ApiModel(value = "PmsStatisticsSpecialMonitor对象", description = "")
public class PmsStatisticsSpecialMonitor {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty("组织机构名称")
    @TableField("Org_Name")
    private String orgName;

    @ApiModelProperty("组织机构ID(外键)")
    @MppMultiId("Org_Id")
    private String orgId;

    @ApiModelProperty("电压等级(字典)")
    @MppMultiId("Voltage_Level")
    private String voltageLevel;

    @ApiModelProperty("母线数量")
    @TableField("Generatrix_Sum")
    private Integer generatrixSum;

    @ApiModelProperty("线路总数")
    @TableField("Line_Num")
    private Integer lineNum;

    @ApiModelProperty("接入分布式光伏的线路总数")
    @TableField("Photovoltaic_Line_Num")
    private Integer photovoltaicLineNum;

    @ApiModelProperty("台区总数")
    @TableField("Platform_Num")
    private Integer platformNum;

    @ApiModelProperty("光伏台区总数")
    @TableField("Photovoltaic_Courts_Num")
    private Integer photovoltaicCourtsNum;

    @ApiModelProperty("光伏容量超过台区容量25%的台区总数")
    @TableField("Exceed_Courtscap_Num")
    private Integer exceedCourtscapNum;

    @ApiModelProperty("风电用户总数")
    @TableField("Wind_Power_Num")
    private Integer windPowerNum;

    @ApiModelProperty("光伏用户总数")
    @TableField("Pv_Num")
    private Integer pvNum;

    @ApiModelProperty("冶炼负荷用户总数")
    @TableField("Smelting_Load_Num")
    private Integer smeltingLoadNum;

    @ApiModelProperty("电气化铁路总数")
    @TableField("Electric_Track_Num")
    private Integer electricTrackNum;

    @ApiModelProperty("日期")
    @MppMultiId("Data_Date")
    private LocalDateTime dataDate;

    @ApiModelProperty("数据状态：0-删除；1-正常； ")
    @TableField("Status")
    private Integer status;

    @ApiModelProperty("创建用户")
    @TableField("Create_By")
    private String createBy;

    @ApiModelProperty("创建时间")
    @TableField(fill = FieldFill.INSERT)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonDeserialize(using = LocalDateTimeDeserializer.class)
    @JsonSerialize(using = LocalDateTimeSerializer.class)
    private LocalDateTime createTime;

    @ApiModelProperty("更新用户")
    @TableField("Update_By")
    private String updateBy;

    @ApiModelProperty("更新时间")
    @TableField(fill = FieldFill.INSERT_UPDATE)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonDeserialize(using = LocalDateTimeDeserializer.class)
    @JsonSerialize(using = LocalDateTimeSerializer.class)
    private LocalDateTime updateTime;

    @ApiModelProperty("风电总装机容量")
    @TableField("Wind_Power_Capacity")
    private Integer windPowerCapacity;

    @ApiModelProperty("光伏总装机容量")
    @TableField("Pv_Capacity")
    private Integer pvCapacity;

    @ApiModelProperty("冶炼负荷总装机容量")
    @TableField("Smelting_Load_Capacity")
    private Integer smeltingLoadCapacity;

    @ApiModelProperty("电气化铁路总装机容量")
    @TableField("Electric_Track_Capacity")
    private Integer electricTrackCapacity;


}
