|  | @@ -1,6 +1,6 @@
 | 
	
		
			
				|  |  |  package com.ruoyi.framework.aspectj;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -import java.lang.reflect.Method;
 | 
	
		
			
				|  |  | +import java.util.Objects;
 | 
	
		
			
				|  |  |  import org.aspectj.lang.ProceedingJoinPoint;
 | 
	
		
			
				|  |  |  import org.aspectj.lang.annotation.Around;
 | 
	
		
			
				|  |  |  import org.aspectj.lang.annotation.Aspect;
 | 
	
	
		
			
				|  | @@ -8,6 +8,7 @@ import org.aspectj.lang.annotation.Pointcut;
 | 
	
		
			
				|  |  |  import org.aspectj.lang.reflect.MethodSignature;
 | 
	
		
			
				|  |  |  import org.slf4j.Logger;
 | 
	
		
			
				|  |  |  import org.slf4j.LoggerFactory;
 | 
	
		
			
				|  |  | +import org.springframework.core.annotation.AnnotationUtils;
 | 
	
		
			
				|  |  |  import org.springframework.core.annotation.Order;
 | 
	
		
			
				|  |  |  import org.springframework.stereotype.Component;
 | 
	
		
			
				|  |  |  import com.ruoyi.common.utils.StringUtils;
 | 
	
	
		
			
				|  | @@ -60,17 +61,12 @@ public class DataSourceAspect
 | 
	
		
			
				|  |  |      public DataSource getDataSource(ProceedingJoinPoint point)
 | 
	
		
			
				|  |  |      {
 | 
	
		
			
				|  |  |          MethodSignature signature = (MethodSignature) point.getSignature();
 | 
	
		
			
				|  |  | -        Class<? extends Object> targetClass = point.getTarget().getClass();
 | 
	
		
			
				|  |  | -        DataSource targetDataSource = targetClass.getAnnotation(DataSource.class);
 | 
	
		
			
				|  |  | -        if (StringUtils.isNotNull(targetDataSource))
 | 
	
		
			
				|  |  | +        DataSource dataSource = AnnotationUtils.findAnnotation(signature.getMethod(), DataSource.class);
 | 
	
		
			
				|  |  | +        if (Objects.nonNull(dataSource))
 | 
	
		
			
				|  |  |          {
 | 
	
		
			
				|  |  | -            return targetDataSource;
 | 
	
		
			
				|  |  | -        }
 | 
	
		
			
				|  |  | -        else
 | 
	
		
			
				|  |  | -        {
 | 
	
		
			
				|  |  | -            Method method = signature.getMethod();
 | 
	
		
			
				|  |  | -            DataSource dataSource = method.getAnnotation(DataSource.class);
 | 
	
		
			
				|  |  |              return dataSource;
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +        return AnnotationUtils.findAnnotation(signature.getDeclaringType(), DataSource.class);
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |  }
 |