finance - 我应该以正数还是负数存储退款记录?

标签 finance

我要求资深金融程序员提供最佳实践。

例如 PSUDO 代码:

class Transaction(Model):
    order = ForeignKey()
    amount = DecimalField()
    type = 'refund' or 'purchase'

如果以负数存储退款,那么我可以简单地运行 sum()在获得余额的所有交易中,数学运算变得有点原生。

如果以正数存储退款,那么像 purchase - refund = balance 这样的公式更人性化,我也不需要反转以在模板中显示正的退款金额。

我应该选择哪一个才能获得最大的好处和更少的陷阱?

最佳答案

一种方法是使用 amount将值保持为正值的字段和另一个字段,如 signedAmount保存它的签名版本。因此,当您想显示或记录它时,请使用 amount ,当您想将其包含在计算中时,您可以使用 signedAmount .

关于finance - 我应该以正数还是负数存储退款记录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30180230/

相关文章:

wpf - 在 WPF 工具包图表上隐藏周末

r - 在 R 中使用历史方法对组件 VaR 没有贡献

r - R 中的 Assets 负债表建模

finance - 设计个人理财应用程序

java.lang.错误: Invalid UTF-8 Encoding

Javascript - 查找平均价格(即四舍五入)的准确方法是什么?

.net - C++与虚拟机语言在高频财务中的性能

dataset - SEC EDGAR(加拿大的 SEDAR)数据库的国际同等版本?

azure - 有人可以通过无限 HTTP 循环增加 Azure Web App 的成本吗?