| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788 |
- <?xml version="1.0" encoding="UTF-8" ?>
- <!DOCTYPE mapper
- PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
- "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
- <mapper namespace="com.onemap.apply.mapper.yzt.UrbanMonitorMapper">
-
- <resultMap type="com.onemap.apply.domain.yzt.UrbanMonitorVO" id="UrbanMonitorResult">
- <result property="year" column="year" />
- <result property="data" column="data" />
- </resultMap>
- <!--
- 查询城市监测列表
- type: buildUp_area(建成区面积) / building_area(建筑面积) / building_count(建筑数量)
- 数据库 jc_urban: type=0 建筑信息, type=1 建成区
- -->
- <select id="selectUrbanMonitorList" resultMap="UrbanMonitorResult">
- SELECT
- "year",
- <choose>
- <when test="type == 'building_count'">
- COUNT(*) as data
- </when>
- <otherwise>
- SUM(area) as data
- </otherwise>
- </choose>
- FROM "vector"."jc_urban"
- WHERE 1=1
- <choose>
- <when test="type == 'buildUp_area'">
- AND type = 1
- </when>
- <otherwise>
- AND type = 0
- </otherwise>
- </choose>
- <if test="code != null and code != ''">
- AND trim(code) = trim(#{code})
- </if>
- GROUP BY "year"
- ORDER BY "year" ASC
- </select>
-
- <resultMap type="com.onemap.apply.domain.yzt.UrbanExpansionLayerVO" id="UrbanExpansionLayerResult">
- <result property="year" column="year" />
- <result property="layerType" column="layer_type" />
- <result property="dimType" column="dim_type" />
- <result property="layerName" column="layer_name" />
- <result property="prevYear" column="prev_year" />
- <result property="data" column="data" />
- <result property="serviceId" column="service_id" />
- </resultMap>
- <select id="selectUrbanExpansionList" resultMap="UrbanExpansionLayerResult">
- SELECT
- year, layer_type, dim_type, layer_name, prev_year, data, service_id
- FROM "vector"."jc_urban_expansion"
- WHERE status = 1
- <if test="dimType != null and dimType != ''">
- AND (dim_type = #{dimType} OR dim_type = '0d')
- </if>
- ORDER BY sort_order ASC, year ASC
- </select>
- <resultMap type="com.onemap.apply.domain.yzt.UrbanMonitorAreaVO" id="UrbanMonitorAreaResult">
- <result property="code" column="code" />
- <result property="data" column="data" />
- </resultMap>
- <!--
- 按年份、区域、类型分组查询城市监测数据
- 返回: year, code, type, total_area, count
- Service层根据type拆分数据
- -->
- <select id="selectUrbanMonitorGrouped" resultType="map">
- SELECT
- "year",
- trim(code) as code,
- type,
- SUM(area) as total_area,
- COUNT(*) as count
- FROM "vector"."jc_urban"
- GROUP BY "year", code, type
- ORDER BY "year" ASC, code ASC
- </select>
- </mapper>
|