package com.ningdatech.carapi.report.model.entity;

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

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
 * <p>
 * 温州、台州、舟山使用量快报
 * </p>
 *
 * @author CMM
 * @since 2023-09-27
 */
@Data
@TableName("nd_bulk_cement_three_city_usage_bulletin")
@ApiModel(value = "BulkCementThreeCityUsageBulletin对象", description = "温州、台州、舟山使用量快报")
public class BulkCementThreeCityUsageBulletin implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty("主键ID")
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    @ApiModelProperty("单位名称")
    private String unitName;

    @ApiModelProperty("年目标")
    private BigDecimal yearTarget;

    @ApiModelProperty("占全年目标百分比")
    private BigDecimal percentageOfAnnualTarget;

    @ApiModelProperty("本月使用量")
    private BigDecimal thisMonthUsage;

    @ApiModelProperty("累计使用量")
    private BigDecimal accumulativeUsage;

    @ApiModelProperty("同比增长率")
    private BigDecimal growthRate;

    @ApiModelProperty("本省本月使用量")
    private BigDecimal thisProvinceThisMonthUsage;

    @ApiModelProperty("本省累计使用量")
    private BigDecimal thisProvinceAccumulativeUsage;

    @ApiModelProperty("外省本月使用量")
    private BigDecimal otherProvinceThisMonthUsage;

    @ApiModelProperty("外省累计使用量")
    private BigDecimal otherProvinceAccumulativeUsage;

    @ApiModelProperty("上报月份")
    private LocalDateTime reportMonth;

    @ApiModelProperty("区域ID")
    private Long regionId;

    @ApiModelProperty("企业ID")
    private Long companyId;

    @ApiModelProperty("单位负责人")
    private String unitResponsiblePerson;

    @ApiModelProperty("填表人")
    private String preparer;

    @ApiModelProperty("复核人")
    private String reviewer;

    @ApiModelProperty("报出日期")
    private LocalDateTime submissionDate;

    @ApiModelProperty("审核信息ID")
    private Long auditInfoId;

    @ApiModelProperty("审核状态 1 审核中 2 审核通过 3 被退回 4 待上报")
    private Integer auditStatus;

    @ApiModelProperty("创建时间")
    private LocalDateTime createOn;

    @ApiModelProperty("创建人")
    private Long createBy;

    @ApiModelProperty("更新时间")
    private LocalDateTime updateOn;

    @ApiModelProperty("更新人")
    private Long updateBy;
}
