This commit is contained in:
2023-05-17 17:28:31 +08:00
parent a161a83023
commit 9be00db5e4
34 changed files with 422 additions and 177 deletions

View File

@ -4,13 +4,24 @@
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.qiaoba.module.system.mapper.SysMenuMapper">
<select id="checkMenuNameUnique" parameterType="com.qiaoba.api.system.entity.SysMenu" resultType="int">
select count(1) from sys_menu
<select id="checkMenuNameUnique" parameterType="com.qiaoba.api.system.entity.SysMenu" resultType="string">
select menu_id from sys_menu
where menu_name= #{menuName} and parent_id = #{parentId}
<if test="menuId != null">
and menu_id != #{menuId}
</if>
limit 1
</select>
<select id="existChild" resultType="string">
select menu_id from sys_menu where parent_id = #{menuId} limit 1
</select>
<select id="existUsed" resultType="string">
SELECT t2.role_name
FROM sys_role_menu t1
left join sys_role t2
on t1.role_id = t2.role_id
where t1.menu_id = #{menuId} limit 1
</select>
<select id="selectMenuIdsByRoleId" resultType="string">
@ -45,4 +56,5 @@
on t4.role_id = t3.role_id
where t4.user_id = #{userId} AND t3.status = '1'
</select>
</mapper>

View File

@ -7,4 +7,12 @@
<delete id="deleteByRoleId">
delete from sys_role_dept where role_id = #{roleId}
</delete>
<delete id="deleteByRoleIds">
delete from sys_role_dept where role_id in
<foreach collection="list" item="roleId" open="(" separator="," close=")">
#{roleId}
</foreach>
</delete>
</mapper>

View File

@ -4,22 +4,33 @@
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.qiaoba.module.system.mapper.SysRoleMapper">
<select id="checkRoleNameUnique" parameterType="String" resultType="int">
select count(*) from sys_role
where role_name = #{roleName} and tenant_id = #{tenantId}
<select id="checkRoleNameUnique" parameterType="String" resultType="string">
select role_id from sys_role
where role_name = #{roleName}
<if test="roleId != null and roleId != 0">
and role_id != #{roleId}
</if>
limit 1
</select>
<select id="checkRoleKeyUnique" parameterType="String" resultType="int">
select count(*) from sys_role
where role_key = #{roleKey} and tenant_id = #{tenantId}
<select id="checkRoleKeyUnique" parameterType="String" resultType="string">
select role_id from sys_role
where role_key = #{roleKey}
<if test="roleId != null and roleId != 0">
and role_id != #{roleId}
</if>
limit 1
</select>
<select id="selectBindUserByRoleId" resultType="string">
SELECT t2.nickname
FROM sys_user_role t1
left join sys_user t2
on t1.user_id = t2.user_id
where t1.role_id in
<foreach collection="list" item="roleId" open="(" separator="," close=")">
#{roleId}
</foreach>
LIMIT 1
</select>
</mapper>

View File

@ -16,6 +16,28 @@
<result property="createTime" column="create_time"/>
</resultMap>
<resultMap type="com.qiaoba.module.system.templates.SysUserExport" id="ExportData">
<id property="userId" column="user_id"/>
<result property="deptName" column="dept_name"/>
<result property="username" column="username"/>
<result property="nickname" column="nickname"/>
<result property="email" column="email"/>
<result property="phone" column="phone"/>
<result property="sex" column="sex"/>
<result property="status" column="status"/>
<result property="createTime" column="create_time"/>
<collection property="roles" javaType="java.util.List" resultMap="RoleResult"/>
<collection property="posts" javaType="java.util.List" resultMap="PostResult"/>
</resultMap>
<resultMap id="RoleResult" type="string">
<result property="roleName" column="role_name"/>
</resultMap>
<resultMap id="PostResult" type="string">
<result property="postName" column="post_name"/>
</resultMap>
<sql id="selectUserVo">
SELECT u.user_id,u.dept_id,u.username,u.nickname,u.gender,u.phone,u.status,u.email,u.create_time,t2.dept_name
FROM sys_user u
@ -49,6 +71,38 @@
<include refid="selectUserVo"/>
</select>
<select id="selectExportData" resultMap="ExportData">
select t1.user_id, t1.username, t1.nickname, t1.email, t1.phone, t1.gender, t1.status,t1.create_time, t2.dept_name,t4.role_name,t6.post_name
from sys_user t1
left join sys_dept t2 on t1.dept_id = t2.dept_id
left join sys_user_role t3 on t1.user_id = t3.user_id
left join sys_role t4 on t4.role_id = t3.role_id
left join sys_user_post t5 on t5.user_id = t1.user_id
left join sys_post t6 on t6.post_id = t5.post_id
where t1.is_delete = #{param.isDelete}
<if test="param.username != null and param.username != ''">
AND t1.username like concat('%', #{param.username}, '%')
</if>
<if test="param.nickname != null and param.nickname != ''">
AND t1.nickname like concat('%', #{param.nickname}, '%')
</if>
<if test="param.status != null and param.status != ''">
AND t1.status = #{param.status}
</if>
<if test="param.deptId != null and param.deptId != ''">
AND t1.dept_id = #{param.deptId}
</if>
<if test="param.phone != null and param.phone != ''">
AND t1.phone like concat('%', #{param.phone}, '%')
</if>
<if test="param.beginTime != null and param.beginTime != ''">
AND t1.create_time &gt;= #{param.beginTime}
</if>
<if test="param.endTime != null and param.endTime != ''">
AND t1.create_time &lt;= #{param.endTime}
</if>
</select>
<select id="selectAllocatedList" resultMap="SysUserVoResult">
select distinct t1.user_id, t2.dept_name, t1.username, t1.nickname, t1.email, t1.phone, t1.status,t1.create_time
from sys_user t1