From d41e0da5df20d559b0b9b8c180d1bf70ba7c1845 Mon Sep 17 00:00:00 2001
From: 刘帅 <rr.iii@qq.com>
Date: 星期三, 07 十月 2026 17:49:26 +0800
Subject: [PATCH] 员工管理权限修改(新需求)
---
cloud-server-management/src/main/resources/mapper/UserMapper.xml | 56 ++++++++++++++++++++++++++++++++++++++++++++++++--------
1 files changed, 48 insertions(+), 8 deletions(-)
diff --git a/cloud-server-management/src/main/resources/mapper/UserMapper.xml b/cloud-server-management/src/main/resources/mapper/UserMapper.xml
index 71b8210..f347cc1 100644
--- a/cloud-server-management/src/main/resources/mapper/UserMapper.xml
+++ b/cloud-server-management/src/main/resources/mapper/UserMapper.xml
@@ -53,22 +53,60 @@
<if test="beginTime != null and beginTime != '' and endTime != null and endTime != ''">
and (createTime between CONCAT(#{beginTime},' 00:00:00') and CONCAT(#{endTime},' 23:59:59'))
</if>
+ order by id desc
</select>
<update id="setStatus">
update sys_user set status = #{status} where id =
- #{userId}
+ #{userId}
</update>
<update id="changePwd">
update sys_user set password = #{pwd} where id =
- #{userId}
+ #{userId}
</update>
<update id="setRoles">
update sys_user set roleid = #{roleIds} where id =
- #{userId}
+ #{userId}
</update>
+
+ <delete id="deleteStoreRelations">
+ delete from sys_user_store where userId = #{userId}
+ </delete>
+ <insert id="insertStoreRelation">
+ insert into sys_user_store(id, userId, storeId) values (#{id}, #{userId}, #{storeId})
+ </insert>
+ <select id="getStoreIdsByUserId" resultType="java.lang.Integer">
+ select distinct storeId from (
+ select storeId from sys_user_store where userId = #{userId}
+ union all
+ select objectId as storeId from sys_user where id = #{userId} and objectType = 3 and objectId is not null
+ union all
+ select id as storeId from t_store where storeStaffId = #{userId}
+ ) relation_store
+ </select>
+ <select id="getUserIdsByStoreIds" resultType="java.lang.Integer">
+ select distinct userId from (
+ select userId from sys_user_store
+ where isDeleted = 0 and storeId in
+ <foreach collection="storeIds" separator="," item="storeId" open="(" close=")">
+ #{storeId}
+ </foreach>
+ union all
+ select id as userId from sys_user
+ where objectType = 3 and objectId in
+ <foreach collection="storeIds" separator="," item="storeId" open="(" close=")">
+ #{storeId}
+ </foreach>
+ union all
+ select storeStaffId as userId from t_store
+ where storeStaffId is not null and id in
+ <foreach collection="storeIds" separator="," item="storeId" open="(" close=")">
+ #{storeId}
+ </foreach>
+ ) relation_user
+ </select>
<select id="getByAccount" resultType="com.dsh.guns.modular.system.model.User">
select
@@ -83,7 +121,7 @@
<select id="getUserListPage" resultType="map" parameterType="com.baomidou.mybatisplus.extension.plugins.pagination.Page">
SELECT * FROM (select CASE when d2.simplename is null then d1.simplename else d2.simplename end as parentName,
- uu.sex as sexName,
+ uu.sex as sexName,
d1.simplename as deptName, uu.status as statusName,
rr.roleName,
DATE_FORMAT(uu.createtime, '%Y-%m-%d %H:%i:%s') as createtime1,
@@ -115,10 +153,11 @@
</where>
order by o.id desc
</select>
- <select id="searchUsers" resultType="com.dsh.guns.modular.system.model.UserListVO">
- select t1.id,t1.name ,t1.phone ,t1.avatar,t1.birthday,t1.sex,t1.idCard,t1.status
- ,t2.simplename as deptName from sys_user t1
- left join sys_dept t2 on t1.deptid = t2.id
+ <select id="searchUsers" resultType="com.dsh.guns.modular.system.model.UserListVO">
+ select t1.id,t1.name ,t1.phone ,t1.avatar,t1.birthday,t1.sex,t1.idCard,t1.status,t1.version
+ ,t2.simplename as deptName,
+ (select group_concat(r.name separator ',') from sys_role r where find_in_set(r.id, t1.roleid)) as roleName from sys_user t1
+ left join sys_dept t2 on t1.deptid = t2.id
<where>
<if test="query.name != null and query.name != ''">
and t1.name like CONCAT('%',#{query.name},'%')
@@ -144,6 +183,7 @@
</if>
and t1.status != 3
</where>
+ order by t1.id desc
</select>
</mapper>
--
Gitblit v1.7.1