From 185768805fcf032b5ae2182d9fa7ed3074e316c6 Mon Sep 17 00:00:00 2001
From: jordan <jordan@le-filament.com>
Date: Wed, 24 Feb 2021 11:29:45 +0100
Subject: [PATCH]  [add] function to round float to closest multiple

---
 models/scop_cotisation.py | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

diff --git a/models/scop_cotisation.py b/models/scop_cotisation.py
index 0af48e4..20ebceb 100644
--- a/models/scop_cotisation.py
+++ b/models/scop_cotisation.py
@@ -120,3 +120,18 @@ class ScopCotisation(models.AbstractModel):
             ('end', '>', date(self.year, 1, 1))
         ]).mapped('partner_id')
         return members
+
+    def round_to_closest_multiple(self, float_to_round, multiple):
+        """
+        :param float_to_round:
+        :param multiple:
+        :return: closest_multiple
+        """
+        small_multiple = (float_to_round // multiple) * multiple
+        large_multiple = small_multiple + multiple
+
+        # Return the closest of two
+        if abs(float_to_round - small_multiple) < large_multiple:
+            return small_multiple
+        else:
+            return large_multiple
-- 
GitLab