7.1 KiB
7.1 KiB
变更日志
元数据
- 需求编号:014-1
- 创建时间:2026-01-27
- 创建人:SSOT 架构师
- 版本号:v1.0.0
变更概述
实现 Apex 类与触发器基础管理功能,包括与 Salesforce Tooling API 的连接建立、Apex 类和触发器的 CRUD 操作、RESTful API 接口、异常处理机制和数据模型封装。
变更内容
新增功能
1. Tooling API 连接管理
- 实现 Tooling 连接工厂
ToolingConnectionFactory - 继承
AbstractConnectionFactory<ToolingConnection> - 使用
ConnectionProxy创建代理连接 - 复用
SessionManager获取 Session 信息 - 支持 API 版本 61.0
2. Apex 类基础管理
- 创建功能:支持创建 Apex 类,包含类名和类体
- 查询功能:
- 根据类 ID 查询 Apex 类详情
- 根据类名查询 Apex 类详情
- 分页查询 Apex 类列表
- 更新功能:支持更新 Apex 类的类名和类体
- 删除功能:支持根据类 ID 删除 Apex 类
3. Apex 触发器基础管理
- 创建功能:支持创建 Apex 触发器,包含触发器名称、对象、触发事件、状态等
- 查询功能:
- 根据触发器 ID 查询 Apex 触发器详情
- 根据触发器名称查询 Apex 触发器详情
- 分页查询 Apex 触发器列表
- 更新功能:支持更新 Apex 触发器的名称、对象、触发事件、状态等
- 删除功能:支持根据触发器 ID 删除 Apex 触发器
4. RESTful API 接口
- Apex 类接口(4 个):
POST /tooling/apex-class- 创建 Apex 类GET /tooling/apex-class/{id}- 查询 Apex 类详情PUT /tooling/apex-class- 更新 Apex 类DELETE /tooling/apex-class/{id}- 删除 Apex 类
- Apex 触发器接口(4 个):
POST /tooling/apex-trigger- 创建 Apex 触发器GET /tooling/apex-trigger/{id}- 查询 Apex 触发器详情PUT /tooling/apex-trigger- 更新 Apex 触发器DELETE /tooling/apex-trigger/{id}- 删除 Apex 触发器
5. 异常处理机制
ToolingConnectionException- Tooling 连接异常ApexClassException- Apex 类操作异常ApexTriggerException- Apex 触发器操作异常
6. 数据模型封装
- Domain 层(2 个):
ApexClass- Apex 类领域对象ApexTrigger- Apex 触发器领域对象
- DTO 层(6 个):
ApexClassDto- Apex 类数据传输对象ApexTriggerDto- Apex 触发器数据传输对象ApexClassCreateRequest- Apex 类创建请求ApexClassUpdateRequest- Apex 类更新请求ApexTriggerCreateRequest- Apex 触发器创建请求ApexTriggerUpdateRequest- Apex 触发器更新请求
- VO 层(2 个):
ApexClassVo- Apex 类视图对象ApexTriggerVo- Apex 触发器视图对象
7. 单元测试
ToolingConnectionFactoryTest- Tooling 连接工厂测试ApexClassManagerTest- Apex 类管理器测试ApexTriggerManagerTest- Apex 触发器管理器测试
新增文档
- 需求文档 - Apex 类与触发器基础管理需求
- 设计文档 - Apex 类与触发器基础管理设计
- 决策记录 - Tooling API 客户端代码生成方案
- 提示词文档 - Apex 类与触发器基础管理提示词
- 会话记录 - REQ-014-1 Apex 类与触发器基础管理会话记录
- 变更日志 - Apex 类与触发器基础管理变更日志
新增代码文件
Exception 层(3 个)
datai-salesforce-tooling/src/main/java/com/datai/tooling/exception/ToolingConnectionException.javadatai-salesforce-tooling/src/main/java/com/datai/tooling/exception/ApexClassException.javadatai-salesforce-tooling/src/main/java/com/datai/tooling/exception/ApexTriggerException.java
Model 层 - Domain(2 个)
datai-salesforce-tooling/src/main/java/com/datai/tooling/model/domain/ApexClass.javadatai-salesforce-tooling/src/main/java/com/datai/tooling/model/domain/ApexTrigger.java
Model 层 - DTO(6 个)
datai-salesforce-tooling/src/main/java/com/datai/tooling/model/dto/ApexClassDto.javadatai-salesforce-tooling/src/main/java/com/datai/tooling/model/dto/ApexTriggerDto.javadatai-salesforce-tooling/src/main/java/com/datai/tooling/model/dto/ApexClassCreateRequest.javadatai-salesforce-tooling/src/main/java/com/datai/tooling/model/dto/ApexClassUpdateRequest.javadatai-salesforce-tooling/src/main/java/com/datai/tooling/model/dto/ApexTriggerCreateRequest.javadatai-salesforce-tooling/src/main/java/com/datai/tooling/model/dto/ApexTriggerUpdateRequest.java
Model 层 - VO(2 个)
datai-salesforce-tooling/src/main/java/com/datai/tooling/model/vo/ApexClassVo.javadatai-salesforce-tooling/src/main/java/com/datai/tooling/model/vo/ApexTriggerVo.java
Factory 层(1 个)
datai-salesforce-tooling/src/main/java/com/datai/tooling/factory/impl/ToolingConnectionFactory.java
Manager 层(2 个)
datai-salesforce-tooling/src/main/java/com/datai/tooling/manager/ApexClassManager.javadatai-salesforce-tooling/src/main/java/com/datai/tooling/manager/ApexTriggerManager.java
Service 层(4 个)
datai-salesforce-tooling/src/main/java/com/datai/tooling/service/IApexClassService.javadatai-salesforce-tooling/src/main/java/com/datai/tooling/service/impl/ApexClassServiceImpl.javadatai-salesforce-tooling/src/main/java/com/datai/tooling/service/IApexTriggerService.javadatai-salesforce-tooling/src/main/java/com/datai/tooling/service/impl/ApexTriggerServiceImpl.java
Controller 层(2 个)
datai-salesforce-tooling/src/main/java/com/datai/tooling/controller/ApexClassController.javadatai-salesforce-tooling/src/main/java/com/datai/tooling/controller/ApexTriggerController.java
单元测试(3 个)
datai-salesforce-tooling/src/test/java/com/datai/tooling/factory/impl/ToolingConnectionFactoryTest.javadatai-salesforce-tooling/src/test/java/com/datai/tooling/manager/ApexClassManagerTest.javadatai-salesforce-tooling/src/test/java/com/datai/tooling/manager/ApexTriggerManagerTest.java
影响范围
模块级别
- 新增模块:
datai-salesforce-tooling - 影响模块:
datai-salesforce-integration(复用连接工厂和会话管理)
文件级别
- 新增文件:20 个代码文件
- 新增文档:6 个文档文件
功能级别
- 新增功能:Apex 类与触发器基础管理
- 新增接口:8 个 RESTful API 接口
- 新增异常:3 个自定义异常类