From 4770b0d3e33f27f58ad0ccc1cfb70ab223018b25 Mon Sep 17 00:00:00 2001 From: hewenqiang <1527468660@qq.com> Date: 星期三, 16 三月 2022 16:53:17 +0800 Subject: [PATCH] fix 修复根据用户ID查询菜单信息SQL报错。`status`字段为char类型,应该传字符类型,此处存在隐式转换问题。(MySQL能自动转换,PostgreSQL转换报错)。 --- ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysRoleServiceImpl.java | 22 ++++++++++++++++++++-- 1 files changed, 20 insertions(+), 2 deletions(-) diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysRoleServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysRoleServiceImpl.java index 19f3211..e7e5b53 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysRoleServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysRoleServiceImpl.java @@ -2,7 +2,11 @@ import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.ObjectUtil; +import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.StringUtils; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.common.constant.UserConstants; import com.ruoyi.common.core.domain.PageQuery; @@ -40,7 +44,7 @@ @Override public TableDataInfo<SysRole> selectPageRoleList(SysRole role, PageQuery pageQuery) { - Page<SysRole> page = baseMapper.selectPageRoleList(pageQuery.build(), role); + Page<SysRole> page = baseMapper.selectPageRoleList(pageQuery.build(), this.buildQueryWrapper(role)); return TableDataInfo.build(page); } @@ -52,7 +56,21 @@ */ @Override public List<SysRole> selectRoleList(SysRole role) { - return baseMapper.selectRoleList(role); + return baseMapper.selectRoleList(this.buildQueryWrapper(role)); + } + + private Wrapper<SysRole> buildQueryWrapper(SysRole role) { + Map<String, Object> params = role.getParams(); + QueryWrapper<SysRole> wrapper = Wrappers.query(); + wrapper.eq("r.del_flag", UserConstants.ROLE_NORMAL) + .eq(ObjectUtil.isNotNull(role.getRoleId()), "r.role_id", role.getRoleId()) + .like(StringUtils.isNotBlank(role.getRoleName()), "r.role_name", role.getRoleName()) + .eq(StringUtils.isNotBlank(role.getStatus()), "r.status", role.getStatus()) + .like(StringUtils.isNotBlank(role.getRoleKey()), "r.role_key", role.getRoleKey()) + .between(params.get("beginTime") != null && params.get("endTime") != null, + "r.create_time", params.get("beginTime"), params.get("endTime")) + .orderByAsc("r.role_sort"); + return wrapper; } /** -- Gitblit v1.9.3