<?xml version="1.0" encoding="UTF-8"?>

<!--
  ~
  ~      Copyright (c) 2018-2025, lengleng All rights reserved.
  ~
  ~  Redistribution and use in source and binary forms, with or without
  ~  modification, are permitted provided that the following conditions are met:
  ~
  ~ Redistributions of source code must retain the above copyright notice,
  ~  this list of conditions and the following disclaimer.
  ~  Redistributions in binary form must reproduce the above copyright
  ~  notice, this list of conditions and the following disclaimer in the
  ~  documentation and/or other materials provided with the distribution.
  ~  Neither the name of the yifu4cloud.com developer nor the names of its
  ~  contributors may be used to endorse or promote products derived from
  ~  this software without specific prior written permission.
  ~  Author: lengleng (wangiegie@gmail.com)
  ~
  -->

<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">

<mapper namespace="com.yifu.cloud.plus.v1.permission.mapper.SysUserRoleResMapper">

  <resultMap id="sysUserRoleResMap" type="com.yifu.cloud.plus.v1.yifu.permission.entity.SysUserRoleRes">
    <id property="fdId" column="fd_id"/>
    <result property="userId" column="user_id"/>
    <result property="roleId" column="role_id"/>
  </resultMap>
    <sql id="Base_Column_List">
                a.fd_id,
                a.user_id,
                a.login_name,
                a.role_id
    </sql>
    <sql id="sysUserRoleRes_where">
        <if test="sysUserRoleRes != null">
                    <if test="sysUserRoleRes.fdId != null and sysUserRoleRes.fdId.trim() != ''">
                        AND a.fd_id = #{sysUserRoleRes.fdId}
                    </if>
                    <if test="sysUserRoleRes.userId != null and sysUserRoleRes.userId.trim() != ''">
                        AND a.user_id = #{sysUserRoleRes.userId}
                    </if>
                    <if test="sysUserRoleRes.roleId != null and sysUserRoleRes.roleId.trim() != ''">
                        AND a.role_id = #{sysUserRoleRes.roleId}
                    </if>
        </if>
    </sql>
    <!--sysUserRoleRes简单分页查询-->
    <select id="getSysUserRoleResPage" resultMap="sysUserRoleResMap">
        SELECT
        <include refid="Base_Column_List"/>
        FROM sys_user_role_res a
        <where>
            1=1
            <include refid="sysUserRoleRes_where"/>
        </where>
    </select>

	<!--sysUserRoleRes简单分页查询-->
    <select id="getSysUserByRoleId" resultType="java.lang.String">
		SELECT
			DISTINCT u.fd_name
		FROM sys_user_role_res a
				 join sys_user_info u on a.user_id=u.fd_id
		where a.role_id = #{roleId}
    </select>

	<!-- 根据账号删除关联表 -->
	<delete id="deleteByUserId">
		delete from sys_user_role_res where login_name = #{loginName}
	</delete>

	<!-- 根据角色删除关联表 -->
	<delete id="deleteByRoleId">
		delete from sys_user_role_res where role_id = #{roleId}
	</delete>

</mapper>
