package cn.cecep.talroad.domain.analysis;

import cn.cecep.talroad.common.core.annotation.Excel;
import cn.cecep.talroad.common.core.web.domain.BaseEntity;
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 io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.math.BigDecimal;


/**
 * 执行报告实际产量情况对象 s_ra_action_reports_actual_yield
 *
 * @author szhpt
 * @date 2023-04-11*/
@ApiModel(value = "执行报告实际产量情况")
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("s_ra_action_reports_actual_yield")
public class SRaActionReportsActualYield extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "id")
    /** id */
    @TableId(value = "id",type = IdType.AUTO)
    private String id;


    @ApiModelProperty(value = "执行报告类型;字典bus_executive_report（y 年报 s 季报 m 月报 d 日报）")
    /** 执行报告类型;字典bus_executive_report（y 年报 s 季报 m 月报 d 日报） */
    @Excel(name = "执行报告类型", readConverterExp = "Y=年报,S=季报,M=月报,d=日报")
    private String reportType;


    @ApiModelProperty(value = "执行报告时间;字典bus_executive_report：年：2023 月：2023-02 日： 2023-02-01")
    /** 执行报告时间;字典bus_executive_report：年：2023 月：2023-02 日： 2023-02-01 */
    @Excel(name = "执行报告时间")
    private String reportTime;


    @ApiModelProperty(value = "企业id")
    /** 企业id */
    private String factoryId;

    @ApiModelProperty(value = "企业名称")
    /** 企业名称 */
    @Excel(name = "企业名称")
    @TableField(exist = false)
    private String factoryName;

    @ApiModelProperty(value = "行业类别名称")
    /** 行业类别名称 */
    @Excel(name = "行业名称")
    @TableField(exist = false)
    private String industryCategoryName;

    @ApiModelProperty(value = "区域名称")
    /** 区域名称 */
    @Excel(name = "区域名称")
    @TableField(exist = false)
    private String countryName;


    @ApiModelProperty(value = "主要生产单元")
    /** 主要生产单元 */
    @Excel(name = "主要生产单元")
    private String productionUnit;


    @ApiModelProperty(value = "运行参数code")
    /** 运行参数code */
    private String runningParamCode;


    @ApiModelProperty(value = "运行参数名称")
    /** 运行参数名称 */
    @Excel(name = "运行参数名称")
    private String runningParamName;


    @ApiModelProperty(value = "产量（t）")
    /** 产量（t） */
    @Excel(name = "产量（t）")
    private BigDecimal actualEmissions;


    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("reportType", getReportType())
            .append("reportTime", getReportTime())
            .append("factoryId", getFactoryId())
            .append("productionUnit", getProductionUnit())
            .append("runningParamCode", getRunningParamCode())
            .append("runningParamName", getRunningParamName())
            .append("actualEmissions", getActualEmissions())
            .append("updateTime", getUpdateTime())
            .append("updateBy", getUpdateBy())
            .append("createTime", getCreateTime())
            .append("createBy", getCreateBy())
            .toString();
    }
}
