格式化

pull/3/head
RuoYi 2018-05-21 17:24:16 +08:00
parent 7886e2bb9a
commit 2e9445b29e
1 changed files with 126 additions and 112 deletions

View File

@ -36,7 +36,8 @@ import com.ruoyi.project.system.user.domain.User;
@Aspect @Aspect
@Component @Component
@EnableAsync @EnableAsync
public class LogAspect { public class LogAspect
{
private static final Logger log = LoggerFactory.getLogger(LogAspect.class); private static final Logger log = LoggerFactory.getLogger(LogAspect.class);
@Autowired @Autowired
@ -44,17 +45,18 @@ public class LogAspect {
// 配置织入点 // 配置织入点
@Pointcut("@annotation(com.ruoyi.framework.aspectj.lang.annotation.Log)") @Pointcut("@annotation(com.ruoyi.framework.aspectj.lang.annotation.Log)")
public void logPointCut() { public void logPointCut()
{
} }
/** /**
* *
* *
* @param joinPoint * @param joinPoint
*
*/ */
@AfterReturning(pointcut = "logPointCut()") @AfterReturning(pointcut = "logPointCut()")
public void doBefore(JoinPoint joinPoint) { public void doBefore(JoinPoint joinPoint)
{
handleLog(joinPoint, null); handleLog(joinPoint, null);
} }
@ -65,16 +67,20 @@ public class LogAspect {
* @param e * @param e
*/ */
@AfterThrowing(value = "logPointCut()", throwing = "e") @AfterThrowing(value = "logPointCut()", throwing = "e")
public void doAfter(JoinPoint joinPoint, Exception e) { public void doAfter(JoinPoint joinPoint, Exception e)
{
handleLog(joinPoint, e); handleLog(joinPoint, e);
} }
@Async @Async
private void handleLog(final JoinPoint joinPoint, final Exception e) { private void handleLog(final JoinPoint joinPoint, final Exception e)
try { {
try
{
// 获得注解 // 获得注解
Log controllerLog = getAnnotationLog(joinPoint); Log controllerLog = getAnnotationLog(joinPoint);
if (controllerLog == null) { if (controllerLog == null)
{
return; return;
} }
@ -88,12 +94,14 @@ public class LogAspect {
String ip = ShiroUtils.getIp(); String ip = ShiroUtils.getIp();
operLog.setOperIp(ip); operLog.setOperIp(ip);
operLog.setOperUrl(ServletUtils.getRequest().getRequestURI()); operLog.setOperUrl(ServletUtils.getRequest().getRequestURI());
if (currentUser != null) { if (currentUser != null)
{
operLog.setLoginName(currentUser.getLoginName()); operLog.setLoginName(currentUser.getLoginName());
operLog.setDeptName(currentUser.getDept().getDeptName()); operLog.setDeptName(currentUser.getDept().getDeptName());
} }
if (e != null) { if (e != null)
{
operLog.setStatus(UserConstants.EXCEPTION); operLog.setStatus(UserConstants.EXCEPTION);
operLog.setErrorMsg(StringUtils.substring(e.getMessage(), 0, 2000)); operLog.setErrorMsg(StringUtils.substring(e.getMessage(), 0, 2000));
} }
@ -105,7 +113,9 @@ public class LogAspect {
getControllerMethodDescription(controllerLog, operLog); getControllerMethodDescription(controllerLog, operLog);
// 保存数据库 // 保存数据库
operLogService.insertOperlog(operLog); operLogService.insertOperlog(operLog);
} catch (Exception exp) { }
catch (Exception exp)
{
// 记录本地异常日志 // 记录本地异常日志
log.error("==前置通知异常=="); log.error("==前置通知异常==");
log.error("异常信息:{}", exp.getMessage()); log.error("异常信息:{}", exp.getMessage());
@ -116,12 +126,12 @@ public class LogAspect {
/** /**
* Controller * Controller
* *
* @param joinPoint * @param joinPoint
*
* @return * @return
* @throws Exception * @throws Exception
*/ */
public void getControllerMethodDescription(Log log, OperLog operLog) throws Exception { public void getControllerMethodDescription(Log log, OperLog operLog) throws Exception
{
// 设置action动作 // 设置action动作
operLog.setAction(log.action()); operLog.setAction(log.action());
// 设置标题 // 设置标题
@ -129,7 +139,8 @@ public class LogAspect {
// 设置channel // 设置channel
operLog.setChannel(log.channel()); operLog.setChannel(log.channel());
// 是否需要保存request参数和值 // 是否需要保存request参数和值
if (log.isSaveRequestData()) { if (log.isSaveRequestData())
{
// 获取参数的信息,传入到数据库中。 // 获取参数的信息,传入到数据库中。
setRequestValue(operLog); setRequestValue(operLog);
} }
@ -141,7 +152,8 @@ public class LogAspect {
* @param operLog * @param operLog
* @param request * @param request
*/ */
private void setRequestValue(OperLog operLog) { private void setRequestValue(OperLog operLog)
{
Map<String, String[]> map = ServletUtils.getRequest().getParameterMap(); Map<String, String[]> map = ServletUtils.getRequest().getParameterMap();
String params = JSONObject.toJSONString(map); String params = JSONObject.toJSONString(map);
operLog.setOperParam(StringUtils.substring(params, 0, 255)); operLog.setOperParam(StringUtils.substring(params, 0, 255));
@ -150,12 +162,14 @@ public class LogAspect {
/** /**
* *
*/ */
private Log getAnnotationLog(JoinPoint joinPoint) throws Exception { private Log getAnnotationLog(JoinPoint joinPoint) throws Exception
{
Signature signature = joinPoint.getSignature(); Signature signature = joinPoint.getSignature();
MethodSignature methodSignature = (MethodSignature) signature; MethodSignature methodSignature = (MethodSignature) signature;
Method method = methodSignature.getMethod(); Method method = methodSignature.getMethod();
if (method != null) { if (method != null)
{
return method.getAnnotation(Log.class); return method.getAnnotation(Log.class);
} }
return null; return null;