diff --git a/pom.xml b/pom.xml index 157931c6..d2b75f0d 100644 --- a/pom.xml +++ b/pom.xml @@ -47,6 +47,9 @@ 3.5.6 2.3 + + + 2.7.0 @@ -197,6 +200,12 @@ velocity-engine-core ${velocity.version} + + + org.lionsoul + ip2region + ${ip2region.version} + diff --git a/src/main/java/com/youlai/system/common/result/IResultCode.java b/src/main/java/com/youlai/system/common/result/IResultCode.java index 7aa17e56..fa7aef64 100644 --- a/src/main/java/com/youlai/system/common/result/IResultCode.java +++ b/src/main/java/com/youlai/system/common/result/IResultCode.java @@ -1,7 +1,10 @@ package com.youlai.system.common.result; /** - * @author haoxr + * 响应码接口 + * + * @author Ray + * @since 2022/2/18 **/ public interface IResultCode { diff --git a/src/main/java/com/youlai/system/common/result/PageResult.java b/src/main/java/com/youlai/system/common/result/PageResult.java index 86c99a33..68860831 100644 --- a/src/main/java/com/youlai/system/common/result/PageResult.java +++ b/src/main/java/com/youlai/system/common/result/PageResult.java @@ -9,8 +9,8 @@ import java.util.List; /** * 分页响应结构体 * - * @author haoxr - * @since 2022/2/18 23:29 + * @author Ray + * @since 2022/2/18 */ @Data public class PageResult implements Serializable { diff --git a/src/main/java/com/youlai/system/common/result/Result.java b/src/main/java/com/youlai/system/common/result/Result.java index 1be4e529..be1ea1ce 100644 --- a/src/main/java/com/youlai/system/common/result/Result.java +++ b/src/main/java/com/youlai/system/common/result/Result.java @@ -7,7 +7,7 @@ import java.io.Serializable; /** * 统一响应结构体 * - * @author haoxr + * @author Ray * @since 2022/1/30 **/ @Data diff --git a/src/main/java/com/youlai/system/common/result/ResultCode.java b/src/main/java/com/youlai/system/common/result/ResultCode.java index 772fc8df..4e6a64ea 100644 --- a/src/main/java/com/youlai/system/common/result/ResultCode.java +++ b/src/main/java/com/youlai/system/common/result/ResultCode.java @@ -7,9 +7,11 @@ import java.io.Serializable; /** * 响应码枚举 + *

+ * 参考阿里巴巴开发手册响应码规范 * - * @author haoxr - * @since 2020-06-23 + * @author Ray + * @since 2020/6/23 **/ @AllArgsConstructor @NoArgsConstructor @@ -103,7 +105,7 @@ public enum ResultCode implements IResultCode, Serializable { } - public static ResultCode getValue(String code){ + public static ResultCode getValue(String code) { for (ResultCode value : values()) { if (value.getCode().equals(code)) { return value; diff --git a/src/main/java/com/youlai/system/common/util/IPUtils.java b/src/main/java/com/youlai/system/common/util/IPUtils.java index ab65d7f9..900cb75b 100644 --- a/src/main/java/com/youlai/system/common/util/IPUtils.java +++ b/src/main/java/com/youlai/system/common/util/IPUtils.java @@ -3,12 +3,20 @@ package com.youlai.system.common.util; import cn.hutool.core.util.StrUtil; import jakarta.servlet.http.HttpServletRequest; import lombok.extern.slf4j.Slf4j; +import org.lionsoul.ip2region.xdb.Searcher; +import java.io.IOException; import java.net.InetAddress; import java.net.UnknownHostException; /** - * IP工具类 + * IP工具类 + *

+ * 获取客户端IP地址和IP地址对应的地理位置信息 + *

+ * 使用Nginx等反向代理软件, 则不能通过request.getRemoteAddr()获取IP地址 + * 如果使用了多级反向代理的话,X-Forwarded-For的值并不止一个,而是一串IP地址,X-Forwarded-For中第一个非unknown的有效IP字符串,则为真实IP地址 + *

* * @author Ray * @since 2.10.0 @@ -16,10 +24,13 @@ import java.net.UnknownHostException; @Slf4j public class IPUtils { + private static final String DB_PATH = "src/main/resources/data/ip2region.xdb"; + /** * 获取IP地址 - * 使用Nginx等反向代理软件, 则不能通过request.getRemoteAddr()获取IP地址 - * 如果使用了多级反向代理的话,X-Forwarded-For的值并不止一个,而是一串IP地址,X-Forwarded-For中第一个非unknown的有效IP字符串,则为真实IP地址 + * + * @param request HttpServletRequest对象 + * @return 客户端IP地址 */ public static String getIpAddr(HttpServletRequest request) { String ip = null; @@ -51,7 +62,7 @@ public class IPUtils { log.error("IPUtils ERROR, {}", e.getMessage()); } - //使用代理,则获取第一个IP地址 + // 使用代理,则获取第一个IP地址 if (StrUtil.isNotBlank(ip) && ip.indexOf(",") > 0) { ip = ip.substring(0, ip.indexOf(",")); } @@ -59,14 +70,15 @@ public class IPUtils { return ip; } - private static boolean checkIp(String ip) { String unknown = "unknown"; - return StrUtil.isEmpty(ip) || ip.isEmpty() || unknown.equalsIgnoreCase(ip); + return StrUtil.isEmpty(ip) || unknown.equalsIgnoreCase(ip); } /** * 获取本机的IP地址 + * + * @return 本机IP地址 */ private static String getLocalAddr() { try { @@ -77,5 +89,28 @@ public class IPUtils { return null; } - + /** + * 根据IP地址获取地理位置信息 + * + * @param ip IP地址 + * @return 地理位置信息 + */ + public static String getRegion(String ip) { + Searcher searcher = null; + try { + searcher = Searcher.newWithFileOnly(DB_PATH); + return searcher.search(ip); + } catch (Exception e) { + log.error("IpRegionUtil ERROR, {}", e.getMessage()); + return null; + } finally { + if (searcher != null) { + try { + searcher.close(); + } catch (IOException e) { + log.error("IpRegionUtil close ERROR, {}", e.getMessage()); + } + } + } + } } diff --git a/src/main/java/com/youlai/system/controller/AuthController.java b/src/main/java/com/youlai/system/controller/AuthController.java index e11cd86d..2d276b50 100644 --- a/src/main/java/com/youlai/system/controller/AuthController.java +++ b/src/main/java/com/youlai/system/controller/AuthController.java @@ -1,6 +1,6 @@ package com.youlai.system.controller; -import com.youlai.system.common.enums.LogTypeEnum; +import com.youlai.system.enums.LogTypeEnum; import com.youlai.system.common.result.Result; import com.youlai.system.model.dto.CaptchaResult; import com.youlai.system.model.dto.LoginResult; diff --git a/src/main/java/com/youlai/system/converter/UserConverter.java b/src/main/java/com/youlai/system/converter/UserConverter.java index 3d54415b..fed932f1 100644 --- a/src/main/java/com/youlai/system/converter/UserConverter.java +++ b/src/main/java/com/youlai/system/converter/UserConverter.java @@ -22,7 +22,7 @@ import org.mapstruct.Mappings; public interface UserConverter { @Mappings({ - @Mapping(target = "genderLabel", expression = "java(com.youlai.system.common.base.IBaseEnum.getLabelByValue(bo.getGender(), com.youlai.system.common.enums.GenderEnum.class))") + @Mapping(target = "genderLabel", expression = "java(com.youlai.system.common.base.IBaseEnum.getLabelByValue(bo.getGender(), com.youlai.system.enums.GenderEnum.class))") }) UserPageVO bo2PageVo(UserBO bo); diff --git a/src/main/java/com/youlai/system/common/enums/CaptchaTypeEnum.java b/src/main/java/com/youlai/system/enums/CaptchaTypeEnum.java similarity index 89% rename from src/main/java/com/youlai/system/common/enums/CaptchaTypeEnum.java rename to src/main/java/com/youlai/system/enums/CaptchaTypeEnum.java index c2896d9e..b6376b1e 100644 --- a/src/main/java/com/youlai/system/common/enums/CaptchaTypeEnum.java +++ b/src/main/java/com/youlai/system/enums/CaptchaTypeEnum.java @@ -1,4 +1,4 @@ -package com.youlai.system.common.enums; +package com.youlai.system.enums; /** * EasyCaptcha 验证码类型枚举 diff --git a/src/main/java/com/youlai/system/common/enums/DataScopeEnum.java b/src/main/java/com/youlai/system/enums/DataScopeEnum.java similarity index 93% rename from src/main/java/com/youlai/system/common/enums/DataScopeEnum.java rename to src/main/java/com/youlai/system/enums/DataScopeEnum.java index 89ad9e37..97cd86e7 100644 --- a/src/main/java/com/youlai/system/common/enums/DataScopeEnum.java +++ b/src/main/java/com/youlai/system/enums/DataScopeEnum.java @@ -1,4 +1,4 @@ -package com.youlai.system.common.enums; +package com.youlai.system.enums; import com.youlai.system.common.base.IBaseEnum; import lombok.Getter; diff --git a/src/main/java/com/youlai/system/common/enums/GenderEnum.java b/src/main/java/com/youlai/system/enums/GenderEnum.java similarity index 92% rename from src/main/java/com/youlai/system/common/enums/GenderEnum.java rename to src/main/java/com/youlai/system/enums/GenderEnum.java index f239eea1..a8fbb415 100644 --- a/src/main/java/com/youlai/system/common/enums/GenderEnum.java +++ b/src/main/java/com/youlai/system/enums/GenderEnum.java @@ -1,4 +1,4 @@ -package com.youlai.system.common.enums; +package com.youlai.system.enums; import com.youlai.system.common.base.IBaseEnum; import io.swagger.v3.oas.annotations.media.Schema; diff --git a/src/main/java/com/youlai/system/common/enums/LogTypeEnum.java b/src/main/java/com/youlai/system/enums/LogTypeEnum.java similarity index 92% rename from src/main/java/com/youlai/system/common/enums/LogTypeEnum.java rename to src/main/java/com/youlai/system/enums/LogTypeEnum.java index f6731fbe..3bfd2cae 100644 --- a/src/main/java/com/youlai/system/common/enums/LogTypeEnum.java +++ b/src/main/java/com/youlai/system/enums/LogTypeEnum.java @@ -1,4 +1,4 @@ -package com.youlai.system.common.enums; +package com.youlai.system.enums; import com.youlai.system.common.base.IBaseEnum; import io.swagger.v3.oas.annotations.media.Schema; diff --git a/src/main/java/com/youlai/system/common/enums/MenuTypeEnum.java b/src/main/java/com/youlai/system/enums/MenuTypeEnum.java similarity index 94% rename from src/main/java/com/youlai/system/common/enums/MenuTypeEnum.java rename to src/main/java/com/youlai/system/enums/MenuTypeEnum.java index 91b6c891..788bb6ac 100644 --- a/src/main/java/com/youlai/system/common/enums/MenuTypeEnum.java +++ b/src/main/java/com/youlai/system/enums/MenuTypeEnum.java @@ -1,4 +1,4 @@ -package com.youlai.system.common.enums; +package com.youlai.system.enums; import com.baomidou.mybatisplus.annotation.EnumValue; import com.youlai.system.common.base.IBaseEnum; diff --git a/src/main/java/com/youlai/system/common/enums/StatusEnum.java b/src/main/java/com/youlai/system/enums/StatusEnum.java similarity index 91% rename from src/main/java/com/youlai/system/common/enums/StatusEnum.java rename to src/main/java/com/youlai/system/enums/StatusEnum.java index ba6bf0bf..678afe16 100644 --- a/src/main/java/com/youlai/system/common/enums/StatusEnum.java +++ b/src/main/java/com/youlai/system/enums/StatusEnum.java @@ -1,4 +1,4 @@ -package com.youlai.system.common.enums; +package com.youlai.system.enums; import com.youlai.system.common.base.IBaseEnum; import lombok.Getter; diff --git a/src/main/java/com/youlai/system/common/exception/BusinessException.java b/src/main/java/com/youlai/system/exception/BusinessException.java similarity index 95% rename from src/main/java/com/youlai/system/common/exception/BusinessException.java rename to src/main/java/com/youlai/system/exception/BusinessException.java index 0c7ddfe3..62f483ac 100644 --- a/src/main/java/com/youlai/system/common/exception/BusinessException.java +++ b/src/main/java/com/youlai/system/exception/BusinessException.java @@ -1,4 +1,4 @@ -package com.youlai.system.common.exception; +package com.youlai.system.exception; import com.youlai.system.common.result.IResultCode; import lombok.Getter; diff --git a/src/main/java/com/youlai/system/common/exception/GlobalExceptionHandler.java b/src/main/java/com/youlai/system/exception/GlobalExceptionHandler.java similarity index 99% rename from src/main/java/com/youlai/system/common/exception/GlobalExceptionHandler.java rename to src/main/java/com/youlai/system/exception/GlobalExceptionHandler.java index 9b83b29c..6cdfae7d 100644 --- a/src/main/java/com/youlai/system/common/exception/GlobalExceptionHandler.java +++ b/src/main/java/com/youlai/system/exception/GlobalExceptionHandler.java @@ -1,4 +1,4 @@ -package com.youlai.system.common.exception; +package com.youlai.system.exception; import cn.hutool.core.util.StrUtil; import com.fasterxml.jackson.core.JsonProcessingException; diff --git a/src/main/java/com/youlai/system/model/bo/RouteBO.java b/src/main/java/com/youlai/system/model/bo/RouteBO.java index ed46ed7e..49ae0ae0 100644 --- a/src/main/java/com/youlai/system/model/bo/RouteBO.java +++ b/src/main/java/com/youlai/system/model/bo/RouteBO.java @@ -1,6 +1,6 @@ package com.youlai.system.model.bo; -import com.youlai.system.common.enums.MenuTypeEnum; +import com.youlai.system.enums.MenuTypeEnum; import lombok.Data; import java.util.List; diff --git a/src/main/java/com/youlai/system/model/entity/SysLog.java b/src/main/java/com/youlai/system/model/entity/SysLog.java index a79095e3..30c686b9 100644 --- a/src/main/java/com/youlai/system/model/entity/SysLog.java +++ b/src/main/java/com/youlai/system/model/entity/SysLog.java @@ -26,7 +26,7 @@ public class SysLog implements Serializable { /** * 日志类型 * - * @see com.youlai.system.common.enums.LogTypeEnum + * @see com.youlai.system.enums.LogTypeEnum */ private Integer type; diff --git a/src/main/java/com/youlai/system/model/entity/SysMenu.java b/src/main/java/com/youlai/system/model/entity/SysMenu.java index 63e51426..26a77ccc 100644 --- a/src/main/java/com/youlai/system/model/entity/SysMenu.java +++ b/src/main/java/com/youlai/system/model/entity/SysMenu.java @@ -2,7 +2,7 @@ package com.youlai.system.model.entity; import com.baomidou.mybatisplus.annotation.*; -import com.youlai.system.common.enums.MenuTypeEnum; +import com.youlai.system.enums.MenuTypeEnum; import lombok.Getter; import lombok.Setter; diff --git a/src/main/java/com/youlai/system/model/form/MenuForm.java b/src/main/java/com/youlai/system/model/form/MenuForm.java index ae70a269..cf843a3d 100644 --- a/src/main/java/com/youlai/system/model/form/MenuForm.java +++ b/src/main/java/com/youlai/system/model/form/MenuForm.java @@ -1,6 +1,6 @@ package com.youlai.system.model.form; -import com.youlai.system.common.enums.MenuTypeEnum; +import com.youlai.system.enums.MenuTypeEnum; import com.youlai.system.common.model.KeyValue; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; diff --git a/src/main/java/com/youlai/system/model/vo/MenuVO.java b/src/main/java/com/youlai/system/model/vo/MenuVO.java index ecbf3ce9..6ca1545a 100644 --- a/src/main/java/com/youlai/system/model/vo/MenuVO.java +++ b/src/main/java/com/youlai/system/model/vo/MenuVO.java @@ -1,7 +1,7 @@ package com.youlai.system.model.vo; import com.fasterxml.jackson.annotation.JsonInclude; -import com.youlai.system.common.enums.MenuTypeEnum; +import com.youlai.system.enums.MenuTypeEnum; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; diff --git a/src/main/java/com/youlai/system/plugin/easyexcel/UserImportListener.java b/src/main/java/com/youlai/system/plugin/easyexcel/UserImportListener.java index 8faac6ac..9fb82f52 100644 --- a/src/main/java/com/youlai/system/plugin/easyexcel/UserImportListener.java +++ b/src/main/java/com/youlai/system/plugin/easyexcel/UserImportListener.java @@ -9,8 +9,8 @@ import com.alibaba.excel.context.AnalysisContext; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.youlai.system.common.base.IBaseEnum; import com.youlai.system.common.constant.SystemConstants; -import com.youlai.system.common.enums.GenderEnum; -import com.youlai.system.common.enums.StatusEnum; +import com.youlai.system.enums.GenderEnum; +import com.youlai.system.enums.StatusEnum; import com.youlai.system.converter.UserConverter; import com.youlai.system.model.dto.UserImportDTO; import com.youlai.system.model.entity.SysDept; diff --git a/src/main/java/com/youlai/system/plugin/mybatis/handler/MyDataPermissionHandler.java b/src/main/java/com/youlai/system/plugin/mybatis/handler/MyDataPermissionHandler.java index 6df5fca3..28200d8b 100644 --- a/src/main/java/com/youlai/system/plugin/mybatis/handler/MyDataPermissionHandler.java +++ b/src/main/java/com/youlai/system/plugin/mybatis/handler/MyDataPermissionHandler.java @@ -5,7 +5,7 @@ import com.baomidou.mybatisplus.core.toolkit.StringPool; import com.baomidou.mybatisplus.extension.plugins.handler.DataPermissionHandler; import com.youlai.system.plugin.mybatis.annotation.DataPermission; import com.youlai.system.common.base.IBaseEnum; -import com.youlai.system.common.enums.DataScopeEnum; +import com.youlai.system.enums.DataScopeEnum; import com.youlai.system.security.util.SecurityUtils; import lombok.SneakyThrows; import lombok.extern.slf4j.Slf4j; diff --git a/src/main/java/com/youlai/system/plugin/norepeat/aspect/DuplicateSubmitAspect.java b/src/main/java/com/youlai/system/plugin/norepeat/aspect/DuplicateSubmitAspect.java index 8405bb7a..50ef84ac 100644 --- a/src/main/java/com/youlai/system/plugin/norepeat/aspect/DuplicateSubmitAspect.java +++ b/src/main/java/com/youlai/system/plugin/norepeat/aspect/DuplicateSubmitAspect.java @@ -4,7 +4,7 @@ import cn.hutool.core.util.StrUtil; import cn.hutool.jwt.JWTUtil; import cn.hutool.jwt.RegisteredPayload; import com.youlai.system.common.constant.SecurityConstants; -import com.youlai.system.common.exception.BusinessException; +import com.youlai.system.exception.BusinessException; import com.youlai.system.common.result.ResultCode; import com.youlai.system.plugin.norepeat.annotation.PreventRepeatSubmit; import jakarta.servlet.http.HttpServletRequest; diff --git a/src/main/java/com/youlai/system/plugin/syslog/annotation/LogAnnotation.java b/src/main/java/com/youlai/system/plugin/syslog/annotation/LogAnnotation.java index f7004724..d05164ba 100644 --- a/src/main/java/com/youlai/system/plugin/syslog/annotation/LogAnnotation.java +++ b/src/main/java/com/youlai/system/plugin/syslog/annotation/LogAnnotation.java @@ -1,6 +1,6 @@ package com.youlai.system.plugin.syslog.annotation; -import com.youlai.system.common.enums.LogTypeEnum; +import com.youlai.system.enums.LogTypeEnum; import java.lang.annotation.*; diff --git a/src/main/java/com/youlai/system/plugin/syslog/aspect/LogAspect.java b/src/main/java/com/youlai/system/plugin/syslog/aspect/LogAspect.java index 7b17289e..da535371 100644 --- a/src/main/java/com/youlai/system/plugin/syslog/aspect/LogAspect.java +++ b/src/main/java/com/youlai/system/plugin/syslog/aspect/LogAspect.java @@ -2,7 +2,6 @@ package com.youlai.system.plugin.syslog.aspect; import cn.hutool.core.date.DateUtil; import cn.hutool.core.date.TimeInterval; -import cn.hutool.extra.servlet.ServletUtil; import com.youlai.system.common.util.IPUtils; import com.youlai.system.model.entity.SysLog; import com.youlai.system.plugin.syslog.annotation.LogAnnotation; diff --git a/src/main/java/com/youlai/system/service/impl/AuthServiceImpl.java b/src/main/java/com/youlai/system/service/impl/AuthServiceImpl.java index 9c3bd48f..9461bebb 100644 --- a/src/main/java/com/youlai/system/service/impl/AuthServiceImpl.java +++ b/src/main/java/com/youlai/system/service/impl/AuthServiceImpl.java @@ -9,7 +9,7 @@ import cn.hutool.json.JSONObject; import cn.hutool.jwt.JWTPayload; import cn.hutool.jwt.JWTUtil; import com.youlai.system.common.constant.SecurityConstants; -import com.youlai.system.common.enums.CaptchaTypeEnum; +import com.youlai.system.enums.CaptchaTypeEnum; import com.youlai.system.model.dto.CaptchaResult; import com.youlai.system.model.dto.LoginResult; import com.youlai.system.config.property.CaptchaProperties; diff --git a/src/main/java/com/youlai/system/service/impl/SysDeptServiceImpl.java b/src/main/java/com/youlai/system/service/impl/SysDeptServiceImpl.java index fd41766a..3c648dd2 100644 --- a/src/main/java/com/youlai/system/service/impl/SysDeptServiceImpl.java +++ b/src/main/java/com/youlai/system/service/impl/SysDeptServiceImpl.java @@ -6,7 +6,7 @@ import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.youlai.system.common.constant.SystemConstants; -import com.youlai.system.common.enums.StatusEnum; +import com.youlai.system.enums.StatusEnum; import com.youlai.system.converter.DeptConverter; import com.youlai.system.mapper.SysDeptMapper; import com.youlai.system.model.entity.SysDept; diff --git a/src/main/java/com/youlai/system/service/impl/SysMenuServiceImpl.java b/src/main/java/com/youlai/system/service/impl/SysMenuServiceImpl.java index 43007c77..d277f694 100644 --- a/src/main/java/com/youlai/system/service/impl/SysMenuServiceImpl.java +++ b/src/main/java/com/youlai/system/service/impl/SysMenuServiceImpl.java @@ -11,8 +11,8 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.databind.ObjectMapper; import com.youlai.system.common.constant.SystemConstants; -import com.youlai.system.common.enums.MenuTypeEnum; -import com.youlai.system.common.enums.StatusEnum; +import com.youlai.system.enums.MenuTypeEnum; +import com.youlai.system.enums.StatusEnum; import com.youlai.system.common.model.KeyValue; import com.youlai.system.common.model.Option; import com.youlai.system.converter.MenuConverter; diff --git a/src/main/resources/data/ip2region.xdb b/src/main/resources/data/ip2region.xdb new file mode 100644 index 00000000..7052c057 Binary files /dev/null and b/src/main/resources/data/ip2region.xdb differ diff --git a/src/main/resources/mapper/SysMenuMapper.xml b/src/main/resources/mapper/SysMenuMapper.xml index 1535e5aa..907054aa 100644 --- a/src/main/resources/mapper/SysMenuMapper.xml +++ b/src/main/resources/mapper/SysMenuMapper.xml @@ -48,7 +48,7 @@ LEFT JOIN sys_role_menu t2 ON t1.id = t2.menu_id LEFT JOIN sys_role t3 ON t2.role_id = t3.id WHERE - t1.type != '${@com.youlai.system.common.enums.MenuTypeEnum@BUTTON.getValue()}' + t1.type != '${@com.youlai.system.enums.MenuTypeEnum@BUTTON.getValue()}' ORDER BY t1.sort diff --git a/src/main/resources/mapper/SysRoleMenuMapper.xml b/src/main/resources/mapper/SysRoleMenuMapper.xml index a6c59d5f..b22a1c3c 100644 --- a/src/main/resources/mapper/SysRoleMenuMapper.xml +++ b/src/main/resources/mapper/SysRoleMenuMapper.xml @@ -33,7 +33,7 @@ INNER JOIN sys_role t2 ON t1.role_id = t2.id AND t2.is_deleted = 0 AND t2.`status` = 1 INNER JOIN sys_menu t3 ON t1.menu_id = t3.id WHERE - type = '${@com.youlai.system.common.enums.MenuTypeEnum@BUTTON.getValue()}' + type = '${@com.youlai.system.enums.MenuTypeEnum@BUTTON.getValue()}' AND t2.`code` = #{roleCode} @@ -48,7 +48,7 @@ INNER JOIN sys_menu t2 ON t2.id = t1.menu_id INNER JOIN sys_role t3 ON t3.id = t1.role_id WHERE - t2.type = '${@com.youlai.system.common.enums.MenuTypeEnum@BUTTON.getValue()}' + t2.type = '${@com.youlai.system.enums.MenuTypeEnum@BUTTON.getValue()}' AND t2.perm IS NOT NULL AND t3.CODE IN