tyr/tyr-server/src/main/resources/mapper/TyrSaasAuthMapper.xml

78 lines
2.8 KiB
XML

<?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="cn.axzo.tyr.server.repository.mapper.TyrSaasAuthMapper">
<select id="listPermissionByRoleTerminal" resultType="cn.axzo.tyr.server.repository.entity.RolePermission">
SELECT
rg.role_id AS roleId,
rg.group_id AS groupId,
f.id AS featureId,
f.feature_code AS featureCode,
f.feature_name as featureName,
f.feature_type AS featureType
FROM
saas_pgroup_role_relation rg,
saas_pgroup_permission_relation pg,
saas_feature f
WHERE
rg.group_id = pg.group_id
AND pg.feature_id = f.id
AND rg.is_delete = 0
AND pg.is_delete = 0
AND f.is_delete = 0
AND rg.role_id IN
<foreach collection="roleIdList" open="(" close=")" separator="," index="index" item="item">
#{item, jdbcType=NUMERIC}
</foreach>
<if test="terminal != null and terminal !=''">
AND f.terminal = #{terminal}
</if>
</select>
<select id="listProductFeature" parameterType="cn.axzo.tyr.server.repository.entity.ProductFeatureQuery" resultType="cn.axzo.tyr.server.repository.entity.ProductFeatureInfo">
SELECT DISTINCT
r.product_module_id AS productModuleId,
f.id AS featureId,
f.feature_code AS featureCode
FROM
saas_product_module_feature_relation r,
saas_feature f
WHERE
r.feature_id = f.id
AND r.is_delete = 0
AND f.is_delete = 0
<if test="query.productIds != null">
AND r.product_module_id IN
<foreach collection="query.productIds" open="(" close=")" separator="," index="index" item="item">
#{item, jdbcType=NUMERIC}
</foreach>
</if>
<if test="query.featureCodes != null">
AND f.feature_code IN
<foreach collection="query.featureCodes" open="(" close=")" separator="," index="index" item="item">
#{item, jdbcType=VARCHAR}
</foreach>
</if>
<if test="query.terminal != null and query.terminal != ''">
AND f.terminal = #{query.terminal}
</if>
</select>
<select id="listPermissionGroupByCode" resultType="long">
SELECT
DISTINCT pg.group_id
FROM
saas_pgroup_permission_relation pg,
saas_feature f
WHERE
pg.feature_id = f.id
AND pg.is_delete = 0
AND f.is_delete = 0
AND f.feature_code IN
<foreach collection="featureCodes" open="(" close=")" separator="," index="index" item="item">
#{item, jdbcType=VARCHAR}
</foreach>
</select>
</mapper>