package cn.cecep.talroad.mapper;

import cn.cecep.talroad.domain.PcControlRequirements;
import cn.cecep.talroad.vo.PcControlRequirementsVo;
import cn.cecep.talroad.vo.query.PcControlRequirementsQuery;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 管控要求Mapper接口
 *
 * @author szhpt
 * @date 2023-01-10*/
@Mapper
public interface PcControlRequirementsMapper extends BaseMapper<PcControlRequirements>
{
    /**
     * 查询管控要求列表
     *
     * @param pcControlRequirements 管控要求
     * @return 管控要求集合
     */
    public List<PcControlRequirements> selectPcControlRequirementsList(PcControlRequirements pcControlRequirements);

    List<PcControlRequirementsVo> selectLabelRequirements();

    List<PcControlRequirementsVo> selectLabelOnlineRequirements();

    List<PcControlRequirementsVo> selectLabelOnlineOutPoll();

    List<PcControlRequirementsVo.PwxkGasOrg> selectPwxkGasOrg(@Param("factoryIds") List<String> factoryIds, @Param("query") PcControlRequirementsQuery.PwxkGasOrg query);

    List<PcControlRequirementsVo.PwxkGasNoOrg> selectPwxkGasNoOrg(@Param("factoryIds") List<String> factoryIds, @Param("query") PcControlRequirementsQuery.PwxkGasNoOrg query);

    List<PcControlRequirementsVo.PwxkWaterDirect> selectPwxkWaterDirect(@Param("factoryIds") List<String> factoryIds, @Param("query") PcControlRequirementsQuery.PwxkWaterDirect query);

    List<PcControlRequirementsVo.PwxkWaterIndirect> selectPwxkWaterIndirect(@Param("factoryIds") List<String> factoryIds, @Param("query") PcControlRequirementsQuery.PwxkWaterIndirect query);
}
