diff --git a/pom.xml b/pom.xml
index ef39dfe..a710ba9 100644
--- a/pom.xml
+++ b/pom.xml
@@ -119,15 +119,15 @@
true
-
- org.springframework.boot
- spring-boot-starter-data-r2dbc
-
-
- io.r2dbc
- r2dbc-postgresql
- 0.8.13.RELEASE
-
+
+
+
+
+
+
+
+
+
org.mapstruct
mapstruct
diff --git a/src/main/java/com/zsc/edu/dify/framework/AppConfig.java b/src/main/java/com/zsc/edu/dify/framework/RestClientConfig.java
similarity index 91%
rename from src/main/java/com/zsc/edu/dify/framework/AppConfig.java
rename to src/main/java/com/zsc/edu/dify/framework/RestClientConfig.java
index a6625fd..d273deb 100644
--- a/src/main/java/com/zsc/edu/dify/framework/AppConfig.java
+++ b/src/main/java/com/zsc/edu/dify/framework/RestClientConfig.java
@@ -8,7 +8,7 @@ import org.springframework.web.client.RestClient;
* @author zhuang
*/
@Configuration
-public class AppConfig {
+public class RestClientConfig {
@Bean
public RestClient restClient() {
diff --git a/src/main/java/com/zsc/edu/dify/framework/WebMvcConfiguration.java b/src/main/java/com/zsc/edu/dify/framework/WebMvcConfiguration.java
index 0aa1c39..db3dc02 100644
--- a/src/main/java/com/zsc/edu/dify/framework/WebMvcConfiguration.java
+++ b/src/main/java/com/zsc/edu/dify/framework/WebMvcConfiguration.java
@@ -46,12 +46,12 @@ public class WebMvcConfiguration implements WebMvcConfigurer {
}
}
- @Override
- public void addCorsMappings(CorsRegistry registry) {
- registry.addMapping("/**")
- .allowedOrigins("*")
- .allowedMethods("GET", "POST", "PUT", "DELETE")
- .allowedHeaders("*")
- .exposedHeaders("*");
- }
+// @Override
+// public void addCorsMappings(CorsRegistry registry) {
+// registry.addMapping("/**")
+// .allowedOrigins("*")
+// .allowedMethods("GET", "POST", "PUT", "DELETE")
+// .allowedHeaders("*")
+// .exposedHeaders("*");
+// }
}
diff --git a/src/main/java/com/zsc/edu/dify/framework/mybatisplus/MybatisPlusConfig.java b/src/main/java/com/zsc/edu/dify/framework/mybatisplus/MybatisPlusConfig.java
index 0ece86b..e04477b 100644
--- a/src/main/java/com/zsc/edu/dify/framework/mybatisplus/MybatisPlusConfig.java
+++ b/src/main/java/com/zsc/edu/dify/framework/mybatisplus/MybatisPlusConfig.java
@@ -4,9 +4,20 @@ import com.baomidou.mybatisplus.annotation.DbType;
import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
import com.baomidou.mybatisplus.extension.plugins.inner.DataPermissionInterceptor;
import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
+import jakarta.activation.DataSource;
+import jakarta.annotation.Resource;
+import org.apache.ibatis.session.ExecutorType;
+import org.mybatis.spring.SqlSessionFactoryBean;
+import org.mybatis.spring.SqlSessionTemplate;
import org.mybatis.spring.annotation.MapperScan;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.boot.jdbc.DataSourceBuilder;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
+import org.springframework.core.io.support.PathMatchingResourcePatternResolver;
+
+import javax.naming.Context;
+import javax.naming.InitialContext;
/**
* @author Yao
@@ -14,6 +25,7 @@ import org.springframework.context.annotation.Configuration;
@MapperScan(basePackages = "com.zsc.edu.dify.modules.**.repo")
@Configuration
public class MybatisPlusConfig {
+
@Bean
public MybatisPlusInterceptor mybatisPlusInterceptor() {
MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
@@ -25,4 +37,5 @@ public class MybatisPlusConfig {
interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.POSTGRE_SQL));
return interceptor;
}
+
}
diff --git a/src/main/java/com/zsc/edu/dify/framework/security/SpringSecurityConfig.java b/src/main/java/com/zsc/edu/dify/framework/security/SpringSecurityConfig.java
index dcb04a9..f9f8852 100644
--- a/src/main/java/com/zsc/edu/dify/framework/security/SpringSecurityConfig.java
+++ b/src/main/java/com/zsc/edu/dify/framework/security/SpringSecurityConfig.java
@@ -82,7 +82,7 @@ public class SpringSecurityConfig {
.requestMatchers(HttpMethod.GET, "/api/rest/user/menu","/api/rest/user/register","/api/rest/user/send-email").permitAll()
.requestMatchers(HttpMethod.POST, "/api/rest/user/login","/api/rest/user/register").permitAll()
.requestMatchers("/api/rest/user/me").permitAll()
- .requestMatchers("/v1/**").permitAll()
+ .requestMatchers("/v1/**").authenticated()
.requestMatchers("/api/**").authenticated()
)
// 不用注解,直接通过判断路径实现动态访问权限
diff --git a/src/main/java/com/zsc/edu/dify/framework/security/flux/FluxUserDetailServiceImpl.java b/src/main/java/com/zsc/edu/dify/framework/security/flux/FluxUserDetailServiceImpl.java
deleted file mode 100644
index 338964f..0000000
--- a/src/main/java/com/zsc/edu/dify/framework/security/flux/FluxUserDetailServiceImpl.java
+++ /dev/null
@@ -1,83 +0,0 @@
-package com.zsc.edu.dify.framework.security.flux;
-import com.zsc.edu.dify.common.util.TreeUtil;
-import com.zsc.edu.dify.exception.StateException;
-import com.zsc.edu.dify.framework.security.UserDetailsImpl;
-import com.zsc.edu.dify.modules.system.entity.Dept;
-import com.zsc.edu.dify.modules.system.entity.Menu;
-import com.zsc.edu.dify.modules.system.entity.Role;
-import com.zsc.edu.dify.modules.system.entity.UserRole;
-import com.zsc.edu.dify.modules.system.repo.flux.*;
-import com.zsc.edu.dify.modules.system.service.DeptService;
-import lombok.AllArgsConstructor;
-import org.springframework.security.core.userdetails.ReactiveUserDetailsService;
-import org.springframework.security.core.userdetails.UserDetails;
-import org.springframework.stereotype.Service;
-import reactor.core.publisher.Mono;
-
-import java.util.List;
-import java.util.Set;
-import java.util.stream.Collectors;
-
-/**
- * @author zhuang
- */
-@AllArgsConstructor
-@Service
-public class FluxUserDetailServiceImpl implements ReactiveUserDetailsService {
-
- private final UserFluxRepository userRepo;
- private final MenuFluxRepository menuRepository;
- private final RoleFluxRepository roleFluxRepository;
- private final UserRoleFluxRepository userRoleFluxRepository;
- private final DeptService deptService;
- @Override
- public Mono findByUsername(String username) {
- return userRepo.findByUsername(username)
- .flatMap(user -> {
- if (!user.getEnableState()) {
- return Mono.error(new StateException("用户 '" + username + "' 已被禁用!请联系管理员"));
- }
- // 先获取UserRole列表,并从中提取roleIds
- return userRoleFluxRepository.findByUserId(user.getId()).collectList()
- .flatMap(userRoles -> Mono.zip(
- roleFluxRepository.findByDeptId(user.getDeptId()),
- deptService.listFluxTree(user.getDeptId()),
- menuRepository.findByRoleId(user.getRoleId())
- ))
- .flatMap(tuple -> {
- Role role = (Role) tuple.getT1();
- List depts = (List) tuple.getT2();
- List