admin
2022-05-10 2922e51a7a8e657a8467c818ae16700e41ddac77
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 {