請求書と支払いを追跡するシステムを設計する方法に少し苦労しています。現在、機能している 2 つのオブジェクト (Bill
とPayment
) がありますが、それらの間のアカウンティングを追跡する方法がわかりません。
基本的には、支払い済みの特定の請求書と、すべての会計処理後の合計残高を知る必要があるだけです。私はこれを2つの方法で行うことができると考えています:
1) 特定の請求書を特定の支払いにマッピングして、各トランザクションを追跡する別の会計テーブルを作成します。これにより、特定の請求書に残っている金額をデータベースで簡単に調べることができます。欠点は、新しいオブジェクトが作成されるたびにこのテーブルに新しいレコードを作成する必要があるため、複雑さが増しているように見えることです。
2)トランザクション履歴全体を調べて会計を行うことにより、特定の請求書に残っている金額をオンザフライで計算するロジックを書くだけにしてください。プラス面として、これは常に正しいことが保証されていますが、静的な値になるはずの値を取得するために同じ計算を何度も繰り返し行うのは、ちょっと間違っているようです。
過去にこのような課題に直面した人はいますか?もしそうなら、どのように解決しましたか? 私が見逃しているベストプラクティスはありますか?