From 439cb8c3ad8dde7b59ddf990707a9be3745b0033 Mon Sep 17 00:00:00 2001 From: Hugo Trentesaux <hugo@le-filament.com> Date: Thu, 5 Jun 2025 10:44:01 +0200 Subject: [PATCH] code segment et compteurs --- models/financial_contract_guarantee.py | 35 +++++++++++++++++++++ models/financial_contract_guarantee_line.py | 2 +- views/financial_contract_guarantee.xml | 5 +++ 3 files changed, 41 insertions(+), 1 deletion(-) diff --git a/models/financial_contract_guarantee.py b/models/financial_contract_guarantee.py index dcab765..bcad931 100644 --- a/models/financial_contract_guarantee.py +++ b/models/financial_contract_guarantee.py @@ -208,6 +208,41 @@ class FinancialContractGuarantee(models.Model): store=True, ) + # --- counters ---- + # TODO is there a less verbose way to do this? + commission_ids_count = fields.Integer( + compute="_compute_commission_ids_count", store=True + ) + @api.depends("commission_ids") + def _compute_commission_ids_count(self): + for g in self: + g.commission_ids_count = len(g.commission_ids) + + + line_ids_count = fields.Integer( + compute="_compute_line_ids_count", store=True + ) + @api.depends("line_ids") + def _compute_line_ids_count(self): + for g in self: + g.line_ids_count = len(g.line_ids) + + fmg_ids_count = fields.Integer( + compute="_compute_fmg_ids_count", store=True + ) + @api.depends("fmg_ids") + def _compute_fmg_ids_count(self): + for g in self: + g.fmg_ids_count = len(g.fmg_ids) + + social_share_ids_count = fields.Integer( + compute="_compute_social_share_ids_count", store=True + ) + @api.depends("social_share_ids") + def _compute_social_share_ids_count(self): + for g in self: + g.social_share_ids_count = len(g.social_share_ids) + # ------------------------------------------------------ # Constrains functions # ------------------------------------------------------ diff --git a/models/financial_contract_guarantee_line.py b/models/financial_contract_guarantee_line.py index ff1f6e0..4e82c2a 100644 --- a/models/financial_contract_guarantee_line.py +++ b/models/financial_contract_guarantee_line.py @@ -51,11 +51,11 @@ class FinancialContractGuaranteeLine(models.Model): # Company Data segment_code = fields.Char("Code Segment") + branch_code = fields.Char("Code branche") bdf_scoring = fields.Char("Cotation BDF") bdf_date = fields.Date("Date Cotation BDF") mcdo_scoring = fields.Char("Cotation MacDonough") mcdo_date = fields.Date("Date Cotation MacDonough") - branch_code = fields.Char("Code branche") # Invoice Data commission_rate = fields.Float("Taux de commission") commission_amount = fields.Monetary("Montant de commission") diff --git a/views/financial_contract_guarantee.xml b/views/financial_contract_guarantee.xml index 44ed747..381ef29 100644 --- a/views/financial_contract_guarantee.xml +++ b/views/financial_contract_guarantee.xml @@ -31,6 +31,10 @@ <!-- <field name="fmg_paid" optional="hide"/> --> <field name="remaining_capital" optional="hide"/> <field name="loan_duration" optional="hide"/> + <field name="line_ids_count" optional="hide"/> + <field name="commission_ids_count" optional="hide"/> + <field name="social_share_ids_count" optional="hide"/> + <field name="fmg_ids_count" optional="hide"/> </list> </field> </record> @@ -136,6 +140,7 @@ </page> <!-- parts sociales --> <page name="social_share" string="Parts Sociales" invisible="state in ['init', 'offer', 'cancel']"> + <field name="social_share_ids_count"/> <field name="social_share_ids"> <list create="0" edit="0" delete="0"> <field name="payment_date" /> -- GitLab