[IMP] agreement_legal: Add agreement list button

This commit is contained in:
Olga Marco
2021-11-17 13:37:13 +01:00
parent 7987bfda41
commit d3cbd44f96
2 changed files with 29 additions and 7 deletions

View File

@@ -1,10 +1,26 @@
# Copyright (C) 2018 - TODAY, Pavlov Media # Copyright (C) 2018 - TODAY, Pavlov Media
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). # 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): class Partner(models.Model):
_inherit = "res.partner" _inherit = "res.partner"
agreement_ids = fields.One2many("agreement", "partner_id", string="Agreements") 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

View File

@@ -8,12 +8,18 @@
eval="[(4, ref('agreement_legal.group_agreement_user'))]" eval="[(4, ref('agreement_legal.group_agreement_user'))]"
/> />
<field name="arch" type="xml"> <field name="arch" type="xml">
<xpath expr="//page[@name='internal_notes']" position="after"> <xpath expr="//div[@name='button_box']" position="inside">
<page name="agreement" string="Agreements"> <button
<group> name="action_open_agreement"
<field name="agreement_ids" nolabel="1" /> type="object"
</group> icon="fa-file-archive-o"
</page> >
<field
name="agreements_count"
string="Agreements"
widget="statinfo"
/>
</button>
</xpath> </xpath>
</field> </field>
</record> </record>