summaryrefslogtreecommitdiff
path: root/odoo/tools/float_utils.py
diff options
context:
space:
mode:
authorRaphael Collet <rco@odoo.com>2017-05-18 14:15:07 +0200
committerGitHub <noreply@github.com>2017-05-18 14:15:07 +0200
commitafef71d6b92a2741ab56b4d039eba1624a45197f (patch)
treed59b23578e69a6fda4bdb0d47ee4c07673c2051b /odoo/tools/float_utils.py
parent440177f2faa0e575ce613b6445d8299bceb355ab (diff)
[FIX] Always round monetary values in database (#17010)
Let `create` and `write` round monetary field values before sending them to the database. Pass the values to be written to `field.convert_to_column`, so that the currency can be retrieved from the values, and the value be rounded.
Diffstat (limited to 'odoo/tools/float_utils.py')
-rw-r--r--odoo/tools/float_utils.py18
1 files changed, 0 insertions, 18 deletions
diff --git a/odoo/tools/float_utils.py b/odoo/tools/float_utils.py
index fa150a1d902..9c37da07fe9 100644
--- a/odoo/tools/float_utils.py
+++ b/odoo/tools/float_utils.py
@@ -180,24 +180,6 @@ def float_split(value, precision_digits):
return int(units), int(cents)
-class float_precision(float):
- """ A class for float values that carry precision digits. This is a thin
- layer on top of ``float``, and the precision digits are not propagated
- to the result of arithmetic operations. This class is used when
- converting monetary values to cache, and for serializing them to the
- database.
- """
- __slots__ = ['precision_digits']
-
- def __new__(cls, value, precision_digits):
- obj = super(float_precision, cls).__new__(cls, value)
- obj.precision_digits = precision_digits
- return obj
-
- def float_repr(self):
- return _float_repr(self, self.precision_digits)
-
-
if __name__ == "__main__":
import time