[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
This commit is contained in:
@@ -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
|
||||
|
||||
@@ -51,4 +51,23 @@
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record id="view_res_company_extended_form" model="ir.ui.view">
|
||||
<field name="name">view_res_company_extended_form</field>
|
||||
<field name="model">res.company</field>
|
||||
<field name="inherit_id" ref="base.view_company_form"/>
|
||||
<field name="arch" type="xml">
|
||||
<xpath expr="//field[@name='street']" position="replace">
|
||||
<field name="street" invisible="1"/>
|
||||
<field name="street_name" placeholder="Street Name..."/>
|
||||
<div class="o_row">
|
||||
<label for="street_number" class="oe_edit_only"/>
|
||||
<span> </span>
|
||||
<field name="street_number"/>
|
||||
<label for="street_number2" class="oe_edit_only"/>
|
||||
<field name="street_number2"/>
|
||||
</div>
|
||||
</xpath>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
</odoo>
|
||||
|
||||
Reference in New Issue
Block a user