Переглянути джерело

Merge branch 'master-jdk21' of https://gitee.com/zhijiantianya/ruoyi-vue-pro

# Conflicts:
#	yudao-dependencies/pom.xml
#	yudao-module-report/yudao-module-report-biz/src/main/java/cn/iocoder/yudao/module/report/framework/ureport/config/UReportConfiguration.java
#	yudao-server/src/main/resources/application-dev.yaml
#	yudao-server/src/main/resources/application-local.yaml
YunaiV 1 рік тому
батько
коміт
baabebb5d1

+ 1 - 1
yudao-module-report/yudao-module-report-biz/pom.xml

@@ -66,7 +66,7 @@
         <!-- 积木报表-->
         <dependency>
             <groupId>org.jeecgframework.jimureport</groupId>
-            <artifactId>jimureport-spring-boot-starter</artifactId>
+            <artifactId>jimureport-spring-boot3-starter</artifactId>
         </dependency>
         <!-- 单独依赖升级版本,解决低版本validator失败问题 -->
         <dependency>

+ 17 - 0
yudao-module-report/yudao-module-report-biz/src/main/java/cn/iocoder/yudao/module/report/framework/jmreport/core/service/JmReportTokenServiceImpl.java

@@ -11,6 +11,7 @@ import cn.iocoder.yudao.framework.tenant.core.context.TenantContextHolder;
 import cn.iocoder.yudao.framework.web.core.util.WebFrameworkUtils;
 import cn.iocoder.yudao.module.system.api.oauth2.OAuth2TokenApi;
 import cn.iocoder.yudao.module.system.api.oauth2.dto.OAuth2AccessTokenCheckRespDTO;
+import cn.iocoder.yudao.module.system.api.permission.RoleApi;
 import lombok.RequiredArgsConstructor;
 import org.jeecg.modules.jmreport.api.JmReportTokenServiceI;
 import org.springframework.http.HttpHeaders;
@@ -128,4 +129,20 @@ public class JmReportTokenServiceImpl implements JmReportTokenServiceI {
         return user;
     }
 
+    @Override
+    public String[] getRoles(String s) {
+        // 暂时不用实现,因为不用 JmReport 的角色
+        return null;
+    }
+
+    @Override
+    public String getTenantId() {
+        // 补充说明:不能直接通过 TenantContext 获取,因为 jimu 报表前端请求时,没有带上 tenant-id Header
+        LoginUser loginUser = SecurityFrameworkUtils.getLoginUser();
+        if (loginUser == null) {
+            return null;
+        }
+        return StrUtil.toStringOrNull(loginUser.getTenantId());
+    }
+
 }

+ 1 - 1
yudao-module-report/yudao-module-report-biz/src/main/java/cn/iocoder/yudao/module/report/framework/ureport/core/UReportDataSource.java

@@ -18,7 +18,7 @@ import static cn.iocoder.yudao.module.report.enums.ErrorCodeConstants.UREPORT_DA
  * @author 赤焰
  */
 @Slf4j
-@Component
+//@Component
 public class UReportDataSource implements BuildinDatasource {
 
 	private static final String NAME = "UReportDataSource";

+ 1 - 1
yudao-module-report/yudao-module-report-biz/src/main/java/cn/iocoder/yudao/module/report/framework/ureport/core/UReportDatabaseProvider.java

@@ -29,7 +29,7 @@ import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.
  * @author 赤焰
  */
 // TODO @赤焰:这个 bean 的注解,交给 UReportConfiguration 搞
-@Component
+//@Component
 @Slf4j
 @Setter
 public class UReportDatabaseProvider implements ReportProvider {

+ 3 - 3
yudao-server/src/main/resources/application.yaml

@@ -260,9 +260,9 @@ yudao:
 debug: false
 
 # 积木报表配置
-minidao :
-  base-package: org.jeecg.modules.jmreport.desreport.dao*
-  db-type: mysql
+jeecg:
+  jmreport:
+    saas-mode: tenant
 
 # UReport 配置
 ureport: