<?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="org.springblade.modules.rotation.mapper.RotationMapper">
|
|
<!-- 通用查询映射结果 -->
|
<resultMap id="rotationResultMap" type="org.springblade.modules.rotation.entity.RotationEntity">
|
<result property="id" column="id" />
|
<result property="name" column="name" />
|
<result property="type" column="type" />
|
<result property="context" column="context" />
|
<result property="url" column="url" />
|
<result property="junpUrl" column="junp_url" />
|
<result property="communityCode" column="community_code" />
|
<result property="createTime" column="create_time" />
|
<result property="createUser" column="create_user" />
|
<result property="isDeleted" column="is_deleted" />
|
<result property="rotationRange" column="rotation_range" />
|
<result property="articleId" column="article_id" />
|
<result property="publicFlag" column="public_flag" />
|
</resultMap>
|
|
<!--自定义分页查询-->
|
<select id="selectRotationPage" resultType="org.springblade.modules.rotation.vo.RotationVO">
|
select
|
jr.*,br.name as communityName
|
from jczz_rotation jr
|
left join blade_region br on br.code = jr.community_code
|
where jr.is_deleted = 0
|
<if test="rotation.name!=null and rotation.name!=''">
|
and jr.name like concat('%',#{rotation.name},'%')
|
</if>
|
<if test="rotation.type!=null">
|
and jr.type = #{rotation.type}
|
</if>
|
<if test="rotation.communityName!=null and rotation.communityName!=''">
|
and br.name like concat('%',#{rotation.communityName},'%')
|
</if>
|
<if test="rotation.regionCode!=null and rotation.regionCode!=''">
|
and jr.community_code like concat('%',#{rotation.regionCode},'%')
|
</if>
|
|
<if test="rotation.rotationRange != null and rotation.rotationRange != ''">and jr.rotation_range =
|
#{rotation.rotationRange}
|
</if>
|
<if test="rotation.articleId != null ">and jr.article_id = #{rotation.articleId}</if>
|
<if test="rotation.publicFlag != null ">and jr.public_flag = #{rotation.publicFlag}</if>
|
|
<if test="rotation.districtIdList != null and rotation.districtIdList.size() > 0 ">
|
and (jr.rotation_range like
|
<foreach collection="rotation.districtIdList" separator=" or jr.rotation_range like" item="id">'%${id}%'
|
</foreach>
|
) or jr.rotation_range is null
|
</if>
|
|
<if test="isAdministrator==2">
|
<choose>
|
<when test="rotation.roleName != null and rotation.roleName != ''">
|
<if test="rotation.roleName=='wgy'">
|
<choose>
|
<when test="gridCodeList !=null and gridCodeList !=''">
|
and jr.type = 2
|
and jr.community_code REGEXP #{gridCodeList}
|
</when>
|
<otherwise>
|
and jr.type = 2
|
and jr.community_code in ('')
|
</otherwise>
|
</choose>
|
</if>
|
<if test="rotation.roleName=='mj'">
|
<choose>
|
<when test="regionChildCodesList !=null and regionChildCodesList!=''">
|
and jr.type = 1
|
and jr.community_code REGEXP #{regionChildCodesList}
|
</when>
|
<otherwise>
|
and jr.type = 1
|
and jr.community_code in ('')
|
</otherwise>
|
</choose>
|
</if>
|
<if test="rotation.roleName=='inhabitant'">
|
and jr.type = 3
|
<if test="rotation.districtIdList == null ">
|
and jr.rotation_range is null
|
</if>
|
</if>
|
</when>
|
<otherwise>
|
<choose>
|
<when test="regionChildCodesList !=null and regionChildCodesList!=''">
|
and jr.community_code REGEXP #{regionChildCodesList}
|
</when>
|
<otherwise>
|
and jr.community_code in ('')
|
</otherwise>
|
</choose>
|
</otherwise>
|
</choose>
|
</if>
|
</select>
|
|
|
</mapper>
|