处理数据库付款交易的最佳方法是什么?
以下是我提出的建议:
订单表
付款表
例如,如果Payments表中有两个来自OrderID-123的付款交易。
一个是拒绝,另一个是成功
如果有一行成功,则Orders.Paid将变为1
或者什么是更好的解决方案?
答案 0 :(得分:4)
根据我的经验,衰落和成功是不够的。在丰富多彩的用例中,您可能会在清算资金(例如电子支票),退款(由您制作),撤销(由客户/ api提供商制作),部分退款/撤销(例如狗的玩具等)之前成功付款。不是他的食物,在同一个顺序内),逆转退款/逆转。
更不用说订阅所固有的其他各种情况,例如:订阅升级和降级,订阅更改,取消,取消取消,锁定,以及没有。
毋庸置疑,如果您需要处理联盟付款,无用户发票,不同的结算/运输联系人,转销商等问题,问题就会变得更加棘手。
明确地说,确切的答案取决于您的具体要求,但我发现从一个满足T-ledger会计严格性的模型(即带有会计科目表的借方/贷方)开始,您几乎总是更好),然后朝着你的特定产品努力。