5 Commits

Author SHA1 Message Date
zhangjf
330ec6dea9 refactor: 简化多租户路由配置,基于 Nacos 元数据动态匹配
问题:tenant.routing.services 配置在每个服务中重复定义 vip-tenants

解决方案:
1. TenantRoutingProperties 简化
   - 移除 services 映射(vip-tenants 列表)
   - 保留全局配置:enabled, fallback-to-shared, shared-services
   - 路由逻辑改为基于实例元数据动态匹配

2. 配置简化
   - Gateway: 只需全局配置,无需定义各服务的 vip-tenants
   - 服务实例: 只需在 Nacos metadata 中声明 tenant-group
   - 负载均衡器: 从实例 metadata 读取 tenant-group 进行匹配

3. 架构变化
   修改前:配置文件定义 vip-tenants 列表
   修改后:实例注册时声明 tenant-group,负载均衡器动态匹配

示例:
  共享实例 metadata: { tenant-group: "" }
  VIP 实例 metadata: { tenant-group: "TENANT_VIP_001" }
  请求匹配 → 路由到对应实例
2026-02-19 21:18:58 +08:00
zhangjf
2765f3f265 feat: 本地开发环境配置多租户路由
问题:fund-gateway 和 fund-sys 的 application.yml 缺少 tenant.routing 配置

修改内容:

1. fund-sys/application.yml
   - 添加 tenant.routing 配置
   - 配置 VIP 租户列表 (TENANT_VIP_001, TENANT_VIP_002)
   - 配置共享服务列表

2. fund-gateway/application.yml
   - 添加 Nacos 服务发现配置
   - 路由改为 lb:// 协议使用负载均衡
   - 添加全局跨域配置
   - 添加 tenant.routing 配置
   - 添加负载均衡日志级别
2026-02-19 21:11:08 +08:00
zhangjf
8e4afcd1a5 feat: TenantAwareLoadBalancer 整合 TenantRoutingProperties 配置
问题:TenantRoutingProperties 定义了配置但未被使用

解决方案:
1. TenantAwareLoadBalancer 注入 TenantRoutingProperties
   - 使用配置的 tenantHeader 名称
   - 使用配置的 buildTenantGroup 方法
   - 使用配置的 isSharedService 判断
   - 使用配置的 isFallbackToShared 策略

2. 新增功能
   - 支持 enabled=false 禁用租户路由
   - 共享服务跳过租户过滤
   - 可配置是否回退到共享实例

3. 更新测试适配新构造函数
2026-02-19 21:02:25 +08:00
zhangjf
0c87462b68 fix: 修复fund-req/fund-exp/fund-receipt模块的mybatis-plus依赖和数据库配置 2026-02-17 16:42:21 +08:00
zhangjf
a17307a96e feat: 完成资金服务平台六步实施 - 数据库初始化+服务启动+网关配置
本次提交包含:
1. 11个Maven模块全部创建并编译通过
2. 4个数据库初始化脚本(14张表)
3. fund-sys服务启动验证
4. Gateway路由配置完成
5. API端到端测试通过

核心能力:
- 多租户数据隔离(MyBatis-Plus)
- JWT认证+BCrypt密码
- 统一返回结构
- 参数校验
- OpenFeign示例
- API网关统一入口

修复:
- MyBatis-Plus与Spring Boot 3兼容性问题
- BaseEntity字段类型统一(Long)
- Gateway版本兼容性
2026-02-17 12:53:55 +08:00