【发布时间】:2017-06-14 01:59:51
【问题描述】:
我有一张 Invoice 和 InvoiceItems 表,我将自己处理付款。客户可以用不同的货币支付,但我销售的服务价格是单一货币,比如欧元。或者至少目前是这样。 我的问题是:
a) 我是否应该再创建一个表 InvoicePayments,我将在其中存储以哪种货币进行付款的信息作为 currency_id 字段
b) 还是应该将currency_id 字段保留在发票表中?
在 #a 的情况下,每次客户改变他们想要支付的货币的想法时,我都会在 InvoicePayments 中生成新记录,同时在 Invoice 中保留一条记录
在 #b 的情况下,每当客户改变他们想要支付的货币的想法时,我都会在 Invoice 中生成新记录。
哪个更好?对我来说,它们或多或少是一样的。但是....也许有些事情我还不知道。
请不要说“这取决于你需要什么”这句话——一切都取决于我的需要。
【问题讨论】:
-
如果您将
Invoices保留为您的参考货币(欧元),您将获得最大的灵活性,并让InvoicePayments处理货币汇率并获得实际的付款 详细信息。此外,如果需要,发票甚至可以拆分为不同的付款。 -
@joanolo,谢谢,很有帮助。
标签: database postgresql database-design payment payment-processing