diff --git a/common/src/main/java/ink/wgink/common/service/rbac/impl/RbacServiceImpl.java b/common/src/main/java/ink/wgink/common/service/rbac/impl/RbacServiceImpl.java index 5d4bc7cd..73cf1dba 100644 --- a/common/src/main/java/ink/wgink/common/service/rbac/impl/RbacServiceImpl.java +++ b/common/src/main/java/ink/wgink/common/service/rbac/impl/RbacServiceImpl.java @@ -4,6 +4,7 @@ import ink.wgink.common.service.rbac.IRbacService; import ink.wgink.interfaces.consts.ISystemConstant; import ink.wgink.pojo.bos.LoginUser; import ink.wgink.pojo.bos.RoleGrantedAuthorityBO; +import ink.wgink.pojo.bos.UserInfoBO; import ink.wgink.properties.AccessControlProperties; import ink.wgink.properties.LoggingProperties; import ink.wgink.util.log.LogUtil; @@ -47,7 +48,6 @@ public class RbacServiceImpl implements IRbacService { if (object == null || "anonymousUser".equals(object.toString())) { return false; } - LoginUser loginUser = (LoginUser) object; boolean hasPermission = false; String requestURI = request.getRequestURI(); Collection grantedAuthorities = authentication.getAuthorities(); @@ -109,7 +109,14 @@ public class RbacServiceImpl implements IRbacService { break; } } - log(hasPermission, requestURI, contextPath, request, loginUser); + if (object instanceof UserInfoBO) { + UserInfoBO userInfoBO = (UserInfoBO) object; + log(hasPermission, requestURI, contextPath, request, userInfoBO.getUserId(), userInfoBO.getUserName()); + } + if (object instanceof LoginUser) { + LoginUser loginUser = (LoginUser) object; + log(hasPermission, requestURI, contextPath, request, loginUser.getUserId(), loginUser.getUserName()); + } return hasPermission; } @@ -231,9 +238,10 @@ public class RbacServiceImpl implements IRbacService { * @param requestURI * @param contextPath * @param request - * @param loginUser + * @param userId + * @param userName */ - private void log(boolean hasPermission, String requestURI, String contextPath, HttpServletRequest request, LoginUser loginUser) { + private void log(boolean hasPermission, String requestURI, String contextPath, HttpServletRequest request, String userId, String userName) { if (!hasPermission) { return; } @@ -244,7 +252,7 @@ public class RbacServiceImpl implements IRbacService { if (!uri.startsWith("/route")) { return; } - LogUtil.routeLog(request, uri, loginUser.getUserId(), loginUser.getUserName()); + LogUtil.routeLog(request, uri, userId, userName); } }