| | |
| | | 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; |
| | |
| | | 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; |
| | |
| | | |
| | | 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.*; |
| | |
| | | Object[] args = joinPoint.getArgs(); |
| | | ServletRequestAttributes servletContainer = (ServletRequestAttributes) RequestContextHolder |
| | | .getRequestAttributes(); |
| | | servletContainer.getResponse().setCharacterEncoding("UTF-8"); |
| | | |
| | | AcceptAdminData acceptAdminData = null; |
| | | for (Object obj : args) { |
| | |
| | | } |
| | | |
| | | if (acceptAdminData != null) { |
| | | acceptAdminData.setSystem(SystemInfoUtil.getAdminSelectedSystem(servletContainer.getRequest().getSession())); |
| | | 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 { |
| | | return joinPoint.proceed(args); |
| | | } catch (Throwable e) { |
| | | e.printStackTrace(); |
| | | PrintWriter out = servletContainer.getResponse().getWriter(); |
| | | out.print(JsonUtil.loadFalseResult(ApiCodeConstant.CODE_ERROR_IN_SERVER, "服务器内部错误")); |
| | | out.close(); |