浏览代码

【修复】排序问题,有排序字段的按字段升序排列(序号越小越靠前),无排序字段的按默认排序,在线用户按登录时间降序(最先登录的在最上面)

就是那个锅 4 年之前
父节点
当前提交
56b4ba2e82

+ 2 - 3
guns-base-support/guns-system/src/main/java/cn/stylefeng/guns/sys/modular/consts/service/impl/SysConfigServiceImpl.java

@ -31,7 +31,6 @@ import cn.stylefeng.guns.core.enums.CommonStatusEnum;
import cn.stylefeng.guns.core.enums.YesOrNotEnum;
import cn.stylefeng.guns.core.exception.ServiceException;
import cn.stylefeng.guns.core.factory.PageFactory;
import cn.stylefeng.guns.core.pojo.base.entity.BaseEntity;
import cn.stylefeng.guns.core.pojo.page.PageResult;
import cn.stylefeng.guns.sys.modular.consts.entity.SysConfig;
import cn.stylefeng.guns.sys.modular.consts.enums.SysConfigExceptionEnum;
@ -78,8 +77,8 @@ public class SysConfigServiceImpl extends ServiceImpl<SysConfigMapper, SysConfig
        //查询未删除的
        queryWrapper.ne(SysConfig::getStatus, CommonStatusEnum.DELETED.getCode());
        //按时间倒序排列
        queryWrapper.orderByDesc(BaseEntity::getCreateTime);
        //按类型升序排列,同类型的排在一起
        queryWrapper.orderByDesc(SysConfig::getGroupCode);
        //查询分页结果
        return new PageResult<>(this.page(PageFactory.defaultPage(), queryWrapper));

+ 8 - 5
guns-base-support/guns-system/src/main/java/cn/stylefeng/guns/sys/modular/dict/service/impl/SysDictDataServiceImpl.java

@ -76,7 +76,8 @@ public class SysDictDataServiceImpl extends ServiceImpl<SysDictDataMapper, SysDi
        }
        //查询未删除的
        queryWrapper.ne(SysDictData::getStatus, CommonStatusEnum.DELETED.getCode());
        //根据排序升序排列,序号越小越在前
        queryWrapper.orderByAsc(SysDictData::getSort);
        //返回分页查询结果
        return new PageResult<>(this.page(PageFactory.defaultPage(), queryWrapper));
    }
@ -92,7 +93,8 @@ public class SysDictDataServiceImpl extends ServiceImpl<SysDictDataMapper, SysDi
        }
        //查询未删除的
        queryWrapper.ne(SysDictData::getStatus, CommonStatusEnum.DELETED.getCode());
        //根据排序升序排列,序号越小越在前
        queryWrapper.orderByAsc(SysDictData::getSort);
        return this.list(queryWrapper);
    }
@ -152,9 +154,10 @@ public class SysDictDataServiceImpl extends ServiceImpl<SysDictDataMapper, SysDi
    public List<Dict> getDictDataListByDictTypeId(Long dictTypeId) {
        //构造查询条件
        LambdaQueryWrapper<SysDictData> queryWrapper = new LambdaQueryWrapper<SysDictData>()
                .eq(SysDictData::getTypeId, dictTypeId);
        LambdaQueryWrapper<SysDictData> queryWrapper = new LambdaQueryWrapper<SysDictData>();
        queryWrapper.eq(SysDictData::getTypeId, dictTypeId);
        //根据排序升序排列,序号越小越在前
        queryWrapper.orderByAsc(SysDictData::getSort);
        //查询dictTypeId下所有的字典项
        List<SysDictData> results = this.list(queryWrapper);

+ 2 - 1
guns-base-support/guns-system/src/main/java/cn/stylefeng/guns/sys/modular/dict/service/impl/SysDictTypeServiceImpl.java

@ -79,7 +79,8 @@ public class SysDictTypeServiceImpl extends ServiceImpl<SysDictTypeMapper, SysDi
        //查询未删除的
        queryWrapper.ne(SysDictType::getStatus, CommonStatusEnum.DELETED.getCode());
        //根据排序升序排列,序号越小越在前
        queryWrapper.orderByAsc(SysDictType::getSort);
        //查询分页结果
        return new PageResult<>(this.page(PageFactory.defaultPage(), queryWrapper));
    }

