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.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 com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.Version;
import java.util.Date;


/**
 * 企业证后监管问题总对象 s_ra_factory_regulatory_issues
 *
 * @author szhpt
 * @date 2023-04-11*/
@ApiModel(value = "企业证后监管问题总")
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("s_ra_factory_regulatory_issues")
public class SRaFactoryRegulatoryIssues 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 = "企业id")
    /** 企业id */
    private String factoryId;


    @ApiModelProperty(value = "排污许可证编号")
    /** 排污许可证编号 */
    @Excel(name = "许可证编号")
    private String pollDisLicenseCode;

    @ApiModelProperty(value = "排污单位名称")
    /** 排污单位名称 */
    @Excel(name = "排污单位名称")
    @TableField(exist = false)
    private String factoryName;

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

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

    @ApiModelProperty(value = "月份")
    /** 月份 */
    @Excel(name = "月份")
    private String month;

    @ApiModelProperty(value = "治理设施异常问题个数")
    /** 治理设施异常问题个数 */
    @Excel(name = "治理设施异常问题个数")
    private String abnormalProblemsNum;


    @ApiModelProperty(value = "在线监测有效监测率")
    /** 在线监测有效监测率 */
    @Excel(name = "在线监测有效监测率")
    private String effectiveMonitoringComplianceRate;


    @ApiModelProperty(value = "在线监测达标率")
    /** 在线监测达标率 */
    @Excel(name = "在线监测达标率")
    private String onlineMonitoringComplianceRate;


    @ApiModelProperty(value = "手工监测频次合格率")
    /** 手工监测频次合格率 */
    @Excel(name = "手工监测频次合格率")
    private String manualMonitoringFrequencyPassRate;


    @ApiModelProperty(value = "系统核算实际排放合格率")
    /** 系统核算实际排放合格率 */
    @Excel(name = "系统核算实际排放合格率")
    private String sysAccActualEmissionPassRate;


    @ApiModelProperty(value = "执行报告实际排放合格率")
    /** 执行报告实际排放合格率 */
    @Excel(name = "执行报告实际排放合格率")
    private String reportActualEmissionPassRate;


    @ApiModelProperty(value = "重污染管控执行率")
    /** 重污染管控执行率 */
    @Excel(name = "重污染管控执行率")
    private String heavyPollutionControlExacutiveRate;


    @ApiModelProperty(value = "是否需要提交执行报告")
    /** 是否需要提交执行报告 */
    @Excel(name = "是否需要提交执行报告")
    private String reportNeedSubmit;


    @ApiModelProperty(value = "执行报告是否提交")
    /** 执行报告是否提交 */
    @Excel(name = "执行报告是否提交")
    private String reportSubmit;


    @ApiModelProperty(value = "执行报告规范性")
    /** 执行报告规范性 */
    @Excel(name = "执行报告规范性")
    private String reportNormative;


    @ApiModelProperty(value = "执行报告结果统计时间")
    /** 执行报告结果统计时间 */
    @Excel(name = "执行报告结果统计时间")
    private Date reportStatisticsTime;



    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("reportType", getReportType())
            .append("factoryId", getFactoryId())
            .append("pollDisLicenseCode", getPollDisLicenseCode())
            .append("month", getMonth())
            .append("abnormalProblemsNum", getAbnormalProblemsNum())
            .append("effectiveMonitoringComplianceRate", getEffectiveMonitoringComplianceRate())
            .append("onlineMonitoringComplianceRate", getOnlineMonitoringComplianceRate())
            .append("manualMonitoringFrequencyPassRate", getManualMonitoringFrequencyPassRate())
            .append("sysAccActualEmissionPassRate", getSysAccActualEmissionPassRate())
            .append("reportActualEmissionPassRate", getReportActualEmissionPassRate())
            .append("heavyPollutionControlExacutiveRate", getHeavyPollutionControlExacutiveRate())
            .append("reportNeedSubmit", getReportNeedSubmit())
            .append("reportSubmit", getReportSubmit())
            .append("reportNormative", getReportNormative())
            .append("reportStatisticsTime", getReportStatisticsTime())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}
