package cn.cecep.talroad.vo.query;

import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import cn.cecep.talroad.domain.BStatTableZxbgHdGasPollution;
import cn.cecep.talroad.common.core.domain.query.PageQuery;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;


/**
 * 固定源产排治--执行报告--火电废气污染治理设施正常情况对象 b_stat_table_zxbg_hd_gas_pollution
 *
 * @author szhpt
 * @date 2023-08-01*/
@ApiModel(value = "固定源产排治--执行报告--火电废气污染治理设施正常情况")
@EqualsAndHashCode(callSuper = false)
@Data
public class BStatTableZxbgHdGasPollutionQuery extends PageQuery
{

    @ApiModelProperty(value = "主键id")
    private Long id;
    @ApiModelProperty(value = "企业id")
    private String factoryId;
    @ApiModelProperty(value = "执行报告类型，0：月报，1：季报，2：年报")
    private String zxbgType;
    @ApiModelProperty(value = "执行报告周期")
    private String zxbgPeriod;
    @ApiModelProperty(value = "生产设施名称")
    private String productionFacilityName;
    @ApiModelProperty(value = "生产设施编号")
    private String productionFacilityCode;
    @ApiModelProperty(value = "治理设施编号")
    private String governanceFacilityCode;
    @ApiModelProperty(value = "治理设施名称")
    private String governanceFacilityName;
    @ApiModelProperty(value = "治理设施运行时间（小时）")
    private String governanceFacilityTime;
    @ApiModelProperty(value = "粉煤灰产生量（吨）")
    private String flyAshProduction;
    @ApiModelProperty(value = "布袋除尘器清灰周期和换代情况")
    private String bagFilter;
    @ApiModelProperty(value = "除尘效率设计值")
    private String dustRemovalEfficiency;
    @ApiModelProperty(value = "除尘效率实际值")
    private String actualValue;
    @ApiModelProperty(value = "脱硫剂用量（吨）")
    private String desulfurizerDosage;
    @ApiModelProperty(value = "脱硫副产物产生量（吨）")
    private String amountProduct;
    @ApiModelProperty(value = "脱硫效率设计值%")
    private String designValues;
    @ApiModelProperty(value = "脱硫效率实际值%")
    private String actualEfficiency;
    @ApiModelProperty(value = "脱硝还原剂用量（吨）")
    private String reducingAgentDosage;
    @ApiModelProperty(value = "脱硝效率设计值")
    private String denitrationEfficiency;
    @ApiModelProperty(value = "脱硝效率实际")
    private String efficiencyPractical;
    @ApiModelProperty(value = "污染治理设施运行费用（万元）")
    private String facilityOperatingCosts;
    @ApiModelProperty(value = "综合除尘效率设计值")
    private String efficiencyDesignValues;
    @ApiModelProperty(value = "综合除尘效率实际值")
    private String actualDustRemoval;
    @ApiModelProperty(value = "创建时间")
    private String createTime;
    /**
     *
     * @Title: getQueryWrapper
     * @Description: 查询参数组装
     * @param: @return
     * @return: QueryWrapper<BasIndustry>
     * @throws
     */
    public static QueryWrapper<BStatTableZxbgHdGasPollution> createLambdaQueryWrapper(BStatTableZxbgHdGasPollutionQuery query) {
        QueryWrapper<BStatTableZxbgHdGasPollution> wrapper = new QueryWrapper<>();
        wrapper.eq(ObjectUtil.isNotNull(query.getId()), "id", query.getId());
        wrapper.eq(ObjectUtil.isNotNull(query.getFactoryId()), "factory_id", query.getFactoryId());
        wrapper.eq(ObjectUtil.isNotNull(query.getZxbgType()), "zxbg_type", query.getZxbgType());
        wrapper.eq(ObjectUtil.isNotNull(query.getZxbgPeriod()), "zxbg_period", query.getZxbgPeriod());
        wrapper.eq(ObjectUtil.isNotNull(query.getProductionFacilityName()), "production_facility_name", query.getProductionFacilityName());
        wrapper.eq(ObjectUtil.isNotNull(query.getProductionFacilityCode()), "production_facility_code", query.getProductionFacilityCode());
        wrapper.eq(ObjectUtil.isNotNull(query.getGovernanceFacilityCode()), "governance_facility_code", query.getGovernanceFacilityCode());
        wrapper.eq(ObjectUtil.isNotNull(query.getGovernanceFacilityName()), "governance_facility_name", query.getGovernanceFacilityName());
        wrapper.eq(ObjectUtil.isNotNull(query.getGovernanceFacilityTime()), "governance_facility_time", query.getGovernanceFacilityTime());
        wrapper.eq(ObjectUtil.isNotNull(query.getFlyAshProduction()), "fly_ash_production", query.getFlyAshProduction());
        wrapper.eq(ObjectUtil.isNotNull(query.getBagFilter()), "bag_filter", query.getBagFilter());
        wrapper.eq(ObjectUtil.isNotNull(query.getDustRemovalEfficiency()), "dust_removal_efficiency", query.getDustRemovalEfficiency());
        wrapper.eq(ObjectUtil.isNotNull(query.getActualValue()), "actual_value", query.getActualValue());
        wrapper.eq(ObjectUtil.isNotNull(query.getDesulfurizerDosage()), "desulfurizer_dosage", query.getDesulfurizerDosage());
        wrapper.eq(ObjectUtil.isNotNull(query.getAmountProduct()), "amount_product", query.getAmountProduct());
        wrapper.eq(ObjectUtil.isNotNull(query.getDesignValues()), "design_values", query.getDesignValues());
        wrapper.eq(ObjectUtil.isNotNull(query.getActualEfficiency()), "actual_efficiency", query.getActualEfficiency());
        wrapper.eq(ObjectUtil.isNotNull(query.getReducingAgentDosage()), "reducing_agent_dosage", query.getReducingAgentDosage());
        wrapper.eq(ObjectUtil.isNotNull(query.getDenitrationEfficiency()), "denitration_efficiency", query.getDenitrationEfficiency());
        wrapper.eq(ObjectUtil.isNotNull(query.getEfficiencyPractical()), "efficiency_practical", query.getEfficiencyPractical());
        wrapper.eq(ObjectUtil.isNotNull(query.getFacilityOperatingCosts()), "facility_operating_costs", query.getFacilityOperatingCosts());
        wrapper.eq(ObjectUtil.isNotNull(query.getEfficiencyDesignValues()), "efficiency_design_values", query.getEfficiencyDesignValues());
        wrapper.eq(ObjectUtil.isNotNull(query.getActualDustRemoval()), "actual_dust_removal", query.getActualDustRemoval());
        wrapper.eq(ObjectUtil.isNotNull(query.getCreateTime()), "create_time", query.getCreateTime());
        return wrapper;
        }
}
