我正在为如何设计一个系统来跟踪账单和付款而苦苦挣扎。我目前有两个功能对象 (Bill
和Payment
),但无法确定跟踪它们之间会计的方法。
从根本上说,我只需要知道哪些具体的账单已经付清,以及所有会计之后的总余额。我认为我可以通过两种方式做到这一点:
1)建立一个单独的会计表,我在其中跟踪每笔交易,将特定的账单映射到特定的付款。这将使我可以轻松地在数据库中查找特定账单上的剩余金额。缺点是它似乎增加了很多复杂性,因为每当创建新对象时,我都需要在此表中创建新记录。
2) 尝试编写逻辑,通过查看整个交易历史并进行会计处理,即时计算特定账单上剩余的金额。从好的方面来说,这保证始终是正确的,但是继续一遍又一遍地进行相同的计算以得到应该是静态值的值似乎是错误的。
过去有没有人遇到过这样的挑战,如果有,您是如何解决的?是否有一些我只是缺少的最佳实践?