From 037f409047b7e60ac843eaf27618f0fd8908ca27 Mon Sep 17 00:00:00 2001
From: Benjamin <benjamin@le-filament.com>
Date: Thu, 5 Mar 2020 18:25:26 +0100
Subject: [PATCH] =?UTF-8?q?[cgscop=20#129]=20n'autorise=20pas=20la=20suppr?=
 =?UTF-8?q?ession=20d'une=20ligne=20de=20temps=20soumise=20ou=20valid?=
 =?UTF-8?q?=C3=A9e?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 models/hr_timesheet.py | 16 +++++++++++++++-
 1 file changed, 15 insertions(+), 1 deletion(-)

diff --git a/models/hr_timesheet.py b/models/hr_timesheet.py
index aedc05c..04e190e 100644
--- a/models/hr_timesheet.py
+++ b/models/hr_timesheet.py
@@ -60,12 +60,26 @@ class ScopHrTimesheet(models.Model):
     def onchange_project_id(self):
         self.partner_id = self.project_id.partner_id
 
+    # ------------------------------------------------------
+    # Override ORM
+    # ------------------------------------------------------
+    @api.multi
+    def unlink(self):
+        for timesheet in self:
+            if timesheet.state in ['submit', 'valid']:
+                raise UserError('Vous ne pouvez pas supprimer une '
+                                'ligne de temps soumise ou validée')
+        super(ScopHrTimesheet, self).unlink()
+
     # ------------------------------------------------------
     # Actions
     # ------------------------------------------------------
     @api.multi
     def action_submit_timesheet_lines(self):
-        if any(time.state != 'draft' or time.sheet_id for time in self):
+        """
+            Crée une feuille de temps avec les lignes sélectionnées
+        """
+        if any(time.state != 'to_report' or time.sheet_id for time in self):
             raise UserError(
                 "Vous ne pouvez pas insérer 2 fois la même ligne !")
         if len(self.mapped('employee_id')) != 1:
-- 
GitLab