From c132d4b33d206bac49c610e935b1d1a8293d262f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mois=C3=A9s=20L=C3=B3pez?= Date: Tue, 4 Apr 2017 10:04:04 -0500 Subject: [PATCH] [IMP] base_address_extended: Add new partner fields to company model This module adds some extra fields to the partner model, in order to be able to manage extended addresses. However, those extra fields were not present into the company model, thus making partner's addresses and company's addresses displaying somewhat inconsistent. This change takes those fields that were already present into the partner model, and adds corresponding fields into the company model and view, so addresses from both models are now shown the same way. Closes #16547 --- .../models/base_address_extended.py | 32 +++++++++++++++++++ .../views/base_address_extended.xml | 19 +++++++++++ 2 files changed, 51 insertions(+) diff --git a/addons/base_address_extended/models/base_address_extended.py b/addons/base_address_extended/models/base_address_extended.py index 566f2cb40f9..0fcfceca399 100644 --- a/addons/base_address_extended/models/base_address_extended.py +++ b/addons/base_address_extended/models/base_address_extended.py @@ -137,3 +137,35 @@ class Partner(models.Model): # /!\ Note that a write(vals) would cause a recursion since it would bypass the cache for k, v in vals.items(): partner[k] = v + + +class Company(models.Model): + _inherit = 'res.company' + + street_name = fields.Char('Street Name', compute='_compute_address', + inverse='_inverse_street_name') + street_number = fields.Char('House Number', compute='_compute_address', + inverse='_inverse_street_number') + street_number2 = fields.Char('Door Number', compute='_compute_address', + inverse='_inverse_street_number2') + + def _get_company_address_fields(self, partner): + address_fields = super(Company, self)._get_company_address_fields(partner) + address_fields.update({ + 'street_name': partner.street_name, + 'street_number': partner.street_number, + 'street_number2': partner.street_number2, + }) + return address_fields + + def _inverse_street_name(self): + for company in self: + company.partner_id.street_name = company.street_name + + def _inverse_street_number(self): + for company in self: + company.partner_id.street_number = company.street_number + + def _inverse_street_number2(self): + for company in self: + company.partner_id.street_number2 = company.street_number2 diff --git a/addons/base_address_extended/views/base_address_extended.xml b/addons/base_address_extended/views/base_address_extended.xml index dcd22b68f25..6fc3d098868 100644 --- a/addons/base_address_extended/views/base_address_extended.xml +++ b/addons/base_address_extended/views/base_address_extended.xml @@ -51,4 +51,23 @@ + + view_res_company_extended_form + res.company + + + + + +
+
+
+
+
+