+ 6 - 1
guns-base-support/guns-system/src/main/java/cn/stylefeng/guns/sys/modular/menu/service/impl/SysMenuServiceImpl.java

@ -214,6 +214,8 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
            }
        }
        queryWrapper.eq(SysMenu::getStatus, CommonStatusEnum.ENABLE.getCode());
        //根据排序升序排列,序号越小越在前
        queryWrapper.orderByAsc(SysMenu::getSort);
        List<SysMenu> sysMenuList = this.list(queryWrapper);
        //将结果集处理成树
        return new TreeBuildFactory<SysMenu>().doTreeBuild(sysMenuList);
@ -347,7 +349,8 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
        }
        queryWrapper.eq(SysMenu::getStatus, CommonStatusEnum.ENABLE.getCode())
                .in(SysMenu::getType, CollectionUtil.newArrayList(MenuTypeEnum.DIR.getCode(), MenuTypeEnum.MENU.getCode()));
        //根据排序升序排列,序号越小越在前
        queryWrapper.orderByAsc(SysMenu::getSort);
        this.list(queryWrapper).forEach(sysMenu -> {
            MenuBaseTreeNode menuTreeNode = new MenuBaseTreeNode();
            menuTreeNode.setId(sysMenu.getId());
@ -392,6 +395,8 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
                return CollectionUtil.newArrayList();
            }
        }
        //根据排序升序排列,序号越小越在前
        queryWrapper.orderByAsc(SysMenu::getSort);
        this.list(queryWrapper).forEach(sysMenu -> {
            MenuBaseTreeNode menuTreeNode = new MenuBaseTreeNode();
            menuTreeNode.setId(sysMenu.getId());

+ 16 - 2
guns-base-support/guns-system/src/main/java/cn/stylefeng/guns/sys/modular/monitor/service/impl/SysOnlineUserServiceImpl.java

@ -26,6 +26,8 @@ package cn.stylefeng.guns.sys.modular.monitor.service.impl;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.date.DateTime;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.stylefeng.guns.core.context.constant.ConstantContextHolder;
import cn.stylefeng.guns.core.context.login.LoginContextHolder;
@ -57,14 +59,26 @@ public class SysOnlineUserServiceImpl implements SysOnlineUserService {
    @Override
    public List<SysOnlineUserResult> list(SysOnlineUserParam sysOnlineUserParam) {
        List<SysOnlineUserResult> resultList = CollectionUtil.newArrayList();
        //定义现在时间
        DateTime now = DateTime.now();
        // 获取缓存中的所有用户
        Map<String, SysLoginUser> allKeyValues = userCache.getAllKeyValues();
        for (Map.Entry<String, SysLoginUser> sysLoginUserEntry : allKeyValues.entrySet()) {
            SysOnlineUserResult sysOnlineUserResult = new SysOnlineUserResult();
            sysOnlineUserResult.setSessionId(sysLoginUserEntry.getKey());
            BeanUtil.copyProperties(sysLoginUserEntry.getValue(), sysOnlineUserResult);
            resultList.add(sysOnlineUserResult);
            //获取登录日期
            String lastLoginTime = sysOnlineUserResult.getLastLoginTime();
            DateTime dateTime = DateUtil.parseDateTime(lastLoginTime);
            //获取两个比较结果
            int compare = DateUtil.compare(dateTime, now);
            //如果时间小于等于当前时间
            if(compare <= 0) {
                //则将其设为当前时间
                now = dateTime;
                //将其放入
                resultList.add(sysOnlineUserResult);
            }
        }
        return resultList;
    }

+ 6 - 2
guns-base-support/guns-system/src/main/java/cn/stylefeng/guns/sys/modular/org/service/impl/SysOrgServiceImpl.java

@ -125,7 +125,8 @@ public class SysOrgServiceImpl extends ServiceImpl<SysOrgMapper, SysOrg> impleme
        // 查询启用状态的
        queryWrapper.eq(SysOrg::getStatus, CommonStatusEnum.ENABLE.getCode());
        //根据排序升序排列,序号越小越在前
        queryWrapper.orderByAsc(SysOrg::getSort);
        return new PageResult<>(this.page(PageFactory.defaultPage(), queryWrapper));
    }
@ -155,6 +156,8 @@ public class SysOrgServiceImpl extends ServiceImpl<SysOrgMapper, SysOrg> impleme
            }
        }
        queryWrapper.eq(SysOrg::getStatus, CommonStatusEnum.ENABLE.getCode());
        //根据排序升序排列,序号越小越在前
        queryWrapper.orderByAsc(SysOrg::getSort);
        return this.list(queryWrapper);
    }
