This commit is contained in:
2025-10-07 11:02:35 +08:00
parent c20b5af014
commit 8bd1edc75d
32 changed files with 1949 additions and 418 deletions

View File

@@ -168,4 +168,11 @@
WHERE id = #{id} AND deleted = 0
</update>
<!-- 检查菜单是否存在 -->
<select id="checkMenuExists">
SELECT * FROM tb_sys_menu WHERE id IN
<foreach collection="menuIds" item="menuId" open="(" separator="," close=")">
#{menuId}
</foreach>
</select>
</mapper>

View File

@@ -0,0 +1,89 @@
<?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="org.xyzh.system.mapper.MenuPermissionMapper">
<!-- 基础结果映射 -->
<resultMap id="BaseResultMap" type="org.xyzh.common.dto.menu.TbSysMenuPermission">
<id column="id" property="id" jdbcType="VARCHAR"/>
<result column="menu_id" property="menuID" jdbcType="VARCHAR"/>
<result column="permission_id" property="permissionID" jdbcType="VARCHAR"/>
<result column="creator" property="creator" jdbcType="VARCHAR"/>
<result column="updater" property="updater" jdbcType="VARCHAR"/>
<result column="create_time" property="createTime" jdbcType="TIMESTAMP"/>
<result column="update_time" property="updateTime" jdbcType="TIMESTAMP"/>
<result column="delete_time" property="deleteTime" jdbcType="TIMESTAMP"/>
<result column="deleted" property="deleted" jdbcType="BOOLEAN"/>
</resultMap>
<!-- 基础字段 -->
<sql id="Base_Column_List">
id, menu_id, permission_id, creator, updater,
create_time, update_time, delete_time, deleted
</sql>
<!-- 批量绑定菜单权限 -->
<insert id="batchBindMenuPermission">
INSERT INTO tb_sys_menu_permission (id, menu_id, permission_id, creator, create_time, deleted)
VALUES
<foreach collection="menuPermissions" item="menuPermission" separator=",">
(#{menuPermission.id}, #{menuPermission.menuID}, #{menuPermission.permissionID}, #{menuPermission.creator}, #{menuPermission.createTime}, 0)
</foreach>
</insert>
<!-- 批量解绑菜单权限(真删除) -->
<delete id="batchUnbindMenuPermission">
DELETE FROM tb_sys_menu_permission
WHERE menu_id IN
<foreach collection="menuPermissions" item="menuPermission" open="(" separator="," close=")">
#{menuPermission.menuID}
</foreach>
AND permission_id IN
<foreach collection="menuPermissions" item="menuPermission" open="(" separator="," close=")">
#{menuPermission.permissionID}
</foreach>
AND deleted = 0
</delete>
<!-- 根据菜单ID和权限ID查询关联关系 -->
<select id="selectByMenuIdAndPermissionId" resultMap="BaseResultMap">
SELECT
<include refid="Base_Column_List"/>
FROM tb_sys_menu_permission
WHERE deleted = 0
AND menu_id = #{menuId}
AND permission_id = #{permissionId}
LIMIT 1
</select>
<!-- 根据菜单ID查询权限关联列表 -->
<select id="selectByMenuId" resultMap="BaseResultMap">
SELECT
<include refid="Base_Column_List"/>
FROM tb_sys_menu_permission
WHERE deleted = 0
AND menu_id = #{menuId}
ORDER BY create_time ASC
</select>
<!-- 根据权限ID查询菜单关联列表 -->
<select id="selectByPermissionId" resultMap="BaseResultMap">
SELECT
<include refid="Base_Column_List"/>
FROM tb_sys_menu_permission
WHERE deleted = 0
AND permission_id = #{permissionId}
ORDER BY create_time ASC
</select>
<!-- 删除菜单权限关联(逻辑删除) -->
<update id="deleteByMenuIdAndPermissionId">
UPDATE tb_sys_menu_permission
SET deleted = 1,
delete_time = NOW(),
updater = #{updater}
WHERE deleted = 0
AND menu_id = #{menuId}
AND permission_id = #{permissionId}
</update>
</mapper>

View File

@@ -33,12 +33,6 @@
<if test="code != null and code != ''">
AND code = #{code}
</if>
<if test="permissionType != null">
AND permission_type = #{permissionType}
</if>
<if test="status != null">
AND status = #{status}
</if>
</where>
</sql>
@@ -73,32 +67,32 @@
</select>
<!-- 根据权限编码查询权限 -->
<select id="selectBycode" resultMap="BaseResultMap">
<select id="selectByPermissionCode" resultMap="BaseResultMap">
SELECT
<include refid="Base_Column_List"/>
FROM tb_sys_permission
WHERE deleted = 0
AND code = #{code}
AND code = #{permissionCode}
LIMIT 1
</select>
<!-- 检查权限名称是否存在 -->
<select id="countByname" resultType="int">
<select id="countByPermissionName" resultType="int">
SELECT COUNT(1)
FROM tb_sys_permission
WHERE deleted = 0
AND name = #{name}
AND name = #{permissionName}
<if test="excludeId != null and excludeId != ''">
AND id != #{excludeId}
</if>
</select>
<!-- 检查权限编码是否存在 -->
<select id="countBycode" resultType="int">
<select id="countByPermissionCode" resultType="int">
SELECT COUNT(1)
FROM tb_sys_permission
WHERE deleted = 0
AND code = #{code}
AND code = #{permissionCode}
<if test="excludeId != null and excludeId != ''">
AND id != #{excludeId}
</if>
@@ -125,11 +119,7 @@
<if test="permissionID != null">permission_id,</if>
<if test="name != null">name,</if>
<if test="code != null">code,</if>
<if test="permissionType != null">permission_type,</if>
<if test="resourceUrl != null">resource_url,</if>
<if test="httpMethod != null">http_method,</if>
<if test="description != null">description,</if>
<if test="status != null">status,</if>
<if test="creator != null">creator,</if>
<if test="createTime != null">create_time,</if>
deleted
@@ -139,11 +129,7 @@
<if test="permissionID != null">#{permissionID},</if>
<if test="name != null">#{name},</if>
<if test="code != null">#{code},</if>
<if test="permissionType != null">#{permissionType},</if>
<if test="resourceUrl != null">#{resourceUrl},</if>
<if test="httpMethod != null">#{httpMethod},</if>
<if test="description != null">#{description},</if>
<if test="status != null">#{status},</if>
<if test="creator != null">#{creator},</if>
<if test="createTime != null">#{createTime},</if>
0
@@ -157,11 +143,7 @@
<if test="permissionID != null">permission_id = #{permissionID},</if>
<if test="name != null">name = #{name},</if>
<if test="code != null">code = #{code},</if>
<if test="permissionType != null">permission_type = #{permissionType},</if>
<if test="resourceUrl != null">resource_url = #{resourceUrl},</if>
<if test="httpMethod != null">http_method = #{httpMethod},</if>
<if test="description != null">description = #{description},</if>
<if test="status != null">status = #{status},</if>
<if test="updater != null">updater = #{updater},</if>
update_time = NOW()
</set>
@@ -176,4 +158,16 @@
WHERE id = #{id} AND deleted = 0
</update>
<!-- checkPermissionExists -->
<select id="checkPermissionExists">
SELECT
<include refid="Base_Column_List"/>
FROM tb_sys_permission
WHERE deleted = 0
AND permission_id IN
<foreach collection="permissionIds" item="permissionId" open="(" separator="," close=")">
#{permissionId}
</foreach>
</select>
</mapper>

View File

@@ -177,4 +177,16 @@
WHERE id = #{id} AND deleted = 0
</update>
<!-- checkRoleExists -->
<select id="checkRoleExists">
SELECT
<include refid="TbSysRole_Column_List"/>
FROM tb_sys_role
WHERE deleted = 0
AND role_id IN
<foreach collection="roleIds" item="roleId" open="(" separator="," close=")">
#{roleId}
</foreach>
</select>
</mapper>

View File

@@ -0,0 +1,89 @@
<?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="org.xyzh.system.mapper.RolePermissionMapper">
<!-- 基础结果映射 -->
<resultMap id="BaseResultMap" type="org.xyzh.common.dto.role.TbSysRolePermission">
<id column="id" property="id" jdbcType="VARCHAR"/>
<result column="role_id" property="roleID" jdbcType="VARCHAR"/>
<result column="permission_id" property="permissionID" jdbcType="VARCHAR"/>
<result column="creator" property="creator" jdbcType="VARCHAR"/>
<result column="updater" property="updater" jdbcType="VARCHAR"/>
<result column="create_time" property="createTime" jdbcType="TIMESTAMP"/>
<result column="update_time" property="updateTime" jdbcType="TIMESTAMP"/>
<result column="delete_time" property="deleteTime" jdbcType="TIMESTAMP"/>
<result column="deleted" property="deleted" jdbcType="BOOLEAN"/>
</resultMap>
<!-- 基础字段 -->
<sql id="Base_Column_List">
id, role_id, permission_id, creator, updater,
create_time, update_time, delete_time, deleted
</sql>
<!-- 批量绑定角色权限 -->
<insert id="batchBindRolePermission">
INSERT INTO tb_sys_role_permission (id, role_id, permission_id, creator, create_time, deleted)
VALUES
<foreach collection="rolePermissions" item="rolePermission" separator=",">
(#{rolePermission.id}, #{rolePermission.roleID}, #{rolePermission.permissionID}, #{rolePermission.creator}, #{rolePermission.createTime}, 0)
</foreach>
</insert>
<!-- 批量解绑角色权限(真删除,避免批量绑定时报错存在的问题) -->
<delete id="batchUnbindRolePermission">
DELETE FROM tb_sys_role_permission
WHERE role_id IN
<foreach collection="rolePermissions" item="rolePermission" open="(" separator="," close=")">
#{rolePermission.roleID}
</foreach>
AND permission_id IN
<foreach collection="rolePermissions" item="rolePermission" open="(" separator="," close=")">
#{rolePermission.permissionID}
</foreach>
AND deleted = 0
</delete>
<!-- 根据角色ID和权限ID查询关联关系 -->
<select id="selectByRoleIdAndPermissionId" resultMap="BaseResultMap">
SELECT
<include refid="Base_Column_List"/>
FROM tb_sys_role_permission
WHERE deleted = 0
AND role_id = #{rolePermission.roleID}
AND permission_id = #{rolePermission.permissionID}
LIMIT 1
</select>
<!-- 根据角色ID查询权限关联列表 -->
<select id="selectByRoleId" resultMap="BaseResultMap">
SELECT
<include refid="Base_Column_List"/>
FROM tb_sys_role_permission
WHERE deleted = 0
AND role_id = #{rolePermission.roleID}
ORDER BY create_time ASC
</select>
<!-- 根据权限ID查询角色关联列表 -->
<select id="selectByPermissionId" resultMap="BaseResultMap">
SELECT
<include refid="Base_Column_List"/>
FROM tb_sys_role_permission
WHERE deleted = 0
AND permission_id = #{rolePermission.permissionID}
ORDER BY create_time ASC
</select>
<!-- 删除角色权限关联(逻辑删除) -->
<update id="deleteByRoleIdAndPermissionId">
UPDATE tb_sys_role_permission
SET deleted = 1,
delete_time = NOW(),
updater = #{updater}
WHERE deleted = 0
AND role_id = #{rolePermission.roleID}
AND permission_id = #{rolePermission.permissionID}
</update>
</mapper>

View File

@@ -0,0 +1,4 @@
<?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="org.xyzh.system.mapper.UserDeptRoleMapper">
</mapper>

View File

@@ -0,0 +1,5 @@
<?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="org.xyzh.system.mapper.UserInfoMapper">
</mapper>

View File

@@ -78,16 +78,6 @@
LIMIT 1
</select>
<!-- 根据用户ID查询用户信息 -->
<select id="selectUserInfoById" resultMap="UserInfoResultMap">
SELECT
<include refid="UserInfo_Column_List"/>
FROM tb_sys_user_info
WHERE deleted = 0
AND user_id = #{userId}
LIMIT 1
</select>
<!-- 根据邮箱查询用户 -->
<select id="selectByEmail" resultMap="BaseResultMap">
SELECT
@@ -227,4 +217,33 @@
WHERE id = #{id} AND deleted = 0
</update>
<!-- 用户信息相关 -->
<!-- 根据用户ID查询用户信息 -->
<select id="selectUserInfoById" resultMap="UserInfoResultMap">
SELECT
<include refid="UserInfo_Column_List"/>
FROM tb_sys_user_info
WHERE deleted = 0
AND user_id = #{userId}
LIMIT 1
</select>
<!-- 更新用户信息 -->
<update id="updateUserInfo">
UPDATE tb_sys_user_info
<set>
<if test="userInfo.avatar != null">avatar = #{userInfo.avatar},</if>
<if test="userInfo.gender != null">gender = #{userInfo.gender},</if>
<if test="userInfo.familyName != null">family_name = #{userInfo.familyName},</if>
<if test="userInfo.givenName != null">given_name = #{userInfo.givenName},</if>
<if test="userInfo.fullName != null">full_name = #{userInfo.fullName},</if>
<if test="userInfo.idCard != null">id_card = #{userInfo.idCard},</if>
<if test="userInfo.address != null">address = #{userInfo.address},</if>
<if test="userInfo.updateTime != null">update_time = #{userInfo.updateTime}</if>
<if test="userInfo.updateTime == null">update_time = NOW() </if>
</set>
WHERE user_id = #{userInfo.userID} AND deleted = 0
</update>
</mapper>