mirror of
https://gitee.com/dromara/dax-pay.git
synced 2025-09-05 20:18:22 +00:00
65 lines
2.7 KiB
Plaintext
65 lines
2.7 KiB
Plaintext
@startuml
|
|
|
|
title 对账代码时序图-以支付宝对账为例
|
|
|
|
skinparam responseMessageBelowArrow true
|
|
|
|
actor 客户端 as Client
|
|
participant ReconcileService
|
|
participant ReconcileOrderService
|
|
participant ReconcileStrategy
|
|
participant AliPayReconcileService
|
|
participant ReconcileDiffService
|
|
participant ReconcileOrderManager
|
|
participant ReconcileContext
|
|
participant ReconcileDetailManager
|
|
participant ReconcileStrategyFactory
|
|
participant AliGateway as 支付宝网关
|
|
|
|
autonumber
|
|
Client -> ReconcileService: 发起对账请求
|
|
|
|
group 1. 创建对账订单
|
|
autonumber 1
|
|
ReconcileService -> ReconcileStrategyFactory: 构建对账策略
|
|
ReconcileService <- ReconcileStrategyFactory: 返回对账策略对象
|
|
ReconcileService -> ReconcileStrategy: 生成批次号
|
|
ReconcileService <- ReconcileStrategy: 返回批次号
|
|
ReconcileService -> ReconcileService: 创建对账订单
|
|
ReconcileService -> ReconcileOrderManager: 保存对账订单
|
|
ReconcileService <- ReconcileOrderManager: 返回对账订单
|
|
end
|
|
|
|
group 2. 下载对账单并进行保存
|
|
autonumber 1
|
|
ReconcileService -> ReconcileStrategyFactory: 构建对账策略
|
|
ReconcileService <- ReconcileStrategyFactory: 返回对账策略对象
|
|
ReconcileService -> ReconcileStrategy: 下载对账单, 并进行解析进行保存
|
|
ReconcileStrategy -> AliPayReconcileService: 发起对账单下载请求,获取对账单下载地址
|
|
AliPayReconcileService -> AliGateway: 发起对账单下载请求,获取对账单下载地址
|
|
AliPayReconcileService <- AliGateway: 返回对账单下载地址
|
|
AliPayReconcileService -> AliGateway: 下载对账单
|
|
AliPayReconcileService <- AliGateway: 返回对账单内容
|
|
AliPayReconcileService -> AliPayReconcileService: 解析对账单, 同时生成通用对账单记录
|
|
AliPayReconcileService --> ReconcileContext: 将解析后的通用对账单记录放到到上下文
|
|
ReconcileStrategy <- AliPayReconcileService: 处理结束
|
|
ReconcileService <- ReconcileStrategy: 处理结束
|
|
ReconcileService <- ReconcileContext: 获取通用对账单记录
|
|
ReconcileService --> reconcileDetailManager: 保存明细记录
|
|
end
|
|
|
|
group 3. 对账单比对
|
|
autonumber 1
|
|
ReconcileService -> ReconcileStrategyFactory: 构建对账策略
|
|
ReconcileService <- ReconcileStrategyFactory: 返回对账策略对象
|
|
ReconcileService <--> ReconcileStrategy: 初始对账策略类
|
|
ReconcileService <- ReconcileStrategy: 获取本地和网关订单数据
|
|
ReconcileService -> ReconcileService: 比对本地和网关订单差异
|
|
ReconcileService --> ReconcileDiffService: 保存差异记录
|
|
|
|
end
|
|
autonumber 2
|
|
Client <- ReconcileService: 返回对账结束
|
|
|
|
@enduml
|