You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
106 lines
3.5 KiB
106 lines
3.5 KiB
<?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="jnpf.permission.mapper.RoleMapper"> |
|
|
|
<select id="getListId" resultType="java.lang.String"> |
|
SELECT * FROM base_role WHERE F_ID IN(SELECT F_OBJECT_ID FROM base_user_relation WHERE F_USER_ID = #{userId}) ORDER BY F_SORT_CODE |
|
</select> |
|
|
|
<select id="query" resultType="java.lang.String"> |
|
SELECT F_Id FROM base_role |
|
<if test="globalMark != 1"> |
|
WHERE 1 = 1 |
|
AND F_Id IN ( |
|
SELECT DISTINCT |
|
a.F_Id |
|
FROM |
|
( |
|
SELECT |
|
br.F_Id |
|
FROM |
|
base_organize bo |
|
LEFT JOIN base_organize_relation bor ON bo.F_Id = bor.F_Organize_Id |
|
LEFT JOIN base_role br ON br.F_Id = bor.F_Object_Id |
|
WHERE |
|
bor.F_Object_Type = 'Role' |
|
AND bor.F_Object_Type IS NOT NULL |
|
<if test="orgIdList != null and orgIdList.size() != 0"> |
|
AND bo.F_Id IN |
|
<foreach collection="orgIdList" |
|
item="orgIds" index="index" separator="," open="(" close=")"> |
|
#{orgIds} |
|
</foreach> |
|
</if> |
|
) a |
|
) |
|
</if> |
|
<if test="globalMark == -1 or globalMark == 1"> |
|
<if test="globalMark != 1"> |
|
OR |
|
</if> |
|
<if test="globalMark == 1"> |
|
Where |
|
</if> |
|
F_Id IN |
|
( |
|
SELECT F_Id FROM base_role WHERE F_Global_Mark = 1 |
|
) |
|
</if> |
|
<if test="keyword != null and keyword != ''"> |
|
AND (F_Full_Name LIKE #{keyword} OR F_En_Code LIKE #{keyword}) |
|
</if> |
|
<if test="enabledMark != null"> |
|
AND (f_enabled_Mark = #{enabledMark}) |
|
</if> |
|
ORDER BY f_sort_code asc, f_creator_time desc |
|
</select> |
|
|
|
<select id="count" resultType="java.lang.Long"> |
|
SELECT count(F_Id) FROM base_role |
|
<if test="globalMark != 1"> |
|
WHERE 1 = 1 |
|
AND F_Id IN ( |
|
SELECT DISTINCT |
|
a.F_Id |
|
FROM |
|
( |
|
SELECT |
|
br.F_Id |
|
FROM |
|
base_organize bo |
|
LEFT JOIN base_organize_relation bor ON bo.F_Id = bor.F_Organize_Id |
|
LEFT JOIN base_role br ON br.F_Id = bor.F_Object_Id |
|
WHERE |
|
bor.F_Object_Type = 'Role' |
|
AND bor.F_Object_Type IS NOT NULL |
|
<if test="orgIdList != null and orgIdList.size() != 0"> |
|
AND bo.F_Id IN |
|
<foreach collection="orgIdList" |
|
item="orgIds" index="index" separator="," open="(" close=")"> |
|
#{orgIds} |
|
</foreach> |
|
</if> |
|
) a |
|
) |
|
</if> |
|
<if test="globalMark == -1 or globalMark == 1"> |
|
<if test="globalMark != 1"> |
|
OR |
|
</if> |
|
<if test="globalMark == 1"> |
|
Where |
|
</if> |
|
F_Id IN |
|
( |
|
SELECT F_Id FROM base_role WHERE F_Global_Mark = 1 |
|
) |
|
</if> |
|
<if test="keyword != null and keyword != ''"> |
|
AND (F_Full_Name LIKE #{keyword} OR F_En_Code LIKE #{keyword}) |
|
</if> |
|
<if test="enabledMark != null"> |
|
AND (f_enabled_Mark = #{enabledMark}) |
|
</if> |
|
</select> |
|
|
|
</mapper>
|
|
|