diff --git a/models/scop_partner_staff.py b/models/scop_partner_staff.py index abee3fa46ff4d8321294c78ca12be8fc01fbbca9..79972136f49f6e223d42b1c69397f5f7dee8ed75 100644 --- a/models/scop_partner_staff.py +++ b/models/scop_partner_staff.py @@ -72,3 +72,19 @@ class ScopPartnerStaff(models.Model): if record.staff_count == 0 and record.type_entry not in ('questionnaire', 'questionnaire_inscription'): raise ValidationError( "L'effectif renseigné doit être supérieur à 0.") + + @api.constrains('effective_date') + def _check_effective_date(self): + """ + Interdit la création de deux lignes à une même date + pour un même partenaire sauf pour LM + """ + for record in self: + doublon = self.search([ + ('partner_id', '=', record.partner_id.id), + ('effective_date', '=', record.effective_date) + ]) + if (len(doublon) > 1 + and record.type_entry not in ('questionnaire', 'questionnaire_inscription')): + raise ValidationError( + "Vous ne pouvez pas créer 2 ajustements à la même date.")