From 1ff17fd97a85cd191467b4a2ffe0e4b7b1959af5 Mon Sep 17 00:00:00 2001
From: liurunyu <lry9898@163.com>
Date: 星期日, 12 十一月 2023 17:00:25 +0800
Subject: [PATCH] 查询用户同时得到其对应的多个角色,采用积极关联查询方式

---
 pipIrr-platform/pipIrr-global/src/main/resources/mapper/BaRoleMapper.xml |   45 +++++++++++++++++++++++++++++++++++----------
 1 files changed, 35 insertions(+), 10 deletions(-)

diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/BaRoleMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/BaRoleMapper.xml
index e722f57..bf3f4a3 100644
--- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/BaRoleMapper.xml
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/BaRoleMapper.xml
@@ -1,26 +1,51 @@
 <?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.dy.pipIrrGlobal.daoBa.BaRoleMapper">
+
   <resultMap id="BaseResultMap" type="com.dy.pipIrrGlobal.pojoBa.BaRole">
-    <!--@mbg.generated-->
-    <!--@Table ba_role-->
     <result column="id" jdbcType="BIGINT" property="id" />
     <result column="name" jdbcType="VARCHAR" property="name" />
-    <result column="deleted" jdbcType="TINYINT" property="deleted" />
+    <result property="deleted" column="deleted" typeHandler="com.dy.common.mybatis.envm.EnumCodeTypeHandler" javaType="com.dy.common.mybatis.envm.Deleted"/>
   </resultMap>
-  <select id="select" resultMap="BaseResultMap">
-    select *
+
+  <resultMap id="partResultMap" type="com.dy.pipIrrGlobal.pojoBa.BaRole">
+    <result column="id" jdbcType="BIGINT" property="id" />
+    <result column="name" jdbcType="VARCHAR" property="name" />
+  </resultMap>
+
+  <sql id="Base_Column_List">
+    id, name, deleted
+  </sql>
+
+  <sql id="part_Column_List">
+    id, name
+  </sql>
+
+  <select id="selectAll" resultMap="BaseResultMap">
+    select
+    <include refid="Base_Column_List" />
     from ba_role
   </select>
+
+  <select id="selectByUserId" resultMap="partResultMap">
+    select <include refid="part_Column_List" />
+    from ba_role r
+    inner join ba_user_role ur on r.id = ur.roleId
+    where r.deleted != 1
+    <if test="userId != null">
+      and ur.userId = #{userId,jdbcType=BIGINT}
+    </if>
+  </select>
+
   <insert id="insert" parameterType="com.dy.pipIrrGlobal.pojoBa.BaRole">
-    <!--@mbg.generated-->
-    insert into ba_role (id, `name`, deleted
-      )
-    values (#{id,jdbcType=BIGINT}, #{name,jdbcType=VARCHAR}, #{deleted,jdbcType=TINYINT}
+    insert into ba_role (id, `name`, deleted)
+    values (#{id,jdbcType=BIGINT},
+            #{name,jdbcType=VARCHAR},
+            #{deleted, typeHandler=com.dy.common.mybatis.envm.EnumCodeTypeHandler, jdbcType=TINYINT}
       )
   </insert>
+
   <insert id="insertSelective" parameterType="com.dy.pipIrrGlobal.pojoBa.BaRole">
-    <!--@mbg.generated-->
     insert into ba_role
     <trim prefix="(" suffix=")" suffixOverrides=",">
       <if test="id != null">

--
Gitblit v1.8.0