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.math.BigDecimal;
import java.util.Date;


/**
 * 许可排放量废水明细对象 s_ra_water_permitted_emissions
 *
 * @author szhpt
 * @date 2023-06-02*/
@ApiModel(value = "许可排放量废水明细")
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("s_ra_water_permitted_emissions")
public class SRaWaterPermittedEmissions extends BaseEntity
{
    private static final long serialVersionUID = 1L;


    @ApiModelProperty(value = "数据主键")
    /** 数据主键 */
    @TableId(value = "data_id",type = IdType.AUTO)
    private String dataId;


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


    @ApiModelProperty(value = "企业名称")
    /** 企业名称 */
    @Excel(name = "企业名称",sort = 1)
    private String factoryName;


    @ApiModelProperty(value = "行业类别名称(多个使用'、'拼接)")
    /** 行业类别名称(多个使用'、'拼接) */
    @Excel(name = "行业名称",sort = 2)
    private String industryCategoryName;


    @ApiModelProperty(value = "行业类别编码(多个使用'、'拼接)")
    /** 行业类别编码(多个使用'、'拼接) */
    private String industryCategoryCode;


    @ApiModelProperty(value = "所在区县名称")
    /** 所在区县名称 */
    @Excel(name = "区县名称",sort = 3)
    private String districtName;


    @ApiModelProperty(value = "所在区县编码")
    /** 所在区县编码 */
    private String districtCode;


    @ApiModelProperty(value = "排口类型(1主要排口、2一般排口)")
    /** 排口类型(1主要排口、2一般排口) */
    @Excel(name = "排口类型",sort = 6,readConverterExp = "1=主要排口,2=一般排口")
    private String outletType;


    @ApiModelProperty(value = "监测点名称")
    /** 监测点名称 */
    @Excel(name = "监测点位名称",sort = 4)
    private String moitorName;


    @ApiModelProperty(value = "监测类型(1自动监测、2手工检测)")
    /** 监测类型(1自动监测、2手工检测) */
    @Excel(name = "监测类型",sort = 7,readConverterExp = "1=自动监测,2=手工检测")
    private String monitorType;


    @ApiModelProperty(value = "监测时间")
    /** 监测时间 */
    private String monitorTime;


    @ApiModelProperty(value = "排口编号")
    /** 排口编号 */
    @Excel(name = "排口编号",sort = 5)
    private String outletCode;


    @ApiModelProperty(value = "cod排放量（kg）")
    /** cod排放量（kg） */
    @Excel(name = "cod排放量(kg)",sort = 8,cellType = Excel.ColumnType.NUMERIC)
    private BigDecimal cod;


    @ApiModelProperty(value = "cod修约量（kg）")
    /** cod修约量（kg） */
    private BigDecimal codAmendments;


    @ApiModelProperty(value = "总氮排放量（kg）")
    /** 总氮排放量（kg） */
    @Excel(name = "总氮排放量(kg)", sort = 10,cellType = Excel.ColumnType.NUMERIC)
    private BigDecimal nitrogen;


    @ApiModelProperty(value = "总氮修约量（kg）")
    /** 总氮修约量（kg） */
    private BigDecimal nitrogenAmendments;


    @ApiModelProperty(value = "氨氮排放量（kg）")
    /** 氨氮排放量（kg） */
    @Excel(name = "氨氮排放量(kg)", sort = 9,cellType = Excel.ColumnType.NUMERIC)
    private BigDecimal ammonia;

    @ApiModelProperty(value = "氨氮修约量（kg）")
    /** 氨氮修约量（kg） */
    private BigDecimal ammoniaAmendments;


    @ApiModelProperty(value = "总磷排放量（kg）")
    /** 总磷排放量（kg） */
    @Excel(name = "总磷排放量(kg)", sort = 11,cellType = Excel.ColumnType.NUMERIC)
    private BigDecimal phosphorus;


    @ApiModelProperty(value = "总磷修约量（kg）")
    /** 总磷修约量（kg） */
    private BigDecimal phosphorusAmendments;


    @ApiModelProperty(value = "数据标记启炉，停炉，焖炉，生产设施故障，停运，国发非正常工况标记,无效数据是否用修约量计算")
    /** 数据标记启炉，停炉，焖炉，生产设施故障，停运，国发非正常工况标记,无效数据是否用修约量计算 */
    private String dataFlag;




    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("dataId", getDataId())
            .append("factoryId", getFactoryId())
            .append("factoryName", getFactoryName())
            .append("industryCategoryName", getIndustryCategoryName())
            .append("industryCategoryCode", getIndustryCategoryCode())
            .append("districtName", getDistrictName())
            .append("districtCode", getDistrictCode())
            .append("outletType", getOutletType())
            .append("moitorName", getMoitorName())
            .append("monitorType", getMonitorType())
            .append("monitorTime", getMonitorTime())
            .append("outletCode", getOutletCode())
            .append("cod", getCod())
            .append("codAmendments", getCodAmendments())
            .append("nitrogen", getNitrogen())
            .append("nitrogenAmendments", getNitrogenAmendments())
            .append("ammonia", getAmmonia())
            .append("ammoniaAmendments", getAmmoniaAmendments())
            .append("phosphorus", getPhosphorus())
            .append("phosphorusAmendments", getPhosphorusAmendments())
            .append("dataFlag", getDataFlag())
            .append("createTime", getCreateTime())
            .toString();
    }
}
