# 金综流水多 logId 处理后端实施计划 ## 背景 金综 `dataChannelCode=JZL` 拉取链路可能在一次请求中返回多个 XML 文件对应的多个 `logId`。接入端如果只处理首个 `logId`,会导致同一证件号下后续金综 XML 文件未进入解析状态轮询、上传状态查询和流水明细落库。 ## 实施内容 - 将金综拉取响应处理从单个 `logId` 改为遍历 `response.data` 中全部非空 `logId`。 - 第一个 `logId` 复用拉取提交时创建的上传记录。 - 第二个及后续 `logId` 自动创建独立上传记录,避免多个 XML 的文件名、账号、解析状态相互覆盖。 - 每个 `logId` 独立执行解析状态轮询、文件状态查询、流水明细获取和落库。 - 继续沿用最新代码中的 `CallerContext`,确保流水平台调用仍写入外部接口日志。 - 单个 `logId` 失败只标记对应记录失败,不中断其余 `logId`;本次证件号任务至少一个 `logId` 成功即视为成功。 ## 验证计划 - 补充单元测试模拟金综返回 3 个 `logId`。 - 验证 3 个 `logId` 均调用解析状态轮询和流水明细查询。 - 验证后续 `logId` 会新增独立上传记录,并保留证件号、上传人和上传中状态。