From b7df6735bcb2d447cae7fcfba2d12accf3dd2fcc Mon Sep 17 00:00:00 2001
From: linwei <872216696@qq.com>
Date: Sat, 03 Feb 2024 17:27:21 +0800
Subject: [PATCH] 消防检查优化
---
src/main/java/org/springblade/modules/system/mapper/UserMapper.xml | 53 +++++++++++++++++++++++++++++++++++++++++++++++++----
1 files changed, 49 insertions(+), 4 deletions(-)
diff --git a/src/main/java/org/springblade/modules/system/mapper/UserMapper.xml b/src/main/java/org/springblade/modules/system/mapper/UserMapper.xml
index 89e8605..a3e9195 100644
--- a/src/main/java/org/springblade/modules/system/mapper/UserMapper.xml
+++ b/src/main/java/org/springblade/modules/system/mapper/UserMapper.xml
@@ -61,7 +61,7 @@
</foreach>
)
</if>
- ORDER BY id
+ ORDER BY create_time desc
</select>
<select id="getUser" resultMap="userResultMap">
@@ -107,10 +107,28 @@
and (account = #{phoneNumber} or phone = #{phoneNumber})
</select>
+ <!--用户详情map-->
+ <resultMap id="selectUserDetailMap" type="org.springblade.modules.system.vo.UserDetailVO" autoMapping="true">
+ <id property="id" column="id" />
+ <collection property="deptList" javaType="java.util.List"
+ ofType="org.springblade.modules.system.vo.DeptDetailVO" autoMapping="true">
+ <id property="id" column="cid"/>
+ <id property="level" column="region_level"/>
+ </collection>
+ </resultMap>
+
<!--用户详情接口-->
- <select id="getUserInfo" resultType="org.springblade.modules.system.vo.UserDetailVO">
- SELECT * FROM blade_user where is_deleted = 0
- and id = #{userId}
+ <select id="getUserInfo" resultMap="selectUserDetailMap">
+ SELECT
+ bu.*,
+ bd.id as cid,bd.parent_id,bd.ancestors,bd.dept_category,bd.dept_name,bd.full_name,bd.sort,bd.region_code,
+ br.region_level
+ FROM blade_user bu
+ left join blade_user_dept bud on bud.user_id = bu.id
+ left join blade_dept bd on bud.dept_id = bd.id and bd.is_deleted = 0
+ left join blade_region br on br.code = bd.region_code
+ where bu.is_deleted = 0
+ and bu.id = #{userId}
</select>
@@ -183,6 +201,33 @@
where bu.is_deleted = 0 and bud.id is null
and bu.dept_id!=''
</select>
+ <select id="getUserListByDeptIds" resultType="org.springblade.modules.system.entity.User">
+ SELECT * FROM blade_user bu where is_deleted = 0
+ and dept_id in
+ <foreach collection="deptIds.split(',')" item="item" open="(" close=")" separator=",">
+ #{item}
+ </foreach>
+ </select>
+
+ <select id="getUserInfoByPropertyId" resultType="org.springblade.modules.system.entity.User"
+ parameterType="java.lang.String">
+ SELECT
+ *
+ FROM
+ blade_user bu
+ WHERE
+ bu.role_id = #{roleId}
+ and bu.dept_id IN (
+ SELECT
+ id
+ FROM
+ ( SELECT id, parent_id FROM blade_dept ORDER BY parent_id, id ) org_query,
+ (SELECT @id := #{deptId} ) initialisation
+ WHERE
+ FIND_IN_SET( parent_id, @id ) > 0 AND @id := CONCAT( @id, ',', id )
+ )
+
+ </select>
</mapper>
--
Gitblit v1.9.3