package com.usky.vpp.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;

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

/**
 * vpp_energy_reading_monthly
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("vpp_energy_reading_monthly")
public class VppEnergyReadingMonthly implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableId(value = "id", type = IdType.AUTO)
    private Long id;
    @TableField("customer_id")
    private Long customerId;

    @TableField(exist = false)
    private String customerName;

    @TableField("site_id")
    private Long siteId;

    @TableField(exist = false)
    private String siteName;

    @TableField("settle_year")
    private String settleYear;
    @TableField("settle_month")
    private Integer settleMonth;
    @TableField("total_energy_kwh")
    private BigDecimal totalEnergyKwh;
    @TableField("peak_energy_kwh")
    private BigDecimal peakEnergyKwh;
    @TableField("flat_energy_kwh")
    private BigDecimal flatEnergyKwh;
    @TableField("valley_energy_kwh")
    private BigDecimal valleyEnergyKwh;
    @TableField("sharp_energy_kwh")
    private BigDecimal sharpEnergyKwh;
    @TableField("gen_energy_kwh")
    private BigDecimal genEnergyKwh;
    @TableField("calc_status")
    private Integer calcStatus;
    @TableField("calc_at")
    private LocalDateTime calcAt;
    @TableField("tenant_id")
    private Integer tenantId;
    @TableField("create_time")
    private LocalDateTime createTime;
    @TableField("update_time")
    private LocalDateTime updateTime;
    @TableField("created_by")
    private String createdBy;
    @TableField("updated_by")
    private String updatedBy;
    @TableField("delete_flag")
    private Integer deleteFlag;
    @TableField("deleted_at")
    private LocalDateTime deletedAt;
}
