package com.terra.coal.mapper; import com.terra.coal.entity.CountEntity; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Select; import org.springframework.stereotype.Repository; import java.util.List; /** * MainMapper * @author WWW */ @Mapper @Repository public interface MainMapper { /** * 根据范围统计 * * @param top 顶高 * @param bottom 底高 * @param wkt WKT * @return CountEntity集合 */ @Select("select ctype, sum(volume) \"volume\", sum(coal_prod) \"coal_prod\", sum(gangue_prod) \"gangue_prod\", 0 \"soil_prod\" from public.coal2000 " + "where (top between #{bottom} and #{top} or bottom between #{bottom} and #{top}) and ST_Intersects(geom, ST_PolygonFromText(#{wkt}, 4490)) " + "group by ctype order by ctype") public List countByRange(@Param("top") Double top, @Param("bottom") Double bottom, @Param("wkt") String wkt); }