0

我正在开发一个处理电子商务销售订单的应用程序。我们使用money-rails gem。

订单是从另一个系统导入的,该系统有时可能有部分美分的数字。例如:

Order Line Item
quantity = 5
unit price = 1.29
discount = 0.064

在我们的数据库中,我们的列是整数,金额以美分存储。不幸的是,当我们使用存储在数据库中的导入值计算行项目的小计时,我们最终会得到四舍五入的数字,因为整数列只存储整数。

在上面的示例中,我们将计算 5 x (129 - 6) 的小计,等于 6.15 美元,但实际上它应该是 5 x (129 - 6.4),等于 6.13 美元。

使用 money-rails gem 时,避免这些类型的舍入错误的最佳做法是什么?我们应该将列从整数转换为十进制吗?还是有其他更好的方法?

4

0 回答 0