From 2489c46a7ffe23a95da201a35c40424f2b79dba2 Mon Sep 17 00:00:00 2001
From: 602003139@qq.com <ljh2630734>
Date: 星期四, 21 十月 2021 14:44:53 +0800
Subject: [PATCH] 修复在swagger配置类中无法读取到satoken配置文件的问题

---
 ruoyi-framework/src/main/java/com/ruoyi/framework/aspectj/DataSourceAspect.java |   15 +++++++++------
 1 files changed, 9 insertions(+), 6 deletions(-)

diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/aspectj/DataSourceAspect.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/aspectj/DataSourceAspect.java
index 3167934..45ffe3b 100644
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/aspectj/DataSourceAspect.java
+++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/aspectj/DataSourceAspect.java
@@ -1,8 +1,8 @@
 package com.ruoyi.framework.aspectj;
 
-import cn.hutool.core.lang.Validator;
 import com.baomidou.dynamic.datasource.toolkit.DynamicDataSourceContextHolder;
 import com.ruoyi.common.annotation.DataSource;
+import com.ruoyi.common.utils.StringUtils;
 import org.aspectj.lang.ProceedingJoinPoint;
 import org.aspectj.lang.annotation.Around;
 import org.aspectj.lang.annotation.Aspect;
@@ -17,15 +17,15 @@
 /**
  * 澶氭暟鎹簮澶勭悊
  *
- * @author ruoyi
+ * @author Lion Li
  */
 @Aspect
-@Order(1)
+@Order(-500)
 @Component
 public class DataSourceAspect {
 
 	@Pointcut("@annotation(com.ruoyi.common.annotation.DataSource)"
-		+ "|| @within(com.ruoyi.common.annotation.DataSource)")
+			+ "|| @within(com.ruoyi.common.annotation.DataSource)")
 	public void dsPointCut() {
 	}
 
@@ -33,8 +33,10 @@
 	public Object around(ProceedingJoinPoint point) throws Throwable {
 		DataSource dataSource = getDataSource(point);
 
-		if (Validator.isNotNull(dataSource)) {
-			DynamicDataSourceContextHolder.push(dataSource.value().name());
+		if (StringUtils.isNotNull(dataSource)) {
+			DynamicDataSourceContextHolder.poll();
+			String source = dataSource.value().getSource();
+			DynamicDataSourceContextHolder.push(source);
 		}
 
 		try {
@@ -57,4 +59,5 @@
 
 		return AnnotationUtils.findAnnotation(signature.getDeclaringType(), DataSource.class);
 	}
+
 }

--
Gitblit v1.9.3