package cn.cecep.talroad.domain;


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 javax.validation.constraints.NotBlank;


/**
 * 排污许可大气特殊情况对象 b_main_poll_dis_gas_sout
 *
 * @author szhpt
 * @date 2023-01-18*/
@ApiModel(value = "排污许可大气特殊情况")
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("b_main_poll_dis_gas_sout")
public class BMainPollDisGasSout extends BaseEntity
{
    private static final long serialVersionUID = 1L;


    @ApiModelProperty(value = "主键id")
    /** 主键id */
    @TableId(value = "sout_id",type = IdType.AUTO)
    private Long soutId;


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


    @ApiModelProperty(value = "排污许可表id")
    /** 排污许可表id */
    @Excel(name = "排污许可表id")
    private String pollDisId;


    @ApiModelProperty(value = "污染物类型")
    /** 污染物类型 */
    @Excel(name = "污染物类型")
    private String pollutantType;


    @ApiModelProperty(value = "污染物种类")
    /** 污染物种类 */
    @Excel(name = "污染物种类")
    private String pollutantsType;


    @ApiModelProperty(value = "许可排放时段")
    /** 许可排放时段 */
    @Excel(name = "许可排放时段")
    private String pollutantsTimeFrame;


    @ApiModelProperty(value = "许可排放浓度限值")
    /** 许可排放浓度限值 */
    @Excel(name = "许可排放浓度限值")
    private String pollutantsConcentration;


    @ApiModelProperty(value = "许可日排放量限值")
    /** 许可日排放量限值 */
    @Excel(name = "许可日排放量限值")
    private String pollutantsDisDay;


    @ApiModelProperty(value = "许可月排放量限值")
    /** 许可月排放量限值 */
    @Excel(name = "许可月排放量限值")
    private String pollutantsDisMonth;

    @ApiModelProperty(value = "要求(1-环境质量限期达标规划要求, 2-重污染天气应对要求)")
    @NotBlank(message = "请指定[1-环境质量限期达标规划要求, 2-重污染天气应对要求]")
    private String ask;

    @ApiModelProperty(value = "排放口类型(主要排放口,一般排放口,无组织排放口,全厂合计)")
    @TableField(exist = false)
    private String vent;

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("soutId", getSoutId())
            .append("factoryId", getFactoryId())
            .append("pollDisId", getPollDisId())
            .append("pollutantType", getPollutantType())
            .append("pollutantsType", getPollutantsType())
            .append("pollutantsTimeFrame", getPollutantsTimeFrame())
            .append("pollutantsConcentration", getPollutantsConcentration())
            .append("pollutantsDisDay", getPollutantsDisDay())
            .append("pollutantsDisMonth", getPollutantsDisMonth())
            .append("ask", getAsk())
            .toString();
    }
}
