From 2922e51a7a8e657a8467c818ae16700e41ddac77 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期二, 10 五月 2022 19:45:58 +0800 Subject: [PATCH] bug修复 --- app/src/main/java/com/yeshi/makemoney/app/aop/AdminApiFilter.java | 22 ++++++++++++++++++---- 1 files changed, 18 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/com/yeshi/makemoney/app/aop/AdminApiFilter.java b/app/src/main/java/com/yeshi/makemoney/app/aop/AdminApiFilter.java index d67a597..c7ca201 100644 --- a/app/src/main/java/com/yeshi/makemoney/app/aop/AdminApiFilter.java +++ b/app/src/main/java/com/yeshi/makemoney/app/aop/AdminApiFilter.java @@ -1,5 +1,6 @@ package com.yeshi.makemoney.app.aop; +import com.yeshi.makemoney.app.entity.AdminUser; import com.yeshi.makemoney.app.entity.config.SystemConfigKey; import com.yeshi.makemoney.app.service.inter.config.SystemConfigService; import com.yeshi.makemoney.app.utils.ApiCodeConstant; @@ -10,7 +11,11 @@ import org.aspectj.lang.ProceedingJoinPoint; import org.aspectj.lang.annotation.Around; import org.aspectj.lang.annotation.Aspect; +import org.springframework.boot.web.servlet.server.Session; import org.springframework.core.annotation.Order; +import org.springframework.security.core.Authentication; +import org.springframework.security.core.context.SecurityContext; +import org.springframework.security.core.context.SecurityContextHolder; import org.springframework.stereotype.Component; import org.springframework.web.context.request.RequestContextHolder; import org.springframework.web.context.request.ServletRequestAttributes; @@ -19,6 +24,7 @@ import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpSession; import java.io.IOException; import java.io.PrintWriter; import java.util.*; @@ -47,16 +53,24 @@ } if (acceptAdminData != null) { - acceptAdminData.setSystem(SystemInfoUtil.getAdminSelectedSystem(servletContainer.getRequest().getSession())); - if(acceptAdminData.getSystem()==null){ + HttpSession session = servletContainer.getRequest().getSession(); + + acceptAdminData.setSystem(SystemInfoUtil.getAdminSelectedSystem(session)); + if (acceptAdminData.getSystem() == null) { PrintWriter out = servletContainer.getResponse().getWriter(); out.print(JsonUtil.loadFalseResult(ApiCodeConstant.CODE_ERROR_IN_SERVER, "鏈�夋嫨绯荤粺")); out.close(); return null; } + //濡傛灉鐢ㄦ埛鐧诲綍浜嗗皢鐢ㄦ埛淇℃伅鍔犲叆杩涘幓 + SecurityContext contextSession = (SecurityContext) session.getAttribute("SPRING_SECURITY_CONTEXT"); + if (contextSession != null) { + Authentication authentication = contextSession.getAuthentication(); + AdminUser adminUser = (AdminUser) authentication.getPrincipal(); + acceptAdminData.setAdminUser(adminUser); + } + } - - try { -- Gitblit v1.8.0