gpt4 book ai didi

logging - 支付系统的数据库设计

转载 作者:行者123 更新时间:2023-12-05 03:04:01 27 4
gpt4 key购买 nike

我有如下四个表:

费用

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

付款

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

PAY_MODES

id  name   display
------------------
1 ONLINE Y
2 CASH Y
3 DRAFT Y
4 CHECK Y

PAYMENT_STATUS

id  status  display
-------------------
1 PAID Y
2 UNPAID Y

费用可以通过四种支付方式中的任意一种支付。

我有几个问题:

  • (在这种情况下)为所有支付模式设置一个支付表是否可以,或者是否有更好的选择?
  • 费用可以重复出现(每月支付一次,直到完成重复出现的状态)。我该如何处理这些付款?
  • 我是否需要存储每个支付响应(在线支付的情况下),无论是成功、失败还是其他。如果是,我应该使用单独的表还是存储在文件中?

最佳答案

问题:(在这种情况下)为所有支付模式设置一个支付表是否可以,或者是否有更好的选择?

Yes, all the payment should be in one Payment Table. This helps to maintain the transactional integrity constraint. Also, it will helpful for you in future while generating various reports

Que:费用可以重复(每月支付一次,直到完成重复状态)。我该如何处理这些付款?

You should have another table for maintaining the recurring payments record as Subscription table and at every recurring payment event of a record insert new entry into payment table. So, One subscription record will be related to multiple payment entries.

问题:我是否需要存储每个支付响应(在线支付的情况下),无论是成功、失败还是其他。如果是,我应该使用单独的表还是存储在文件中?

Yes, you should store the payment response in the same payment table record. This will help you out in the failover detection as well as major help in Audit Log.

关于logging - 支付系统的数据库设计,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53293775/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com