From 3b68173f98581d8df5894e9557d9dc6c6ceb30ba Mon Sep 17 00:00:00 2001 From: Juliana <juliana@le-filament.com> Date: Wed, 9 Mar 2022 14:35:35 +0100 Subject: [PATCH] [ADD]Add field for invoicing --- models/acc_operation.py | 29 ++++++++++++++++++++++++++++- views/acc_operation_views.xml | 9 +++++++-- 2 files changed, 35 insertions(+), 3 deletions(-) diff --git a/models/acc_operation.py b/models/acc_operation.py index f37c250..494b816 100644 --- a/models/acc_operation.py +++ b/models/acc_operation.py @@ -13,7 +13,12 @@ class AccOperation(models.Model): # ------------------------------------------------------ # Fields declaration # ------------------------------------------------------ - is_account_active = fields.Boolean("Facturation activée") + is_account_active = fields.Boolean( + "Facturation activée", compute="_compute_is_account_active", store=True + ) + is_surplus_active = fields.Boolean( + "Facturation Surplus activée", compute="_compute_is_surplus_active", store=True + ) acc_sale_price_ids = fields.One2many("acc.sale.price", "acc_operation_id") acc_sale_price_surplus_ids = fields.One2many( "acc.sale.price.buyer", "acc_operation_id" @@ -54,6 +59,28 @@ class AccOperation(models.Model): for res in self: res.acc_account_count = len(res.acc_account_ids) + @api.depends("acc_injection_ids", "acc_injection_ids.is_account_auto_activate") + def _compute_is_account_active(self): + for res in self: + count_ids = res.acc_injection_ids.filtered( + lambda r: r.is_account_auto_activate is True + ) + if count_ids: + res.is_account_active = True + else: + res.is_account_active = False + + @api.depends("acc_injection_ids", "acc_injection_ids.is_account_surplus_activate") + def _compute_is_surplus_active(self): + for res in self: + count_ids = res.acc_injection_ids.filtered( + lambda r: r.is_account_surplus_activate is True + ) + if count_ids: + res.is_surplus_active = True + else: + res.is_surplus_active = False + # ------------------------------------------------------ # Onchange / Constraints # ------------------------------------------------------ diff --git a/views/acc_operation_views.xml b/views/acc_operation_views.xml index dae2b05..c6602d2 100644 --- a/views/acc_operation_views.xml +++ b/views/acc_operation_views.xml @@ -44,7 +44,12 @@ </div> <notebook position="before"> <group> - <field name="is_account_active" /> + <group> + <field name="is_account_active" widget="boolean_toggle" /> + </group> + <group> + <field name="is_surplus_active" widget="boolean_toggle" /> + </group> </group> </notebook> <notebook position="inside"> @@ -129,7 +134,7 @@ <page string="Facturation Surplus" name="account" - attrs="{'invisible': [('is_account_active', '=', False)]}" + attrs="{'invisible': [('is_surplus_active', '=', False)]}" > <field name="acc_account_surplus_ids" -- GitLab