/**
 * 
 */
package org.springblade.etl.mapper;

import java.util.List;
import java.util.Map;

import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;

import com.baomidou.mybatisplus.annotation.InterceptorIgnore;
import com.baomidou.mybatisplus.core.metadata.IPage;

/**
 * @author wookvn
 *
 */
@InterceptorIgnore(tenantLine = "true")
public interface QueryMapper {
	
	@Select("<script><![CDATA[ ${sql} ]]></script>")
	public List<Map<String, Object>> selectList(@Param("sql") String sql);
	
	@Select("<script><![CDATA[ ${sql} ]]></script>")
	public List<Map<String, Object>> selectPageList(IPage<?> page, @Param("sql") String sql);
	
	@Select("<script><![CDATA[ ${sql} ]]></script>")
	public IPage<Map<String, Object>> selectPage(IPage<?> page, @Param("sql") String sql);
	
	@Select("<script><![CDATA[ ${sql} ]]></script>")
	public Map<String, Object> selectOne(@Param("sql") String sql);

	@Select("<script><![CDATA[ ${sql} ]]></script>")
	public Integer selectCount(@Param("sql") String sql);
}
