datai/datai-scenes/datai-scene-salesforce/docs/changelog/0011-target-org-login-functionality.md
Kris 1af07403fb fix: 修复 setting 模块业务逻辑问题和 NullPointerException
主要修改:
1. 添加 orgType 字段支持源/目标 ORG 类型隔离
   - DataiConfigAuditLog、DataiConfigEnvironment、DataiConfigSnapshot 添加 orgType 字段
   - 相关 DTO、VO、Mapper XML 同步更新
   - 创建 SQL 脚本:add_org_type_to_*.sql

2. 修复业务逻辑问题
   - SalesforceConfigCacheManager:添加并发安全锁,修复环境初始化查询条件
   - DataiConfigSnapshotServiceImpl:添加快照恢复审计日志记录
   - DataiConfigEnvironmentServiceImpl:完善环境切换的事务回滚机制
   - EnvironmentSwitchListener:移除重复环境切换,移除 @Async 注解
   - ConfigChangeListener:添加空指针检查

3. 修复 NullPointerException
   - DataiConfigurationController.list():添加 list 空值检查
   - DataiConfigSnapshotController.list():添加 list 空值检查
   - 过滤 null environmentId 防止 Map 创建失败

4. 生成 API 文档
   - DataiConfigEnvironmentController:切换环境、获取当前环境接口文档
   - DataiConfigSnapshotController:快照管理完整接口文档
   - DataiConfigurationController:配置管理完整接口文档
   - 创建 setting 模块索引:docs/api-docs/setting/index.md

5. 更新文档索引
   - 更新 docs/index.md 添加 setting 模块索引链接
2026-01-14 14:08:33 +08:00

3.3 KiB
Raw Permalink Blame History

Changelog - 目标ORG登录功能实现

变更信息

  • 版本号: v0.1.11
  • 发布日期: 2026-01-13
  • 变更类型: 特性更新

变更摘要

本次变更实现了目标ORG登录功能为后续实现本地数据库到Salesforce的双向同步提供了基础。通过复用现有的登录历史和会话对象并添加ORG类型字段进行区分实现了目标ORG的独立认证管理。创建了完整的服务层和控制器支持目标ORG的登录、登出、获取登录信息和自动登录功能。

详细变更

特性更新

  • 目标ORG登录模型 - 创建了 TargetOrgLoginRequest 模型类用于接收目标ORG登录请求参数
  • ORG类型区分 - 在 DataiSfLoginHistoryDataiSfLoginSession 中添加了 orgType 字段用于区分源ORG和目标ORG
  • 目标ORG登录历史服务 - 创建了 ITargetOrgLoginHistoryService 接口和 TargetOrgLoginHistoryServiceImpl 实现类管理目标ORG登录历史
  • 目标ORG登录会话服务 - 创建了 ITargetOrgLoginSessionService 接口和 TargetOrgLoginSessionServiceImpl 实现类管理目标ORG登录会话
  • 目标ORG登录服务 - 创建了 ITargetOrgLoginService 接口和 TargetOrgLoginServiceImpl 实现类实现目标ORG登录核心逻辑
  • 目标ORG登录控制器 - 创建了 DataISfTargetOrgLoginController 控制器提供目标ORG登录相关REST API接口
  • 数据访问层扩展 - 在 DataiSfLoginHistoryMapper 接口中添加了 selectLatestSuccessLoginHistoryByOrgType 方法支持按ORG类型查询登录历史

Bug 修复

性能优化

安全修复

其他变更

影响范围

受影响的模块

  • datai-salesforce-auth - 新增目标ORG登录相关功能不影响现有源ORG登录功能

兼容性说明

  • 本次变更完全兼容现有功能,所有新增内容均为独立模块
  • 复用了现有的 DataiSfLoginHistoryDataiSfLoginSession 对象,通过 orgType 字段进行区分
  • 目标ORG登录接口路径为 /salesforce/target/login/*与源ORG登录接口 /salesforce/login/* 完全独立

升级指南

升级步骤

  1. 部署新版本的 datai-salesforce-auth 模块
  2. 更新数据库表结构,为 datai_sf_login_historydatai_sf_login_session 表添加 org_type 字段
  3. 更新 DataiSfLoginHistoryMapper.xml,添加 selectLatestSuccessLoginHistoryByOrgType SQL实现

注意事项

  • 需要确保数据库表结构已更新,添加 org_type 字段
  • 目标ORG登录功能与源ORG登录功能完全独立可以同时使用
  • 建议在测试环境中先验证目标ORG登录功能后再部署到生产环境

测试信息

测试环境

  • 本地开发环境

测试结果

  • 待测试

相关链接

发布人员

  • AI Assistant - 开发人员

审核信息

  • 审核人员: 待审核
  • 审核日期: 待审核
  • 审核状态: 待审核
  • 审核意见: 待审核