@ -300,7 +303,8 @@ public class SysOrgServiceImpl extends ServiceImpl<SysOrgMapper, SysOrg> impleme
        // 只查询未删除的
        queryWrapper.eq(SysOrg::getStatus, CommonStatusEnum.ENABLE.getCode());
        //根据排序升序排列,序号越小越在前
        queryWrapper.orderByAsc(SysOrg::getSort);
        this.list(queryWrapper).forEach(sysOrg -> {
            AntdBaseTreeNode orgTreeNode = new AntdBaseTreeNode();
            orgTreeNode.setId(sysOrg.getId());

+ 4 - 0
guns-base-support/guns-system/src/main/java/cn/stylefeng/guns/sys/modular/pos/service/impl/SysPosServiceImpl.java

@ -74,6 +74,8 @@ public class SysPosServiceImpl extends ServiceImpl<SysPosMapper, SysPos> impleme
            }
        }
        queryWrapper.eq(SysPos::getStatus, CommonStatusEnum.ENABLE.getCode());
        //根据排序升序排列,序号越小越在前
        queryWrapper.orderByAsc(SysPos::getSort);
        return new PageResult<>(this.page(PageFactory.defaultPage(), queryWrapper));
    }
@ -87,6 +89,8 @@ public class SysPosServiceImpl extends ServiceImpl<SysPosMapper, SysPos> impleme
            }
        }
        queryWrapper.eq(SysPos::getStatus, CommonStatusEnum.ENABLE.getCode());
        //根据排序升序排列,序号越小越在前
        queryWrapper.orderByAsc(SysPos::getSort);
        return this.list(queryWrapper);
    }

+ 6 - 2
guns-base-support/guns-system/src/main/java/cn/stylefeng/guns/sys/modular/role/service/impl/SysRoleServiceImpl.java

@ -33,11 +33,11 @@ import cn.stylefeng.guns.core.consts.SymbolConstant;
import cn.stylefeng.guns.core.context.login.LoginContextHolder;
import cn.stylefeng.guns.core.enums.CommonStatusEnum;
import cn.stylefeng.guns.core.exception.PermissionException;
import cn.stylefeng.guns.core.exception.enums.PermissionExceptionEnum;
import cn.stylefeng.guns.sys.core.enums.DataScopeTypeEnum;
import cn.stylefeng.guns.core.exception.ServiceException;
import cn.stylefeng.guns.core.exception.enums.PermissionExceptionEnum;
import cn.stylefeng.guns.core.factory.PageFactory;
import cn.stylefeng.guns.core.pojo.page.PageResult;
import cn.stylefeng.guns.sys.core.enums.DataScopeTypeEnum;
import cn.stylefeng.guns.sys.modular.org.service.SysOrgService;
import cn.stylefeng.guns.sys.modular.role.entity.SysRole;
import cn.stylefeng.guns.sys.modular.role.enums.SysRoleExceptionEnum;
@ -122,6 +122,8 @@ public class SysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> impl
        }
        queryWrapper.eq(SysRole::getStatus, CommonStatusEnum.ENABLE.getCode());
        //根据排序升序排列,序号越小越在前
        queryWrapper.orderByAsc(SysRole::getSort);
        return new PageResult<>(this.page(PageFactory.defaultPage(), queryWrapper));
    }
@ -138,6 +140,8 @@ public class SysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> impl
        }
        //只查询正常状态
        queryWrapper.eq(SysRole::getStatus, CommonStatusEnum.ENABLE.getCode());
        //根据排序升序排列,序号越小越在前
        queryWrapper.orderByAsc(SysRole::getSort);
        this.list(queryWrapper).forEach(sysRole -> {
            Dict dict = Dict.create();
            dict.put(CommonConstant.ID, sysRole.getId());