58 lines
2.0 KiB
XML
58 lines
2.0 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="com.yfd.platform.system.mapper.SysUserTenantMapper">
|
|||
|
|
|
|||
|
|
<!-- 查询用户可访问的门户ID列表 -->
|
|||
|
|
<select id="getTenantIdsByUserId" resultType="java.lang.String">
|
|||
|
|
SELECT TENANT_ID
|
|||
|
|
FROM SYS_USER_TENANT
|
|||
|
|
WHERE USER_ID = #{userId}
|
|||
|
|
</select>
|
|||
|
|
|
|||
|
|
<!-- 批量删除用户-门户关联 -->
|
|||
|
|
<delete id="deleteByUserId">
|
|||
|
|
DELETE FROM SYS_USER_TENANT WHERE USER_ID = #{userId}
|
|||
|
|
</delete>
|
|||
|
|
|
|||
|
|
<!-- 批量新增用户-门户关联(使用 MERGE 兼容 Oracle) -->
|
|||
|
|
<insert id="batchInsert">
|
|||
|
|
MERGE INTO SYS_USER_TENANT T
|
|||
|
|
USING (
|
|||
|
|
<foreach collection="tenantIds" item="tenantId" index="index" separator="UNION ALL">
|
|||
|
|
SELECT
|
|||
|
|
#{userId, jdbcType=VARCHAR} AS USER_ID,
|
|||
|
|
#{tenantId, jdbcType=VARCHAR} AS TENANT_ID
|
|||
|
|
FROM DUAL
|
|||
|
|
</foreach>
|
|||
|
|
) S
|
|||
|
|
ON (T.USER_ID = S.USER_ID AND T.TENANT_ID = S.TENANT_ID)
|
|||
|
|
WHEN NOT MATCHED THEN
|
|||
|
|
INSERT (ID, USER_ID, TENANT_ID)
|
|||
|
|
VALUES (SYS_GUID(), S.USER_ID, S.TENANT_ID)
|
|||
|
|
</insert>
|
|||
|
|
|
|||
|
|
<!-- 删除指定用户和指定门户的关联 -->
|
|||
|
|
<delete id="deleteByUserIdAndTenantId">
|
|||
|
|
DELETE FROM SYS_USER_TENANT WHERE USER_ID = #{userId} AND TENANT_ID = #{tenantId}
|
|||
|
|
</delete>
|
|||
|
|
|
|||
|
|
<!-- 查询某门户下的所有用户ID -->
|
|||
|
|
<select id="getUserIdsByTenantId" resultType="java.lang.String">
|
|||
|
|
SELECT USER_ID FROM SYS_USER_TENANT WHERE TENANT_ID = #{tenantId}
|
|||
|
|
</select>
|
|||
|
|
|
|||
|
|
<!-- 批量查询用户-门户关联 -->
|
|||
|
|
<select id="getTenantIdsByUserIds" resultType="java.util.HashMap">
|
|||
|
|
SELECT
|
|||
|
|
USER_ID AS "userId",
|
|||
|
|
TENANT_ID AS "tenantId"
|
|||
|
|
FROM SYS_USER_TENANT
|
|||
|
|
WHERE USER_ID IN
|
|||
|
|
<foreach collection="userIds" item="id" open="(" separator="," close=")">
|
|||
|
|
#{id}
|
|||
|
|
</foreach>
|
|||
|
|
</select>
|
|||
|
|
|
|||
|
|
</mapper>
|