shane
2021-08-20 ab6a423cf604b83f06b5768dbc162ece744a32d9
service-front/src/main/java/com/java110/front/aop/PageProcessAspect.java
old mode 100644 new mode 100755
@@ -1,18 +1,25 @@
package com.java110.front.aop;
import com.alibaba.fastjson.JSONObject;
import com.java110.core.context.IPageData;
import com.java110.core.context.PageData;
import com.java110.utils.constant.CommonConstant;
import com.java110.utils.exception.FilterException;
import com.java110.core.context.IPageData;
import com.java110.utils.util.StringUtil;
import com.java110.core.context.PageData;
import org.aspectj.lang.JoinPoint;
import org.aspectj.lang.ProceedingJoinPoint;
import org.aspectj.lang.annotation.*;
import org.aspectj.lang.annotation.After;
import org.aspectj.lang.annotation.AfterReturning;
import org.aspectj.lang.annotation.AfterThrowing;
import org.aspectj.lang.annotation.Around;
import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.annotation.Before;
import org.aspectj.lang.annotation.Pointcut;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpMethod;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Component;
import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes;
@@ -24,6 +31,8 @@
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.Enumeration;
import java.util.HashMap;
import java.util.Map;
/**
@@ -59,7 +68,7 @@
        String appId = "";
        String sessionId = request.getSession().getId();
        appId = request.getHeader("APP_ID");
        if(StringUtil.isEmpty(appId)){
        if (StringUtil.isEmpty(appId)) {
            appId = request.getHeader("APP-ID");
        }
        logger.debug("请求头信息:" + request.getHeaderNames());
@@ -84,7 +93,7 @@
                    if (params.get(key).length > 0) {
                        String value = "";
                        for (int paramIndex = 0; paramIndex < params.get(key).length; paramIndex++) {
                            value = params.get(key)[paramIndex] + ",";
                            value += (params.get(key)[paramIndex] + ",");
                        }
                        value = value.endsWith(",") ? value.substring(0, value.length() - 1) : value;
                        paramObj.put(key, value);
@@ -124,7 +133,13 @@
                componentCode = urls[4];
            }
        }
        pd = PageData.newInstance().builder(userId, userName, this.getToken(request), reqData, componentCode, componentMethod, url, sessionId, appId);
        Map<String, Object> headers = new HashMap<>();
        Enumeration reqHeaderEnum = request.getHeaderNames();
        while (reqHeaderEnum.hasMoreElements()) {
            String headerName = (String) reqHeaderEnum.nextElement();
            headers.put(headerName.toLowerCase(), request.getHeader(headerName));
        }
        pd = PageData.newInstance().builder(userId, userName, this.getToken(request), reqData, componentCode, componentMethod, url, sessionId, appId, headers);
        pd.setMethod(request.getMethod().equals("GET") ? HttpMethod.GET : HttpMethod.POST);
        request.setAttribute(CommonConstant.CONTEXT_PAGE_DATA, pd);
    }
@@ -164,8 +179,8 @@
            Object o = pjp.proceed();
            return o;
        } catch (Throwable e) {
            e.printStackTrace();
            return null;
            logger.error("执行方法异常", e);
            return new ResponseEntity("内部异常" + e.getLocalizedMessage(), HttpStatus.BAD_REQUEST);
        }
    }