<?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.project.system.mapper.SysRegionMapper">
|
|
<resultMap type="SysRegion" id="SysRegionResult">
|
<result property="code" column="code" />
|
<result property="parentCode" column="parent_code" />
|
<result property="ancestors" column="ancestors" />
|
<result property="name" column="name" />
|
<result property="provinceCode" column="province_code" />
|
<result property="provinceName" column="province_name" />
|
<result property="cityCode" column="city_code" />
|
<result property="cityName" column="city_name" />
|
<result property="districtCode" column="district_code" />
|
<result property="districtName" column="district_name" />
|
<result property="townCode" column="town_code" />
|
<result property="townName" column="town_name" />
|
<result property="villageCode" column="village_code" />
|
<result property="villageName" column="village_name" />
|
<result property="regionLevel" column="region_level" />
|
<result property="sort" column="sort" />
|
<result property="remark" column="remark" />
|
</resultMap>
|
|
<select id="regionTree" resultType="com.project.common.core.domain.TreeNode">
|
SELECT
|
region.code AS "id",
|
region.parent_code AS "parent_id",
|
region.name AS "title",
|
region.code AS "value",
|
region.code AS "key",
|
( SELECT CASE WHEN count( 1 ) > 0 THEN 1 ELSE 0 END FROM sys_region WHERE parent_code = region.code ) AS "has_children"
|
FROM
|
sys_region region
|
<where>
|
<if test="parentCode!=null and parentCode!=''">
|
and region.parent_code = #{parentCode}
|
</if>
|
|
<if test="name!=null and name!=''">
|
and region.name like concat(concat('%', #{name}),'%')
|
</if>
|
</where>
|
ORDER BY region.code
|
</select>
|
|
</mapper>
|