From 3abace5866fb8f335acbefa62eea994e444a9c2c Mon Sep 17 00:00:00 2001 From: hsilvant <hsilvant@scop.coop> Date: Thu, 16 Apr 2020 09:38:28 +0200 Subject: [PATCH] =?UTF-8?q?Radiation=20automatique=20si=20d=C3=A9c=C3=A8s?= =?UTF-8?q?=20de=20la=20soci=C3=A9t=C3=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- datas/scop_membership_reason_end_data.xml | 5 +++++ wizard/scop_deces_wizard.py | 19 +++++++++++++++++++ 2 files changed, 24 insertions(+) diff --git a/datas/scop_membership_reason_end_data.xml b/datas/scop_membership_reason_end_data.xml index f96d04d..1569981 100644 --- a/datas/scop_membership_reason_end_data.xml +++ b/datas/scop_membership_reason_end_data.xml @@ -16,5 +16,10 @@ <record id="reason_end_membership_4" model="scop.membership.reason.end"> <field name="name">Radiation demandée par le mouvement</field> </record> + + <record id="reason_end_membership_5" model="scop.membership.reason.end"> + <field name="name">Mort économique</field> + </record> + </data> </odoo> diff --git a/wizard/scop_deces_wizard.py b/wizard/scop_deces_wizard.py index 9208433..5a085d4 100644 --- a/wizard/scop_deces_wizard.py +++ b/wizard/scop_deces_wizard.py @@ -62,6 +62,25 @@ class ScopDecesWizard(models.TransientModel): 'dissolution_date': period.end, 'dissolution_reason_id': period.dissolution_reason_id.id }) + + #......................................... + # HS 08/04/2020 + # On procède à la radiation à la même date + #.......................................... + # Lecture du motif de radiation type décès + motif = self.env['scop.membership.reason.end'].search([ + ('name', '=', 'Mort économique')], limit=1) + + # Mise à jour des périodes d'adhésions + if motif: + adh_period = self.env['scop.membership.period'].search( + [('partner_id', '=', period.partner_id), ('end', '=', False)]) + for adh in adh_period: + adh.write({ + 'end': period.end, + 'end_reason_id': motif.id + }) + else: raise ValidationError( "Il n'existe pas de période à fermer.") -- GitLab