summaryrefslogtreecommitdiff
path: root/addons
diff options
context:
space:
mode:
authorNicolas Martinelli <nim@odoo.com>2020-02-06 09:28:32 +0000
committerNicolas Martinelli <nim@odoo.com>2020-02-07 09:55:59 +0000
commite8a580f3b722af9c4f37ed199a5ccc4d5c0d7ee4 (patch)
tree4849b9865db49fb257cc468121c283a4553dc4e4 /addons
parente77015011c90c377fa2851bf2ae69ccc173d6dcf (diff)
[FIX] point_of_sale: round prices
- Activate 'Round Globally' - Create a 21 % tax included in price - Create a product costing 21.5 - Add the product in a pos order, make the payment The `price_subtotal` is saved as `17.768595`, while it should be `17.77`. When these amounts are added in [1] (coming from [2]), it can lead to an inconsistency in the final computation, preventing the closing because of an unbalanced journal entry. Actually, the total and the subtotal must always be rounded following the currency precision, as done in [3] and [4]. It was probably not causing an issue before 13.0 since the creation of the journal entry from the POS was different. [1] https://github.com/odoo/odoo/blob/b22935caa3df824bc56a0828da9bee921bca5a5b/addons/point_of_sale/models/pos_session.py#L381 [2] https://github.com/odoo/odoo/blob/b22935caa3df824bc56a0828da9bee921bca5a5b/addons/point_of_sale/models/pos_session.py#L557 [3] https://github.com/odoo/odoo/blob/b22935caa3df824bc56a0828da9bee921bca5a5b/addons/account/models/account.py#L1654 [4] https://github.com/odoo/odoo/blob/b22935caa3df824bc56a0828da9bee921bca5a5b/addons/account/models/account.py#L1740 opw-2181486 closes odoo/odoo#44834 X-original-commit: 0896afdc814937621fe6323bf16d461582207217 Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
Diffstat (limited to 'addons')
-rw-r--r--addons/point_of_sale/static/src/js/models.js4
1 files changed, 2 insertions, 2 deletions
diff --git a/addons/point_of_sale/static/src/js/models.js b/addons/point_of_sale/static/src/js/models.js
index f5e4b079808..51925afd6d7 100644
--- a/addons/point_of_sale/static/src/js/models.js
+++ b/addons/point_of_sale/static/src/js/models.js
@@ -1998,8 +1998,8 @@ exports.Orderline = Backbone.Model.extend({
return {
'taxes': taxes_vals,
- 'total_excluded': sign * round_pr(total_excluded, currency_rounding),
- 'total_included': sign * round_pr(total_included, currency_rounding),
+ 'total_excluded': sign * round_pr(total_excluded, this.pos.currency.rounding),
+ 'total_included': sign * round_pr(total_included, this.pos.currency.rounding),
}
},
get_all_prices: function(){