104 lines
3.0 KiB
XML
104 lines
3.0 KiB
XML
|
|
<?xml version="1.0" encoding="UTF-8"?><!--Converted at: Wed Jul 11 17:43:19 CST 2018-->
|
||
|
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||
|
|
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||
|
|
<mapper namespace="AdminOwnArea">
|
||
|
|
|
||
|
|
|
||
|
|
<insert id="insertAdminOwnArea" parameterType="AdminOwnArea">
|
||
|
|
INSERT INTO AdminOwnArea ( adminId, areaId ) Values ( #{adminId}, #{areaId} )
|
||
|
|
|
||
|
|
</insert>
|
||
|
|
|
||
|
|
<update id="updateAdminOwnArea" parameterType="AdminOwnArea">
|
||
|
|
|
||
|
|
|
||
|
|
UPDATE AdminOwnArea SET
|
||
|
|
|
||
|
|
adminId = #{adminId}, areaId = #{areaId}
|
||
|
|
where adminId=#{adminId} and areaId=#{areaId}
|
||
|
|
|
||
|
|
</update>
|
||
|
|
|
||
|
|
<select id="getAdminOwnAreaByKey" parameterType="java.util.Map" resultType="AdminOwnArea">
|
||
|
|
|
||
|
|
SELECT adminId , areaId
|
||
|
|
FROM AdminOwnArea
|
||
|
|
WHERE adminId=#{adminId} and areaId=#{areaId}
|
||
|
|
|
||
|
|
</select>
|
||
|
|
|
||
|
|
|
||
|
|
<select id="getSeqAdminOwnArea" resultType="Integer" useCache="false" flushCache="true">
|
||
|
|
|
||
|
|
SELECT nextval('seq_adminOwnAreaId') ;
|
||
|
|
|
||
|
|
</select>
|
||
|
|
|
||
|
|
<insert id="insertAdminOwnAreaBatch" parameterType="java.util.List">
|
||
|
|
|
||
|
|
INSERT INTO AdminOwnArea ( adminId, areaId ,type ) Values
|
||
|
|
|
||
|
|
<foreach collection="list" index="index" item="item" separator="," >
|
||
|
|
|
||
|
|
( #{item.adminId}, #{item.areaId} ,#{item.type} )
|
||
|
|
|
||
|
|
</foreach>
|
||
|
|
</insert>
|
||
|
|
|
||
|
|
<select id="getAdminOwnAreasByAdminId" parameterType="java.util.Map" resultType="AdminAreaDto">
|
||
|
|
|
||
|
|
SELECT a.areaId , a.areaName ,
|
||
|
|
CASE WHEN b.adminId isnull THEN 0
|
||
|
|
ELSE 1
|
||
|
|
END as isOwn
|
||
|
|
FROM Area a
|
||
|
|
LEFT join AdminOwnArea b
|
||
|
|
ON b.adminId = #{adminId} and a.areaId = b.areaId
|
||
|
|
WHERE a.parentId = #{parentId}
|
||
|
|
ORDER BY a.areaId
|
||
|
|
|
||
|
|
</select>
|
||
|
|
|
||
|
|
<delete id="deleteAdminOwnAreasByAdminId" parameterType="java.util.Map">
|
||
|
|
|
||
|
|
DELETE
|
||
|
|
FROM AdminOwnArea
|
||
|
|
WHERE adminId = #{adminId}
|
||
|
|
<if test="type==1">
|
||
|
|
and (type=1 or type=2)
|
||
|
|
</if>
|
||
|
|
|
||
|
|
</delete>
|
||
|
|
|
||
|
|
<select id="getAllAdminOwnAreasByAdminId" parameterType="java.lang.Long" resultType="AdminAreaDto">
|
||
|
|
|
||
|
|
SELECT a.areaId , a.areaName ,
|
||
|
|
CASE WHEN b.adminId isnull THEN 0
|
||
|
|
ELSE 1
|
||
|
|
END as isOwn
|
||
|
|
FROM AdminOwnArea b
|
||
|
|
INNER JOIN Area a
|
||
|
|
ON b.adminId = #{adminId} and a.areaId = b.areaId
|
||
|
|
ORDER BY a.areaId ;
|
||
|
|
|
||
|
|
</select>
|
||
|
|
|
||
|
|
<select id="getAllAmdinOwnAreaExceptSelf" parameterType="java.util.Map" resultType="AdminOwnArea">
|
||
|
|
|
||
|
|
SELECT a.areaId ,a.adminId,a.type
|
||
|
|
FROM AdminOwnArea a inner join admin b
|
||
|
|
on a.adminId = b.adminId and a.adminId!=#{adminId} and b.status=1
|
||
|
|
|
||
|
|
<if test="type==1">
|
||
|
|
and (type=1 or type=2)
|
||
|
|
</if>
|
||
|
|
|
||
|
|
</select>
|
||
|
|
|
||
|
|
|
||
|
|
<select id="verifyAreaIdIsAllForAdminId" parameterType="java.util.Map" resultType="java.lang.Integer">
|
||
|
|
select count(*) from adminownarea where adminId=#{adminId} and type=1 and areaId=#{areaId}
|
||
|
|
|
||
|
|
</select>
|
||
|
|
|
||
|
|
</mapper>
|