diff --git a/golem_member/models/golem_member.py b/golem_member/models/golem_member.py index e7d69d3..449d3a9 100644 --- a/golem_member/models/golem_member.py +++ b/golem_member/models/golem_member.py @@ -19,6 +19,8 @@ """ GOLEM Members """ import logging +from datetime import date, timedelta +from dateutil.relativedelta import relativedelta from odoo import models, fields, api, _ from odoo.exceptions import UserError, ValidationError _LOGGER = logging.getLogger(__name__) @@ -85,6 +87,15 @@ class ResPartner(models.Model): """ GOLEM Member partner adaptations """ _inherit = 'res.partner' + age = fields.Integer(compute='_compute_age', store=True) + + @api.depends('birthdate_date') + def _compute_age(self): + for contact in self: + if contact.birthdate_date: + age = relativedelta(date.today(), fields.Date.from_string(contact.birthdate_date)) + contact.age = age.years + @api.model def _get_default_nationality_id(self): return self.env.ref('base.main_company').country_id diff --git a/golem_member/views/res_partner_views.xml b/golem_member/views/res_partner_views.xml index 91a7b30..bf0f89e 100644 --- a/golem_member/views/res_partner_views.xml +++ b/golem_member/views/res_partner_views.xml @@ -48,6 +48,7 @@ along with this program. If not, see . position="after"> + @@ -90,6 +91,8 @@ along with this program. If not, see . + + . +