Kul*_*kur 3 payment logging database-design
我有四个表如下:
费用
fees_id, interest, amount, total_amount, status_id, is_recurring recurring_status from_date to_date payment_id
F001 1.50 1000 1015 1 N NULL 2018-11-01 2018-11-01 1
F002 2.00 2000 1020 1 Y COMPLETE 2018-11-01 2018-11-20 2
Run Code Online (Sandbox Code Playgroud)
支付
id, amount, payment_date, txn_id, bnk_name, txn_status, pay_mode, dd_no, dd_date, chk_no, chk_date
1 1015 2018-11-11 TXN0001 SBI 1 1 NULL NULL NULL NULL
2 1020 2018-11-20 NULL NULL NULL 3 DNO001 2018-11-19 NULL NULL
Run Code Online (Sandbox Code Playgroud)
付费模式
id name display
------------------
1 ONLINE Y
2 CASH Y
3 DRAFT Y
4 CHECK Y
Run Code Online (Sandbox Code Playgroud)
支付状态
id status display
-------------------
1 PAID Y
2 UNPAID Y
Run Code Online (Sandbox Code Playgroud)
可以通过四种支付方式中的任意一种支付费用。
我有几个问题:
问:(在这种情况下)可以为所有支付模式使用一张支付表吗?还是有更好的选择?
是的,所有付款都应在一张付款表中。这有助于维持事务完整性约束。此外,它还会对您将来生成各种报告有所帮助
问:费用可以是定期的(每月支付,直到其定期状态完成)。我该如何处理这些付款?
您应该有另一个表来维护定期付款记录作为订阅表,并在记录的每个定期付款事件中将新条目插入付款表中。这样,一条订阅记录就会关联多个支付条目。
问:我是否需要存储每个支付响应(在线支付的情况下),无论成功、失败还是其他。如果是,我应该使用单独的表还是存储在文件中?
是的,您应该将付款响应存储在同一个付款表记录中。这将帮助您进行故障转移检测,并对审核日志提供重大帮助。
| 归档时间: |
|
| 查看次数: |
4884 次 |
| 最近记录: |