From 9c84530593e74c1596f84d42ab1ddc13910954c5 Mon Sep 17 00:00:00 2001 From: 疯狂的狮子Li <15040126243@163.com> Date: 星期二, 26 十二月 2023 00:46:34 +0800 Subject: [PATCH] update 优化 框架整体提高查询性能 --- ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml | 75 +++++++------------------------------ 1 files changed, 14 insertions(+), 61 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml index 74e41b9..ce1c0d6 100644 --- a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml +++ b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml @@ -2,75 +2,39 @@ <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> -<mapper namespace="com.ruoyi.system.mapper.SysUserMapper"> +<mapper namespace="org.dromara.system.mapper.SysUserMapper"> <!-- 澶氱粨鏋勫祵濂楄嚜鍔ㄦ槧灏勯渶甯︿笂姣忎釜瀹炰綋鐨勪富閿甶d 鍚﹀垯鏄犲皠浼氬け璐� --> - <resultMap type="com.ruoyi.system.domain.vo.SysUserVo" id="SysUserResult"> + <resultMap type="org.dromara.system.domain.vo.SysUserVo" id="SysUserResult"> <id property="userId" column="user_id"/> <result property="deptId" column="dept_id"/> <association property="dept" column="dept_id" resultMap="deptResult"/> - <collection property="roles" javaType="java.util.List" resultMap="RoleResult"/> </resultMap> - <resultMap id="deptResult" type="com.ruoyi.system.domain.vo.SysDeptVo"> + <resultMap id="deptResult" type="org.dromara.system.domain.vo.SysDeptVo"> <id property="deptId" column="dept_id"/> + <result property="email" column="dept_email"/> + <result property="status" column="dept_status"/> + <result property="createTime" column="dept_create_time"/> </resultMap> - - <resultMap id="RoleResult" type="com.ruoyi.system.domain.vo.SysRoleVo"> - <id property="roleId" column="role_id"/> - </resultMap> - - <sql id="selectUserVo"> - select u.user_id, - u.tenant_id, - u.dept_id, - u.user_name, - u.nick_name, - u.user_type, - u.email, - u.avatar, - u.phonenumber, - u.password, - u.sex, - u.status, - u.del_flag, - u.login_ip, - u.login_date, - u.create_by, - u.create_time, - u.remark, - d.dept_id, - d.parent_id, - d.ancestors, - d.dept_name, - d.order_num, - d.leader, - d.status as dept_status, - r.role_id, - r.role_name, - r.role_key, - r.role_sort, - r.data_scope, - r.status as role_status - from sys_user u - left join sys_dept d on u.dept_id = d.dept_id - left join sys_user_role sur on u.user_id = sur.user_id - left join sys_role r on r.role_id = sur.role_id - </sql> <select id="selectPageUserList" resultMap="SysUserResult"> select u.user_id, u.dept_id, u.nick_name, u.user_name, u.email, u.avatar, u.phonenumber, u.sex, - u.status, u.del_flag, u.login_ip, u.login_date, u.create_by, u.create_time, u.remark, d.dept_name, d.leader + u.status, u.del_flag, u.login_ip, u.login_date, u.create_by, u.create_time, u.remark, + d.dept_name, d.leader, u1.user_name as leaderName from sys_user u left join sys_dept d on u.dept_id = d.dept_id + left join sys_user u1 on u1.user_id = d.leader ${ew.getCustomSqlSegment} </select> <select id="selectUserList" resultMap="SysUserResult"> select u.user_id, u.dept_id, u.nick_name, u.user_name, u.email, u.avatar, u.phonenumber, u.sex, - u.status, u.del_flag, u.login_ip, u.login_date, u.create_by, u.create_time, u.remark, d.dept_name, d.leader + u.status, u.del_flag, u.login_ip, u.login_date, u.create_by, u.create_time, u.remark, + d.dept_name, d.leader, u1.user_name as leaderName from sys_user u left join sys_dept d on u.dept_id = d.dept_id + left join sys_user u1 on u1.user_id = d.leader ${ew.getCustomSqlSegment} </select> @@ -92,19 +56,8 @@ ${ew.getCustomSqlSegment} </select> - <select id="selectUserByUserName" parameterType="String" resultMap="SysUserResult"> - <include refid="selectUserVo"/> - where u.del_flag = '0' and u.user_name = #{userName} - </select> - - <select id="selectUserByPhonenumber" parameterType="String" resultMap="SysUserResult"> - <include refid="selectUserVo"/> - where u.del_flag = '0' and u.phonenumber = #{phonenumber} - </select> - - <select id="selectUserById" parameterType="Long" resultMap="SysUserResult"> - <include refid="selectUserVo"/> - where u.del_flag = '0' and u.user_id = #{userId} + <select id="countUserById" resultType="Long"> + select count(*) from sys_user where del_flag = '0' and user_id = #{userId} </select> -- Gitblit v1.9.3