我正在致力于一个客户可以获得贷款的项目,该项目将分成n 分期付款。多对多关联的设计模式,附加字段和部分满意
客户将付款付款。
class Instalment
has_and_belongs_to_many :payments
end
class Payment
has_and_belongs_to_many :instalments
end
他可以支付全部贷款或分期付款单,但这个想法是他能够买任何种类的数量的。
这意味着一些分期付款将被部分支付。
我不知道如何在代码中表达这一点。
例如,客户得到50美元的贷款,将分5次分期付款10美元。客户决定支付25美元两次。
Instalment
--------------
ID | quantity
1 | 10$
2 | 10$
3 | 10$
4 | 10$
5 | 10$
Payment
----------------------
ID | quantity
1 | 25$
2 | 25$
Instalments_Payments
----------------------
payment_id | instalment_id
1 | 1
1 | 2
1 | 3 # note that this instalment_id and next one
2 | 3 # are the same, but we don't know how much quantity it satisfied in each one.
2 | 4
2 | 5
我有两个想法,但我不喜欢任何人:
添加在Instalments_Payments表中的两个新领域。如果分期付款已全部付清,而其他付款已付完,则会标记。
Instalments_Payments
----------------------
payment_id | instalment_id | full_paid | paid
1 | 1 | true | 10$
1 | 2 | true | 10$
1 | 3 | false | 5$
2 | 3 | false | 5$
2 | 4 | true | 10$
2 | 5 | true | 10$
添加在付款has_many :partial_payments
我寻找这个问题的最好的办法的新模式PartialPayments。
在哪个表中? –
您的意思是我提出的关于创建full_paid和付费列的建议? –
@FranMartinez是的。这是常见的解决方案。 – knh190