datai/datai-scenes/datai-scene-salesforce/docs/changelog/0022-org-config-management.md
Kris 2e6f087732 docs: 完成REQ-010-17和REQ-010-2的文档创建
- 完成REQ-010-17(性能优化和限流处理)的所有6个阶段
  - 创建ADR文档:0026-performance-optimization.md
  - 创建Prompt文档:027-performance-optimization.md
  - 创建会话记录:20260119-performance-optimization.md
  - 创建变更记录:20260119-performance-optimization.md
  - 创建复盘报告:20260119-performance-optimization-retro.md
  - 更新index.md和CHANGELOG.md

- 完成REQ-010-2(基础实体类和Mapper创建)的前3个阶段
  - 更新ADR文档:0011-entity-mapper-create.md
  - 创建Prompt文档:002-entity-mapper-create.md
  - 更新index.md

所有文档均按照SSOT方法论创建,包括需求定义、架构决策、提示词资产化、执行会话、变更记录和闭环复盘。
2026-01-19 10:06:09 +08:00

6.6 KiB
Raw Blame History

Changelog - Salesforce组织配置管理

变更信息

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

变更摘要

本次变更完成了 datai-salesforce-metadata 模块的 Salesforce 组织配置管理功能,包括组织配置的 CRUD 管理、OAuth 认证信息加密存储、环境类型管理、存储路径配置、连接状态管理、配置验证功能等,为元数据拉取和部署系统提供了配置管理基础。

详细变更

特性更新

  • 组织配置 CRUD 功能 - 实现组织配置的增删改查功能

    • 支持创建 Salesforce 组织配置
    • 支持编辑组织配置
    • 支持删除组织配置
    • 支持查询组织配置列表(支持分页和条件查询)
    • 支持查询组织配置详情
    • API 接口符合 RESTful 规范
  • OAuth 认证信息加密存储 - 实现OAuth认证信息的加密存储

    • 使用 AES-256-CBC 加密算法
    • 加密密钥安全存储
    • 解密功能正常工作
    • 加密算法符合安全标准
    • 使用 Base64 编码存储加密后的数据
  • 环境类型管理 - 实现环境类型选择和管理

    • 支持环境类型选择Sandbox/Production
    • 使用枚举类型管理环境类型
    • 环境类型验证正确
    • 环境类型显示友好
  • 存储根路径配置 - 实现存储根路径配置

    • 支持存储根路径配置
    • 路径格式验证正确
    • 支持相对路径和绝对路径
    • 路径存在性检查正确
    • 支持 OSS 和本地文件系统存储
  • 连接状态管理 - 实现连接状态管理

    • 支持连接状态管理Active/Inactive/Auth_Invalid
    • 使用枚举类型管理连接状态
    • 连接状态更新正确
    • 连接状态显示友好
  • 配置验证功能 - 实现配置验证功能

    • 验证 OAuth 认证信息格式正确
    • 验证连接可用性
    • 验证失败返回详细错误信息

代码更新

  • 枚举类创建 - 创建环境类型和连接状态枚举类

    • EnvironmentType - 环境类型枚举SANDBOX, PRODUCTION
    • ConnectionStatus - 连接状态枚举ACTIVE, INACTIVE, AUTH_INVALID
  • 加密工具类创建 - 创建加密工具类

    • EncryptionUtil - 加密工具类
    • 实现 AES-256-CBC 加密方法
    • 实现 AES-256-CBC 解密方法
    • 配置加密密钥
  • Service 层创建 - 创建组织配置服务层

    • DataiMetaOrgConfigService - 组织配置服务接口
    • DataiMetaOrgConfigServiceImpl - 组织配置服务实现
    • 实现组织配置 CRUD 方法
    • 实现配置验证方法
    • 实现加密解密逻辑
  • Controller 层创建 - 创建组织配置控制器

    • DataiMetaOrgConfigController - 组织配置控制器
    • 实现创建组织配置接口:POST /api/metadata/org-config
    • 实现更新组织配置接口:PUT /api/metadata/org-config/{id}
    • 实现删除组织配置接口:DELETE /api/metadata/org-config/{id}
    • 实现查询组织配置详情接口:GET /api/metadata/org-config/{id}
    • 实现查询组织配置列表接口:GET /api/metadata/org-config
    • 实现验证组织配置接口:POST /api/metadata/org-config/{id}/validate

文档更新

  • 需求文档更新 - 更新 REQ-010-3 需求文档

    • 更新需求状态为"阶段2-架构决策"
  • 架构决策记录创建 - 创建 ADR-0012-org-config-management.md

    • 记录 Salesforce 组织配置管理的架构决策
    • 确定分层架构设计
    • 确定 OAuth 认证信息加密方案
    • 确定环境类型和连接状态管理方案
    • 确定存储路径配置和验证方案
    • 确定 API 接口设计
  • 提示词文档创建 - 创建 Prompt-013-org-config-management.md

    • 记录 Salesforce 组织配置管理实现的提示词
    • 定义代码结构
    • 定义代码要求
    • 定义 API 接口
    • 定义单元测试要求
  • 会话记录创建 - 创建 20260118-org-config-management.md

    • 记录 Salesforce 组织配置管理实现的会话过程
    • 记录执行步骤
    • 记录关键产出
    • 记录质疑与替代方案
    • 记录复现步骤

影响范围

模块影响

  • datai-salesforce-metadata - 新增 Salesforce 组织配置管理功能

API 变更

  • 新增 API 接口:
    • POST /api/metadata/org-config - 创建组织配置
    • PUT /api/metadata/org-config/{id} - 更新组织配置
    • DELETE /api/metadata/org-config/{id} - 删除组织配置
    • GET /api/metadata/org-config/{id} - 查询组织配置详情
    • GET /api/metadata/org-config - 查询组织配置列表
    • POST /api/metadata/org-config/{id}/validate - 验证组织配置

数据库变更

无数据库变更(使用 REQ-010-1 创建的 datai_meta_org_config 表)

配置变更

  • 新增配置项:
    • encryption.key - 加密密钥配置

依赖更新

新增依赖

无新增依赖(使用现有的 Spring Boot 3 + MyBatis Plus 技术栈)

依赖变更

无依赖变更

测试

单元测试

  • DataiMetaOrgConfigServiceImpl 编写单元测试
  • EncryptionUtil 编写单元测试
  • 测试覆盖率 >= 80%

集成测试

  • DataiMetaOrgConfigController 编写集成测试
  • 测试所有 API 接口
  • 测试加密解密功能
  • 测试配置验证功能

已知问题

无已知问题

升级指南

配置升级

  1. application.yml 中添加加密密钥配置:

    encryption:
      key: ${ENCRYPTION_KEY:your-256-bit-encryption-key}
    
  2. 确保加密密钥长度为 256 位32 字节)

数据库升级

无需数据库升级(使用 REQ-010-1 创建的 datai_meta_org_config 表)

API 使用升级

  1. 使用新的 API 接口管理 Salesforce 组织配置
  2. OAuth 认证信息将自动加密存储
  3. 使用配置验证接口验证配置正确性

回滚计划

如果需要回滚本次变更,可以采取以下步骤:

  1. 删除新增的代码文件:

    • 删除 DataiMetaOrgConfigController.java
    • 删除 DataiMetaOrgConfigService.java
    • 删除 DataiMetaOrgConfigServiceImpl.java
    • 删除 EncryptionUtil.java
    • 删除 EnvironmentType.java
    • 删除 ConnectionStatus.java
  2. 删除新增的 API 接口

  3. 删除新增的配置项

相关文档