xufenglei
2018-01-04 07075b5e71cb6cf2ca9cb9def57be92c5280378d
src/main/java/com/moral/common/aop/ControllerAOP.java
@@ -52,29 +52,27 @@
      Object target = pjp.getTarget();
      Method currentMethod = target.getClass().getMethod(msig.getName(), msig.getParameterTypes());
      Type type = currentMethod.getGenericReturnType();
      String message = "";
      String message = e.getMessage();
      if (e instanceof BusinessException) {
         message = e.getLocalizedMessage();
      } 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 == AppData.class) {
            return new AppData(message,AppData.FAIL);
         } else if (rawType == ResultBean.class) {
            return new ResultBean(message,ResultBean.FAIL);
         } else if (rawType == Map.class) {
            Map<String, Object> resultMap = new HashMap<String, Object>();
            resultMap.put("msg", message);
            return resultMap;
         }
         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) {
         Map<String, Object> resultMap = new HashMap<String, Object>();
         resultMap.put("msg", message);
         return resultMap;
      } else if (type == Void.TYPE) {
         return null;
      } else {
         return type.getClass().newInstance();
      }
   }
}