From f1a2d46aaa612253afba7b1d61ad04a2f0ef7eed Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期三, 21 八月 2019 11:55:52 +0800
Subject: [PATCH] 金币获得客户端事件添加
---
fanli/src/main/java/com/yeshi/fanli/aspect/SignValidateAspect.java | 63 +++++++++++++++++++++----------
1 files changed, 43 insertions(+), 20 deletions(-)
diff --git a/fanli/src/main/java/com/yeshi/fanli/aspect/SignValidateAspect.java b/fanli/src/main/java/com/yeshi/fanli/aspect/SignValidateAspect.java
index 7b0439b..92ea934 100644
--- a/fanli/src/main/java/com/yeshi/fanli/aspect/SignValidateAspect.java
+++ b/fanli/src/main/java/com/yeshi/fanli/aspect/SignValidateAspect.java
@@ -14,6 +14,7 @@
import org.aspectj.lang.ProceedingJoinPoint;
import org.aspectj.lang.annotation.Around;
import org.aspectj.lang.annotation.Aspect;
+import org.springframework.core.annotation.Order;
import org.springframework.stereotype.Component;
import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes;
@@ -23,14 +24,16 @@
import com.yeshi.fanli.log.LogHelper;
import com.yeshi.fanli.util.Constant;
import com.yeshi.fanli.util.StringUtil;
+import com.yeshi.fanli.util.ThreadUtil;
import net.sf.json.JSONObject;
//瀹㈡埛绔帴鍙g鍚嶉獙璇�
@Component
@Aspect
+@Order(2)
public class SignValidateAspect {
- public static final String EDP = "execution(* com.yeshi.fanli.controller.client.*.*(..))";
+ public static final String EDP = "execution(* com.yeshi.fanli.controller.client.*.*.*(..))";
public static String KEY = "";
@@ -52,6 +55,8 @@
for (Object obj : args) {
if (obj instanceof AcceptData) {
acceptData = (AcceptData) obj;
+ } else if (obj instanceof HttpServletRequest) {
+ request = (HttpServletRequest) obj;
}
}
boolean isRight = true;
@@ -64,8 +69,8 @@
if ((acceptData.getPlatform() != null && acceptData.getPlatform().equalsIgnoreCase("android")
&& acceptData.getVersion() != null && Integer.parseInt(acceptData.getVersion()) > 21)
- || (acceptData.getPlatform()!=null&&acceptData.getPlatform().equalsIgnoreCase("ios") && acceptData.getVersion() != null
- && Integer.parseInt(acceptData.getVersion()) > 24)) {
+ || (acceptData.getPlatform() != null && acceptData.getPlatform().equalsIgnoreCase("ios")
+ && acceptData.getVersion() != null && Integer.parseInt(acceptData.getVersion()) > 24)) {
isRight = signIsRight(request);
} else if (acceptData.getPackages().startsWith("com.haicaojie")) {
isRight = signIsRight(request);
@@ -81,28 +86,46 @@
// 绛惧悕鏄惁姝g‘
if (isRight) {
// 鍒ゆ柇绛惧悕瓒呮椂
- // if (Math.abs((Long.parseLong(acceptData.getTime()) -
- // System.currentTimeMillis())) > 1000 * 60 * 10) {
- // JSONObject data = new JSONObject();
- // data.put("code", -2);
- // data.put("msg", "鏃堕棿閿欒");
- // out.print(data);
- // out.close();
- // return null;
- // }
- //uid
-
+ if (Math.abs((Long.parseLong(acceptData.getTime()) - System.currentTimeMillis())) > 1000 * 60 * 10) {
+ JSONObject data = new JSONObject();
+ data.put("code", -2);
+ data.put("msg", "鏃堕棿閿欒");
+ out.print(data);
+ out.close();
+ return null;
+ }
+
+ final String url = request.getRequestURI();
+ @SuppressWarnings("unchecked")
+ final Map<String, Object> params = request.getParameterMap();
+ ThreadUtil.run(new Runnable() {
+ @Override
+ public void run() {
+ // 璁板綍璇锋眰鏃ュ織
+ LogHelper.requestInfo(url, params);
+ }
+ });
Object obj = null;
try {
+ long startTime = System.currentTimeMillis();
obj = joinPoint.proceed(args);
- } catch (Throwable e) {
- e.printStackTrace();
- try {
- LogHelper.errorDetailInfo(e, getHttpServletParams(request), request.getRequestURI().toString());
- } catch (Exception e1) {
- e1.printStackTrace();
+ final long responseTime = System.currentTimeMillis() - startTime;
+ // 璁板綍澶т簬2s鐨勮姹�
+ if (responseTime >= 2000) {
+ ThreadUtil.run(new Runnable() {
+
+ @Override
+ public void run() {
+ LogHelper.requestTime(url, params, responseTime);
+ }
+ });
+
}
+
+ } catch (Throwable e) {
+ LogHelper.errorDetailInfo(e, getHttpServletParams(request), request.getRequestURI().toString());
+ out.print(JsonUtil.loadFalseResult(90009, "鏈嶅姟鍣ㄥ唴閮ㄩ敊璇�"));
}
return obj;
} else {
--
Gitblit v1.8.0