处理类型转换问题

This commit is contained in:
wanggeng 2021-11-01 11:21:07 +08:00
parent 19f4649e2d
commit 0974650b91

View File

@ -4,6 +4,7 @@ import ink.wgink.common.service.rbac.IRbacService;
import ink.wgink.interfaces.consts.ISystemConstant; import ink.wgink.interfaces.consts.ISystemConstant;
import ink.wgink.pojo.bos.LoginUser; import ink.wgink.pojo.bos.LoginUser;
import ink.wgink.pojo.bos.RoleGrantedAuthorityBO; import ink.wgink.pojo.bos.RoleGrantedAuthorityBO;
import ink.wgink.pojo.bos.UserInfoBO;
import ink.wgink.properties.AccessControlProperties; import ink.wgink.properties.AccessControlProperties;
import ink.wgink.properties.LoggingProperties; import ink.wgink.properties.LoggingProperties;
import ink.wgink.util.log.LogUtil; import ink.wgink.util.log.LogUtil;
@ -47,7 +48,6 @@ public class RbacServiceImpl implements IRbacService {
if (object == null || "anonymousUser".equals(object.toString())) { if (object == null || "anonymousUser".equals(object.toString())) {
return false; return false;
} }
LoginUser loginUser = (LoginUser) object;
boolean hasPermission = false; boolean hasPermission = false;
String requestURI = request.getRequestURI(); String requestURI = request.getRequestURI();
Collection<? extends GrantedAuthority> grantedAuthorities = authentication.getAuthorities(); Collection<? extends GrantedAuthority> grantedAuthorities = authentication.getAuthorities();
@ -109,7 +109,14 @@ public class RbacServiceImpl implements IRbacService {
break; 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; return hasPermission;
} }
@ -231,9 +238,10 @@ public class RbacServiceImpl implements IRbacService {
* @param requestURI * @param requestURI
* @param contextPath * @param contextPath
* @param request * @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) { if (!hasPermission) {
return; return;
} }
@ -244,7 +252,7 @@ public class RbacServiceImpl implements IRbacService {
if (!uri.startsWith("/route")) { if (!uri.startsWith("/route")) {
return; return;
} }
LogUtil.routeLog(request, uri, loginUser.getUserId(), loginUser.getUserName()); LogUtil.routeLog(request, uri, userId, userName);
} }
} }