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