From c3e1f9b9af29647bd157f2ea268bc56b2d3b9df1 Mon Sep 17 00:00:00 2001
From: 于紫祥_1901 <email@yuzixiang_1910>
Date: Mon, 31 Aug 2020 14:47:46 +0800
Subject: [PATCH] 风场图update

---
 src/main/java/com/moral/common/aop/ControllerAOP.java |   39 ++++++++++++++++++++-------------------
 1 files changed, 20 insertions(+), 19 deletions(-)

diff --git a/src/main/java/com/moral/common/aop/ControllerAOP.java b/src/main/java/com/moral/common/aop/ControllerAOP.java
index a30d404..0c1c441 100644
--- a/src/main/java/com/moral/common/aop/ControllerAOP.java
+++ b/src/main/java/com/moral/common/aop/ControllerAOP.java
@@ -13,6 +13,7 @@
 import org.aspectj.lang.reflect.MethodSignature;
 import org.springframework.stereotype.Component;
 
+import com.moral.common.bean.AppData;
 import com.moral.common.bean.ResultBean;
 import com.moral.common.exception.BusinessException;
 import com.moral.common.exception.ValidateException;
@@ -32,7 +33,7 @@
 
 		try {
 			result = pjp.proceed();
-			log.info(pjp.getSignature() + "use time:" + (System.currentTimeMillis() - startTime));
+			// log.info(pjp.getSignature() + "use time:" + (System.currentTimeMillis() - startTime));
 		} catch (Throwable e) {
 			result = handlerException(pjp, e);
 		}
@@ -51,29 +52,29 @@
 		Object target = pjp.getTarget();
 		Method currentMethod = target.getClass().getMethod(msig.getName(), msig.getParameterTypes());
 		Type type = currentMethod.getGenericReturnType();
-		String message = "";
+		String message = e.getMessage();
+		Map<String, Object> resultMap = new HashMap<String, Object>();
 		if (e instanceof BusinessException) {
-			message = e.getLocalizedMessage();
+			log.error(e.getMessage());
+			resultMap.put("msg", message);
 		} else if (e instanceof ValidateException) {
-			message = e.getLocalizedMessage();
 		} else {
-			log.error(pjp.getSignature() + " error ", e);
-			message = e.toString();
+			log.error(pjp.getSignature() + " error: " + e.toString(), e);
 		}
-
 		if (type instanceof ParameterizedType) {
-			Type rawType = ((ParameterizedType) type).getRawType();
-			if (rawType == ResultBean.class) {
-				ResultBean<?> resultBean = new ResultBean(ResultBean.FAIL);
-				resultBean.setMessage(message);
-				return resultBean;
-			} else if (rawType == Map.class) {
-				Map<String, Object> result = new HashMap<String, Object>();
-				result.put("msg",message);
-				return result;
-			}
+			type = ((ParameterizedType) type).getRawType();
 		}
-		return null;
-
+		if (type == AppData.class) {
+			return new AppData(message, AppData.FAIL);
+		} else if (type == ResultBean.class) {
+			return new ResultBean(e);
+		} else if (type == Map.class) {
+			resultMap.put("msg", message);
+			return resultMap;
+		} else if (type == Void.TYPE) {
+			return null;
+		} else {
+			return type.getClass().newInstance();
+		}
 	}
 }

--
Gitblit v1.8.0