package com.terra.coal.mapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; 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.math.BigDecimal; import java.util.List; /** * MainMapper * @author WWW */ @Mapper @Repository public interface MainMapper { /** * 根据范围统计 * * @param top * @param bottom * @param wkt * @return */ @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 #{top} and #{bottom} or bottom between #{top} and #{bottom}) 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); }