From 94ffea8bbb162c775294c94b2fc777e143a6b3d7 Mon Sep 17 00:00:00 2001
From: Benjamin <benjamin@le-filament.com>
Date: Mon, 23 Mar 2020 20:54:47 +0100
Subject: [PATCH] =?UTF-8?q?[cgscop=20#178]=20ajout=20d'une=20contrainte=20?=
 =?UTF-8?q?sur=20la=20quantit=C3=A9=20:=208h=20par=20jour=20max?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 models/hr_timesheet.py | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/models/hr_timesheet.py b/models/hr_timesheet.py
index 789f5f9..eb79d8b 100644
--- a/models/hr_timesheet.py
+++ b/models/hr_timesheet.py
@@ -92,6 +92,20 @@ class ScopHrTimesheet(models.Model):
            fields.Datetime.now() > self.partner_id.ur_regional_convention_date:
             self.ur_regional_convention_id = self.partner_id.ur_regional_convention_id
 
+    # ------------------------------------------------------
+    # Contrains
+    # ------------------------------------------------------
+    @api.constrains('unit_amount')
+    def _check_hours(self):
+        for record in self:
+            lines = self.search([
+                ('date', '=', record.date),
+                ('employee_id', '=', record.employee_id.id)])
+            total = sum(lines.mapped('unit_amount'))
+            if total > 8:
+                raise ValidationError(
+                    "Vous ne pourvez imputer plus de 8h sur la même journée")
+
     # ------------------------------------------------------
     # Override ORM
     # ------------------------------------------------------
-- 
GitLab