mirror of
https://github.com/FatttSnake/Pinnacle-OA.git
synced 2026-04-06 07:21:24 +08:00
Fixed pagination in UserManagement
This commit is contained in:
@@ -20,6 +20,8 @@ import java.util.List;
|
|||||||
public interface UserMapper extends BaseMapper<User> {
|
public interface UserMapper extends BaseMapper<User> {
|
||||||
IPage<User> getAll(IPage<User> page);
|
IPage<User> getAll(IPage<User> page);
|
||||||
|
|
||||||
|
List<User> getAllWithRoleAndGroup(@Param("userList") List<User> userList);
|
||||||
|
|
||||||
List<User> getAllAffairUser();
|
List<User> getAllAffairUser();
|
||||||
|
|
||||||
List<User> getAllDepartmentUser(@Param("departmentId")long departmentId);
|
List<User> getAllDepartmentUser(@Param("departmentId")long departmentId);
|
||||||
|
|||||||
@@ -93,6 +93,7 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements IU
|
|||||||
public IPage<User> getAllUser(Long currentPage, Long pageSize) {
|
public IPage<User> getAllUser(Long currentPage, Long pageSize) {
|
||||||
IPage<User> userPage = PageDTO.of(currentPage, pageSize);
|
IPage<User> userPage = PageDTO.of(currentPage, pageSize);
|
||||||
userPage = userMapper.getAll(userPage);
|
userPage = userMapper.getAll(userPage);
|
||||||
|
userPage.setRecords(userMapper.getAllWithRoleAndGroup(userPage.getRecords()));
|
||||||
userPage.getRecords().forEach(user -> {
|
userPage.getRecords().forEach(user -> {
|
||||||
if (user.getId() == 1L) {
|
if (user.getId() == 1L) {
|
||||||
user.setRoles(List.of(new Role(0L, "超级管理员")));
|
user.setRoles(List.of(new Role(0L, "超级管理员")));
|
||||||
|
|||||||
@@ -2,34 +2,51 @@
|
|||||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||||
<mapper namespace="com.cfive.pinnacle.mapper.permission.UserMapper">
|
<mapper namespace="com.cfive.pinnacle.mapper.permission.UserMapper">
|
||||||
|
|
||||||
<select id="getAll" resultMap="userMap">
|
<select id="getAll" resultMap="userBase">
|
||||||
select distinct t_user.id as user_id,
|
select t_user.id as user_id,
|
||||||
t_user.username as user_username,
|
t_user.username as user_username,
|
||||||
t_user.department_id as user_department_id,
|
t_user.department_id as user_department_id,
|
||||||
t_user.enable as user_enable,
|
t_user.enable as user_enable,
|
||||||
t_user.deleted as user_deleted,
|
t_user.deleted as user_deleted,
|
||||||
t_user.version as user_version,
|
t_user.version as user_version
|
||||||
ts.id as staff_id,
|
from t_user
|
||||||
ts.first_name as staff_first_name,
|
where deleted = 0
|
||||||
ts.last_name as staff_last_name,
|
</select>
|
||||||
ts.deleted as staff_deleted,
|
|
||||||
ts.version as staff_version,
|
<select id="getAllWithRoleAndGroup" resultMap="userMap">
|
||||||
tr.id as role_id,
|
select distinct t_user.id as user_id,
|
||||||
tr.enable as role_enable,
|
t_user.username as user_username,
|
||||||
tr.name as role_name,
|
t_user.department_id as user_department_id,
|
||||||
tr.deleted as role_deleted,
|
t_user.enable as user_enable,
|
||||||
tr.version as role_version,
|
t_user.deleted as user_deleted,
|
||||||
tg.id as group_id,
|
t_user.version as user_version,
|
||||||
tg.name as group_name,
|
ts.id as staff_id,
|
||||||
tg.enable as group_enable,
|
ts.first_name as staff_first_name,
|
||||||
tg.deleted as group_deleted,
|
ts.last_name as staff_last_name,
|
||||||
tg.version as group_version
|
ts.deleted as staff_deleted,
|
||||||
|
ts.version as staff_version,
|
||||||
|
tr.id as role_id,
|
||||||
|
tr.enable as role_enable,
|
||||||
|
tr.name as role_name,
|
||||||
|
tr.deleted as role_deleted,
|
||||||
|
tr.version as role_version,
|
||||||
|
tg.id as group_id,
|
||||||
|
tg.name as group_name,
|
||||||
|
tg.enable as group_enable,
|
||||||
|
tg.deleted as group_deleted,
|
||||||
|
tg.version as group_version
|
||||||
from (select * from t_user where deleted = 0) as t_user
|
from (select * from t_user where deleted = 0) as t_user
|
||||||
left join (select * from t_staff where deleted = 0) as ts on ts.user_id = t_user.id
|
left join (select * from t_staff where deleted = 0) as ts on ts.user_id = t_user.id
|
||||||
left join (select * from t_user_role where deleted = 0) as tur on t_user.id = tur.user_id
|
left join (select * from t_user_role where deleted = 0) as tur on t_user.id = tur.user_id
|
||||||
left join (select * from t_role where deleted = 0) as tr on tr.id = tur.role_id
|
left join (select * from t_role where deleted = 0) as tr on tr.id = tur.role_id
|
||||||
left join (select * from t_user_group where deleted = 0) as tug on t_user.id = tug.user_id
|
left join (select * from t_user_group where deleted = 0) as tug on t_user.id = tug.user_id
|
||||||
left join (select * from t_group where deleted = 0) as tg on tg.id = tug.group_id
|
left join (select * from t_group where deleted = 0) as tg on tg.id = tug.group_id
|
||||||
|
<where>
|
||||||
|
<foreach collection="userList" item="item" index="index" open="t_user.id in (" separator="," close=")"
|
||||||
|
nullable="true">
|
||||||
|
#{item.id}
|
||||||
|
</foreach>
|
||||||
|
</where>
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="getOneById" resultMap="userMap">
|
<select id="getOneById" resultMap="userMap">
|
||||||
@@ -66,39 +83,40 @@
|
|||||||
|
|
||||||
<select id="getOneWithPowerByUsername" resultMap="userWithPowerMap">
|
<select id="getOneWithPowerByUsername" resultMap="userWithPowerMap">
|
||||||
select t_user.id as user_id,
|
select t_user.id as user_id,
|
||||||
t_user.username as user_username,
|
t_user.username as user_username,
|
||||||
t_user.passwd as user_passwd,
|
t_user.passwd as user_passwd,
|
||||||
t_user.department_id as user_department_id,
|
t_user.department_id as user_department_id,
|
||||||
t_user.enable as user_enable,
|
t_user.enable as user_enable,
|
||||||
t_user.deleted as user_deleted,
|
t_user.deleted as user_deleted,
|
||||||
t_user.version as user_version,
|
t_user.version as user_version,
|
||||||
ts.id as staff_id,
|
ts.id as staff_id,
|
||||||
ts.first_name as staff_first_name,
|
ts.first_name as staff_first_name,
|
||||||
ts.last_name as staff_last_name,
|
ts.last_name as staff_last_name,
|
||||||
ts.deleted as staff_deleted,
|
ts.deleted as staff_deleted,
|
||||||
ts.version as staff_version,
|
ts.version as staff_version,
|
||||||
tm.id as menu_id,
|
tm.id as menu_id,
|
||||||
tm.name as menu_name,
|
tm.name as menu_name,
|
||||||
tm.url as menu_url,
|
tm.url as menu_url,
|
||||||
tm.power_id as menu_power_id,
|
tm.power_id as menu_power_id,
|
||||||
tm.parent_id as menu_parent_id,
|
tm.parent_id as menu_parent_id,
|
||||||
te.id as element_id,
|
te.id as element_id,
|
||||||
te.name as element_name,
|
te.name as element_name,
|
||||||
te.power_id as element_power_id,
|
te.power_id as element_power_id,
|
||||||
te.menu_id as element_menu_id,
|
te.menu_id as element_menu_id,
|
||||||
t.id as operation_id,
|
t.id as operation_id,
|
||||||
t.name as operation_name,
|
t.name as operation_name,
|
||||||
t.code as operation_code,
|
t.code as operation_code,
|
||||||
t.power_id as operation_power_id,
|
t.power_id as operation_power_id,
|
||||||
t.element_id as operation_element_id,
|
t.element_id as operation_element_id,
|
||||||
t.parent_id as operation_parent_id
|
t.parent_id as operation_parent_id
|
||||||
from t_user
|
from t_user
|
||||||
left join (select * from t_staff where deleted = 0) as ts on ts.user_id = t_user.id
|
left join (select * from t_staff where deleted = 0) as ts on ts.user_id = t_user.id
|
||||||
left join (select * from t_user_group where deleted = 0) as tug on t_user.id = tug.user_id
|
left join (select * from t_user_group where deleted = 0) as tug on t_user.id = tug.user_id
|
||||||
left join (select * from t_group where deleted = 0 and enable = 1) as tg on tg.id = tug.group_id
|
left join (select * from t_group where deleted = 0 and enable = 1) as tg on tg.id = tug.group_id
|
||||||
left join (select * from t_role_group where deleted = 0) as trg on tg.id = trg.group_id
|
left join (select * from t_role_group where deleted = 0) as trg on tg.id = trg.group_id
|
||||||
left join (select * from t_user_role where deleted = 0) as tur on t_user.id = tur.user_id
|
left join (select * from t_user_role where deleted = 0) as tur on t_user.id = tur.user_id
|
||||||
left join (select * from t_role where deleted = 0 and enable = 1) as tr on tr.id = trg.role_id or tr.id = tur.role_id
|
left join (select * from t_role where deleted = 0 and enable = 1) as tr
|
||||||
|
on tr.id = trg.role_id or tr.id = tur.role_id
|
||||||
left join (select * from t_power_role where deleted = 0) as tpr on tpr.role_id = tr.id
|
left join (select * from t_power_role where deleted = 0) as tpr on tpr.role_id = tr.id
|
||||||
left join t_power as tp on tp.id = tpr.power_id
|
left join t_power as tp on tp.id = tpr.power_id
|
||||||
left join t_menu tm on tp.id = tm.power_id
|
left join t_menu tm on tp.id = tm.power_id
|
||||||
@@ -110,26 +128,26 @@
|
|||||||
|
|
||||||
<select id="getAllAffairUser" resultMap="userMap">
|
<select id="getAllAffairUser" resultMap="userMap">
|
||||||
select distinct t_user.id as user_id,
|
select distinct t_user.id as user_id,
|
||||||
t_user.username as user_username,
|
t_user.username as user_username,
|
||||||
t_user.department_id as user_department_id,
|
t_user.department_id as user_department_id,
|
||||||
t_user.enable as user_enable,
|
t_user.enable as user_enable,
|
||||||
t_user.deleted as user_deleted,
|
t_user.deleted as user_deleted,
|
||||||
t_user.version as user_version,
|
t_user.version as user_version,
|
||||||
ts.id as staff_id,
|
ts.id as staff_id,
|
||||||
ts.first_name as staff_first_name,
|
ts.first_name as staff_first_name,
|
||||||
ts.last_name as staff_last_name,
|
ts.last_name as staff_last_name,
|
||||||
ts.deleted as staff_deleted,
|
ts.deleted as staff_deleted,
|
||||||
ts.version as staff_version,
|
ts.version as staff_version,
|
||||||
tr.id as role_id,
|
tr.id as role_id,
|
||||||
tr.enable as role_enable,
|
tr.enable as role_enable,
|
||||||
tr.name as role_name,
|
tr.name as role_name,
|
||||||
tr.deleted as role_deleted,
|
tr.deleted as role_deleted,
|
||||||
tr.version as role_version,
|
tr.version as role_version,
|
||||||
tg.id as group_id,
|
tg.id as group_id,
|
||||||
tg.name as group_name,
|
tg.name as group_name,
|
||||||
tg.enable as group_enable,
|
tg.enable as group_enable,
|
||||||
tg.deleted as group_deleted,
|
tg.deleted as group_deleted,
|
||||||
tg.version as group_version
|
tg.version as group_version
|
||||||
from t_user
|
from t_user
|
||||||
left join (select * from t_staff where deleted = 0) as ts on ts.user_id = t_user.id
|
left join (select * from t_staff where deleted = 0) as ts on ts.user_id = t_user.id
|
||||||
left join (select * from t_user_role where deleted = 0) as tur on t_user.id = tur.user_id
|
left join (select * from t_user_role where deleted = 0) as tur on t_user.id = tur.user_id
|
||||||
@@ -180,13 +198,16 @@
|
|||||||
and t_user.department_id = #{departmentId}
|
and t_user.department_id = #{departmentId}
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<resultMap id="userMap" type="user">
|
<resultMap id="userBase" type="user">
|
||||||
<id property="id" column="user_id"/>
|
<id property="id" column="user_id"/>
|
||||||
<result property="username" column="user_username"/>
|
<result property="username" column="user_username"/>
|
||||||
<result property="departmentId" column="user_department_id"/>
|
<result property="departmentId" column="user_department_id"/>
|
||||||
<result property="enable" column="user_enable"/>
|
<result property="enable" column="user_enable"/>
|
||||||
<result property="deleted" column="user_deleted"/>
|
<result property="deleted" column="user_deleted"/>
|
||||||
<result property="version" column="user_version"/>
|
<result property="version" column="user_version"/>
|
||||||
|
</resultMap>
|
||||||
|
|
||||||
|
<resultMap id="userMap" type="user" extends="userBase">
|
||||||
<association property="staff" javaType="staff">
|
<association property="staff" javaType="staff">
|
||||||
<id property="id" column="staff_id"/>
|
<id property="id" column="staff_id"/>
|
||||||
<result property="firstName" column="staff_first_name"/>
|
<result property="firstName" column="staff_first_name"/>
|
||||||
@@ -210,14 +231,8 @@
|
|||||||
</collection>
|
</collection>
|
||||||
</resultMap>
|
</resultMap>
|
||||||
|
|
||||||
<resultMap id="userWithPowerMap" type="user">
|
<resultMap id="userWithPowerMap" type="user" extends="userBase">
|
||||||
<id property="id" column="user_id"/>
|
|
||||||
<result property="username" column="user_username"/>
|
|
||||||
<result property="passwd" column="user_passwd"/>
|
<result property="passwd" column="user_passwd"/>
|
||||||
<result property="departmentId" column="user_department_id"/>
|
|
||||||
<result property="enable" column="user_enable"/>
|
|
||||||
<result property="deleted" column="user_deleted"/>
|
|
||||||
<result property="version" column="user_version"/>
|
|
||||||
<association property="staff" javaType="staff">
|
<association property="staff" javaType="staff">
|
||||||
<id property="id" column="staff_id"/>
|
<id property="id" column="staff_id"/>
|
||||||
<result property="firstName" column="staff_first_name"/>
|
<result property="firstName" column="staff_first_name"/>
|
||||||
|
|||||||
Reference in New Issue
Block a user