From f4a34b77e39e0dcc84418762f0a199c1d2e833f5 Mon Sep 17 00:00:00 2001 From: Benjamin <benjamin@le-filament.com> Date: Tue, 15 Dec 2020 18:22:53 +0100 Subject: [PATCH] [fix] duplication error ur_regional_convention_id and ur_financial_system_id --- models/calendar.py | 34 +++++++++++++++++++++------------- 1 file changed, 21 insertions(+), 13 deletions(-) diff --git a/models/calendar.py b/models/calendar.py index bafa4e3..a32ad11 100644 --- a/models/calendar.py +++ b/models/calendar.py @@ -178,6 +178,7 @@ class CGScopCalendar(models.Model): @api.onchange('coop_id') def _onchange_coop_id(self): # affiche l'adresse de la coop sur le RDV + context = self.env.context address = '' if self.coop_id.street: address += self.coop_id.street + '\n' @@ -190,19 +191,22 @@ class CGScopCalendar(models.Model): if self.coop_id.city: address += self.coop_id.city self.location = address - # affiche le Dispositif Financier par défaut sur le RDV - # si il n'y a pas de date limite du dispositif - # ou si la date du RDV est inférieure à la date limite du dispositif - if not self.coop_id.ur_financial_system_date or \ - fields.Date.to_date(self.start) <= self.coop_id.ur_financial_system_date: - self.ur_financial_system_id = self.coop_id.ur_financial_system_id - # affiche la Convention par défaut sur le RDV - # si il n'y a pas de date limite de la convention - # ou si la date du RDV est inférieure à la date limite de la convention - if not self.coop_id.ur_regional_convention_date or \ - fields.Date.to_date(self.start) <= self.coop_id.ur_regional_convention_date: - self.ur_regional_convention_id = self.coop_id.\ - ur_regional_convention_id + + # changement dispositifs si différent de action dupliquer + if not context.get('duplicate'): + # affiche le Dispositif Financier par défaut sur le RDV + # si il n'y a pas de date limite du dispositif + # ou si la date du RDV est inférieure à la date limite du dispositif + if not self.coop_id.ur_financial_system_date or \ + fields.Date.to_date(self.start) <= self.coop_id.ur_financial_system_date: + self.ur_financial_system_id = self.coop_id.ur_financial_system_id + # affiche la Convention par défaut sur le RDV + # si il n'y a pas de date limite de la convention + # ou si la date du RDV est inférieure à la date limite de la convention + if not self.coop_id.ur_regional_convention_date or \ + fields.Date.to_date(self.start) <= self.coop_id.ur_regional_convention_date: + self.ur_regional_convention_id = self.coop_id.\ + ur_regional_convention_id # ------------------------------------------------------ # Contrains @@ -372,7 +376,11 @@ class CGScopCalendar(models.Model): 'default_stop': event.stop, 'default_allday': event.allday, 'default_type': event.type, + 'default_format': event.format, + 'default_ur_id': event.ur_id.id, 'default_ur_financial_system_id': event.ur_financial_system_id.id, + 'default_ur_regional_convention_id': event.ur_regional_convention_id.id, + 'duplicate': True }, } -- GitLab