This commit is contained in:
@@ -40,45 +40,45 @@ type FinanceFilter struct {
|
||||
|
||||
// FinanceTimelinePage 是资金多源投影的稳定分页结果。
|
||||
type FinanceTimelinePage struct {
|
||||
Total int64 `json:"total"`
|
||||
Page int `json:"page"`
|
||||
PageSize int `json:"page_size"`
|
||||
Items []FinanceTimelineNode `json:"items"`
|
||||
Retention retentionquery.Info `json:"retention"`
|
||||
Total int64 `json:"total" description:"关联资金事实总数"`
|
||||
Page int `json:"page" description:"当前页码"`
|
||||
PageSize int `json:"page_size" description:"每页数量"`
|
||||
Items []FinanceTimelineNode `json:"items" description:"按发生时间稳定倒序的资金事实节点"`
|
||||
Retention retentionquery.Info `json:"retention" description:"在线查询留存边界"`
|
||||
}
|
||||
|
||||
// FinanceTimelineNode 是明确事实来源和金额权威的资金时间线节点。
|
||||
type FinanceTimelineNode struct {
|
||||
RecordSource string `json:"record_source"`
|
||||
NodeID string `json:"node_id"`
|
||||
OccurredAt time.Time `json:"occurred_at"`
|
||||
Code string `json:"code"`
|
||||
Title string `json:"title"`
|
||||
Result string `json:"result"`
|
||||
ResultName string `json:"result_name"`
|
||||
Amount *int64 `json:"amount"`
|
||||
BalanceBefore *int64 `json:"balance_before"`
|
||||
BalanceAfter *int64 `json:"balance_after"`
|
||||
Currency string `json:"currency"`
|
||||
ShopID *uint `json:"shop_id"`
|
||||
Wallet *FinanceWalletRef `json:"wallet"`
|
||||
AmountAuthority FinanceAmountAuthority `json:"amount_authority"`
|
||||
Facts map[string]any `json:"facts"`
|
||||
InvestigationRefs InvestigationRefs `json:"investigation_refs"`
|
||||
RecordSource string `json:"record_source" enum:"audit_event,domain_ledger_ref,agent_wallet_transaction,asset_wallet_transaction,agent_wallet_reservation,order,payment,refund,agent_recharge,recharge_order,commission_record,commission_withdrawal,approval_instance" description:"资金事实来源稳定编码"`
|
||||
NodeID string `json:"node_id" description:"该事实来源内的稳定节点ID"`
|
||||
OccurredAt time.Time `json:"occurred_at" description:"资金事实发生时间"`
|
||||
Code string `json:"code" description:"来源内稳定业务动作或状态编码"`
|
||||
Title string `json:"title" description:"code对应的中文展示名称"`
|
||||
Result string `json:"result" description:"来源内原始结果或状态编码"`
|
||||
ResultName string `json:"result_name" description:"result对应的中文展示名称"`
|
||||
Amount *int64 `json:"amount" description:"本节点金额,单位分;为空表示该节点不承载金额"`
|
||||
BalanceBefore *int64 `json:"balance_before" description:"变更前余额,单位分"`
|
||||
BalanceAfter *int64 `json:"balance_after" description:"变更后余额,单位分"`
|
||||
Currency string `json:"currency" description:"币种编码,人民币为CNY"`
|
||||
ShopID *uint `json:"shop_id" description:"关联店铺ID"`
|
||||
Wallet *FinanceWalletRef `json:"wallet" description:"关联钱包稳定引用"`
|
||||
AmountAuthority FinanceAmountAuthority `json:"amount_authority" description:"金额是否权威及权威字段来源"`
|
||||
Facts map[string]any `json:"facts" description:"该事实来源的安全结构化业务字段"`
|
||||
InvestigationRefs InvestigationRefs `json:"investigation_refs" description:"可继续跳转的稳定调查引用"`
|
||||
}
|
||||
|
||||
// FinanceWalletRef 是资金节点关联的钱包稳定引用。
|
||||
type FinanceWalletRef struct {
|
||||
ResourceType string `json:"resource_type"`
|
||||
WalletID uint `json:"wallet_id"`
|
||||
ResourceType string `json:"resource_type" enum:"agent_wallet,asset_wallet" description:"钱包资源类型"`
|
||||
WalletID uint `json:"wallet_id" description:"钱包内部稳定ID,可作为finance/timeline的wallet_id"`
|
||||
}
|
||||
|
||||
// FinanceAmountAuthority 说明当前金额是否为业务权威及其字段来源。
|
||||
type FinanceAmountAuthority struct {
|
||||
Authoritative bool `json:"authoritative"`
|
||||
Table string `json:"table"`
|
||||
Field string `json:"field"`
|
||||
ConflictRule string `json:"conflict_rule"`
|
||||
Authoritative bool `json:"authoritative" description:"当前amount或余额是否来自业务权威表"`
|
||||
Table string `json:"table" description:"权威金额所在业务表;非权威节点可为空"`
|
||||
Field string `json:"field" description:"权威金额所在字段;非权威节点可为空"`
|
||||
ConflictRule string `json:"conflict_rule" description:"多来源冲突时的取值规则说明"`
|
||||
}
|
||||
|
||||
type financeRefs struct {
|
||||
|
||||
Reference in New Issue
Block a user