12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273 |
- <?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.tdgy.TdgyMapper">
- <select id="getSuspectedIdleLand" resultType="map">
- SELECT ts.id, ts.xmmc, ts.crmj, TO_CHAR(ts.ydkgsj, 'yyyy/MM/dd') AS ydkgsj,
- public.st_asewkt(public.st_union(tb.geom)) AS geom
- FROM tdgy_sj ts
- LEFT JOIN "TB_TDGY_SJ" tb ON tb.pid = ts.id
- WHERE (ts.sfjg != true OR ts.sfjg IS NULL)
- AND (NOW() > ts.ydkgsj)
- AND ts.sfkg != true
- AND ts.id::varchar NOT IN (SELECT land_id FROM base.t_land_idle_confirm)
- <if test="key != null and key != ''">
- AND (ts.xmmc LIKE '%' || #{key} || '%' OR ts.srf LIKE '%' || #{key} || '%')
- </if>
- <if test="xzqh != null and xzqh != ''">
- AND ts.xzqh = #{xzqh}
- </if>
- GROUP BY ts.id, ts.xmmc, ts.crmj, ts.ydkgsj
- LIMIT #{limit} OFFSET #{offset};
- </select>
- <select id="getLandCountArea" resultType="map">
- select count(*) as total, sum(ts.crmj::NUMERIC) as area
- from tdgy_sj ts
- </select>
- <select id="getCountAreaSuspected" resultType="map">
- SELECT count(ts.id) AS total, sum(ts.crmj::NUMERIC) AS area
- FROM tdgy_sj ts
- WHERE (ts.sfjg != true OR ts.sfjg IS NULL)
- AND (NOW() > ts.ydkgsj)
- AND ts.sfkg != true
- AND ts.id::varchar NOT IN (SELECT land_id FROM base.t_land_idle_confirm)
- </select>
- <select id="getCountAreaConfirm" resultType="map">
- SELECT COUNT(td.id) AS total, SUM(td.crmj::NUMERIC) AS area
- FROM base.t_land_idle_confirm AS confirm
- JOIN vector.tdgy_sj AS td ON confirm.land_id = td.id::VARCHAR
- WHERE confirm.is_idle = true
- </select>
- <select id="getCountAreaDisposal" resultType="map">
- SELECT COUNT(td.id) AS total, SUM(td.crmj::NUMERIC) AS area
- FROM base.t_land_idle_confirm AS confirm
- JOIN vector.tdgy_sj AS td ON confirm.land_id = td.id::VARCHAR
- WHERE confirm.is_idle = true AND confirm.is_disposal = true
- </select>
- <select id="getAreaByDistrict" resultType="map">
- SELECT ts.xzqh AS "districtCode",
- SUM(ts.crmj::NUMERIC) AS "totalArea",
- SUM(CASE WHEN confirm.is_idle = true THEN ts.crmj::NUMERIC ELSE 0 END) AS "confirmArea",
- SUM(CASE WHEN confirm.is_idle = true AND confirm.is_disposal = true THEN ts.crmj:: NUMERIC ELSE 0
- END) AS "disposalArea"
- FROM vector.tdgy_sj ts
- LEFT JOIN
- base.t_land_idle_confirm confirm ON confirm.land_id = ts.id::VARCHAR
- GROUP BY
- ts.xzqh
- </select>
- <select id="getAreaByReason" resultType="map">
- SELECT SUM(td.crmj::NUMERIC) AS area, confirm.idle_reason AS reason
- FROM base.t_land_idle_confirm AS confirm
- JOIN vector.tdgy_sj AS td ON confirm.land_id = td.id::VARCHAR
- WHERE confirm.is_idle = true
- GROUP BY confirm.idle_reason
- </select>
- </mapper>
|