Files
fluxent-app/packages/fluxent/AGENTS.md
T
2026-06-23 14:52:19 +08:00

37 lines
1.3 KiB
Markdown

# Fluxent 记账逻辑
## dc_flag 语义
`dc_flag` 表示**资金流向**(从用户角度),不反转:
- `DEBIT` = 资金流出(支出)
- `CREDIT` = 资金流入(收入)
## 账户类型与余额变化
`account_type` 决定余额如何变化:
| 账户类型 | DEBIT(支出) | CREDIT(收入) |
|----------|--------------|---------------|
| `ASSET`(资产) | 余额减少 | 余额增加 |
| `LIABILITY`(负债) | 负债减少(还款) | 负债增加(消费/借款) |
| `EQUITY`(权益) | 权益减少 | 权益增加 |
## 信用卡交易示例
| 交易 | 账户 | account_type | dc_flag | 余额变化 |
|------|------|-------------|---------|---------|
| 用信用卡买咖啡 ¥30 | 信用卡 | LIABILITY | DEBIT | 负债 +30 |
| 从储蓄卡还信用卡 ¥5000 | 储蓄卡 | ASSET | DEBIT | 余额 -5000 |
| 从储蓄卡还信用卡 ¥5000 | 信用卡 | LIABILITY | CREDIT | 负债 -5000 |
## 会计恒等式
同币种时校验:
- **CREDIT(收入)**: `posting_amt = txn_amt + surcharge_amt - comm_amt - disc_amt`
- **DEBIT(支出)**: `posting_amt = txn_amt + surcharge_amt + comm_amt - disc_amt`
## 金额/币种对校验
可选的金额/币种对(`posting_amt/ccy``comm_amt/ccy``surcharge_amt/ccy``disc_amt/ccy`)必须同时为 `None` 或同时有值。