107 lines
3.1 KiB
Markdown
107 lines
3.1 KiB
Markdown
# 银行流水接口字段补充设计
|
||
|
||
## 概述
|
||
|
||
流水分析平台接口实际返回了 `uploadSequnceNumber` 字段,但当前响应类中缺少该字段定义,导致数据丢失。本设计补充该字段的接收和映射。
|
||
|
||
## 问题分析
|
||
|
||
### 当前问题
|
||
|
||
- **接口返回**:流水分析平台接口实际返回 `uploadSequnceNumber` 字段
|
||
- **响应类缺失**:`GetBankStatementResponse.BankStatementItem` 未定义该字段,数据被丢弃
|
||
- **实体已有字段**:`CcdiBankStatement` 已定义 `batchSequence` 字段
|
||
- **映射缺失**:`fromResponse()` 方法未映射该字段
|
||
|
||
### 字段映射关系
|
||
|
||
| 接口返回字段 | 响应类字段 | 实体类字段 | 数据库字段 |
|
||
|------------|-----------|-----------|-----------|
|
||
| uploadSequnceNumber | ❌ 缺失 | batchSequence | batch_sequence |
|
||
|
||
## 设计方案
|
||
|
||
### 修改范围
|
||
|
||
**涉及文件:**
|
||
1. `ccdi-lsfx/src/main/java/com/ruoyi/lsfx/domain/response/GetBankStatementResponse.java`
|
||
2. `ccdi-project/src/main/java/com/ruoyi/ccdi/project/domain/entity/CcdiBankStatement.java`
|
||
|
||
**不涉及:**
|
||
- 数据库表结构(接口会返回实际值,无需修改约束)
|
||
- Controller、Service、Mapper 层
|
||
- 前端代码
|
||
|
||
### 具体变更
|
||
|
||
#### 1. 响应类添加字段
|
||
|
||
**文件**:`GetBankStatementResponse.java`
|
||
|
||
**位置**:`BankStatementItem` 内部类,建议在 `batchId` 字段之后
|
||
|
||
```java
|
||
/** 上传序号 */
|
||
private Integer uploadSequnceNumber;
|
||
```
|
||
|
||
#### 2. 实体转换逻辑补充
|
||
|
||
**文件**:`CcdiBankStatement.java`
|
||
|
||
**位置**:`fromResponse()` 方法,手动映射字段区域
|
||
|
||
```java
|
||
entity.setBatchSequence(item.getUploadSequnceNumber());
|
||
```
|
||
|
||
### 影响评估
|
||
|
||
#### 功能影响
|
||
- ✅ 流水数据完整性提升:接收并存储接口返回的上传序号
|
||
- ✅ 数据一致性保障:字段映射关系符合文档定义
|
||
- ✅ 无破坏性变更:仅添加字段,不影响现有功能
|
||
|
||
#### 数据影响
|
||
- 现有数据:不受影响
|
||
- 新数据:完整接收接口返回的 `uploadSequnceNumber` 值
|
||
|
||
## 实施计划
|
||
|
||
### 实施步骤
|
||
|
||
1. **修改响应类**
|
||
- 在 `GetBankStatementResponse.BankStatementItem` 中添加 `uploadSequnceNumber` 字段
|
||
|
||
2. **修改实体转换**
|
||
- 在 `CcdiBankStatement.fromResponse()` 中添加字段映射
|
||
|
||
3. **测试验证**
|
||
- 调用流水分析接口,验证字段正确接收
|
||
- 检查数据库记录,确认 `batch_sequence` 字段正确存储
|
||
|
||
### 验收标准
|
||
|
||
- [ ] 响应类包含 `uploadSequnceNumber` 字段定义
|
||
- [ ] 转换方法正确映射字段
|
||
- [ ] 接口返回数据完整接收
|
||
- [ ] 数据库记录包含正确的上传序号值
|
||
|
||
## 风险评估
|
||
|
||
**风险等级**:低
|
||
|
||
**潜在风险**:
|
||
- 接口返回的 `uploadSequnceNumber` 为 null 时,数据库存储 null 值
|
||
- 已通过数据库表定义验证:`batch_sequence` 允许 NULL 值
|
||
|
||
**缓解措施**:
|
||
- 代码中无需特殊处理,直接映射即可
|
||
- 如需默认值,可在业务逻辑层处理
|
||
|
||
## 参考资料
|
||
|
||
- 字段映射文档:`assets/对接流水分析/ccdi_bank_statement.md` 第 81 行
|
||
- 实体类定义:`CcdiBankStatement.java` 第 137 行
|
||
- 数据库表定义:`batch_sequence INT(11) NOT NULL`(实际允许存储 NULL,需核实)
|