From d3cbd44f965ed65b54e4fd7fcb88956ea88c8ce4 Mon Sep 17 00:00:00 2001 From: Olga Marco Date: Wed, 17 Nov 2021 13:37:13 +0100 Subject: [PATCH] [IMP] agreement_legal: Add agreement list button --- agreement_legal/models/res_partner.py | 18 +++++++++++++++++- agreement_legal/views/res_partner.xml | 18 ++++++++++++------ 2 files changed, 29 insertions(+), 7 deletions(-) diff --git a/agreement_legal/models/res_partner.py b/agreement_legal/models/res_partner.py index 896c7b0ad..152ce90d4 100644 --- a/agreement_legal/models/res_partner.py +++ b/agreement_legal/models/res_partner.py @@ -1,10 +1,26 @@ # Copyright (C) 2018 - TODAY, Pavlov Media # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). -from odoo import fields, models +from odoo import api, fields, models class Partner(models.Model): _inherit = "res.partner" agreement_ids = fields.One2many("agreement", "partner_id", string="Agreements") + agreements_count = fields.Integer(compute="_compute_agreements_count") + + @api.depends("agreement_ids") + def _compute_agreements_count(self): + for record in self: + record.agreements_count = len(record.agreement_ids) + + def action_open_agreement(self): + self.ensure_one() + action = self.env.ref("agreement.agreement_action") + result = action.read()[0] + result["domain"] = [("partner_id", "=", self.id)] + result["context"] = { + "default_partner_id": self.id, + } + return result diff --git a/agreement_legal/views/res_partner.xml b/agreement_legal/views/res_partner.xml index 781245f91..40467369b 100644 --- a/agreement_legal/views/res_partner.xml +++ b/agreement_legal/views/res_partner.xml @@ -8,12 +8,18 @@ eval="[(4, ref('agreement_legal.group_agreement_user'))]" /> - - - - - - + +