Browse Source

[9.0][IMP] partner_sector: allow to search for Main sector and children.

pull/577/head
Lois Rilo 7 years ago
parent
commit
755e947968
  1. 1
      partner_sector/README.rst
  2. 2
      partner_sector/__openerp__.py
  3. 15
      partner_sector/models/res_partner.py
  4. 13
      partner_sector/models/res_partner_sector.py
  5. 1
      partner_sector/views/res_partner_sector_view.xml
  6. 1
      partner_sector/views/res_partner_view.xml

1
partner_sector/README.rst

@ -55,6 +55,7 @@ Contributors
* Javier Iniesta <javieria@antiun.com> * Javier Iniesta <javieria@antiun.com>
* Vicent Cubells <vicent.cubells@tecnativa.com> * Vicent Cubells <vicent.cubells@tecnativa.com>
* Pedro M. Baeza <pedro.baeza@tecnativa.com> * Pedro M. Baeza <pedro.baeza@tecnativa.com>
* Lois Rilo <lois.rilo@eficent.com>
Maintainer Maintainer
---------- ----------

2
partner_sector/__openerp__.py

@ -6,7 +6,7 @@
{ {
"name": "Partner Sector", "name": "Partner Sector",
"summary": "Add partner sectors", "summary": "Add partner sectors",
"version": "9.0.1.1.2",
"version": "9.0.1.2.0",
"category": "Customer Relationship Management", "category": "Customer Relationship Management",
"website": "http://www.tecnativa.com", "website": "http://www.tecnativa.com",
"author": "Tecnativa, Odoo Community Association (OCA)", "author": "Tecnativa, Odoo Community Association (OCA)",

15
partner_sector/models/res_partner.py

@ -9,12 +9,19 @@ from openerp import models, fields, api, exceptions, _
class ResPartner(models.Model): class ResPartner(models.Model):
_inherit = 'res.partner' _inherit = 'res.partner'
sector_id = fields.Many2one(comodel_name='res.partner.sector',
string='Main Sector')
sector_id = fields.Many2one(
comodel_name='res.partner.sector',
string='Main Sector',
)
sector_complete_name = fields.Char(
string="Main Sector Complete Name",
related="sector_id.complete_name",
readonly=True,
)
secondary_sector_ids = fields.Many2many( secondary_sector_ids = fields.Many2many(
comodel_name='res.partner.sector', string="Secondary Sectors", comodel_name='res.partner.sector', string="Secondary Sectors",
domain="[('id', '!=', sector_id)]")
domain="[('id', '!=', sector_id)]",
)
@api.constrains('sector_id', 'secondary_sector_ids') @api.constrains('sector_id', 'secondary_sector_ids')
def _check_sectors(self): def _check_sectors(self):

13
partner_sector/models/res_partner_sector.py

@ -23,6 +23,17 @@ class ResPartnerSector(models.Model):
string="Children") string="Children")
parent_left = fields.Integer('Parent Left', select=True) parent_left = fields.Integer('Parent Left', select=True)
parent_right = fields.Integer('Parent Right', select=True) parent_right = fields.Integer('Parent Right', select=True)
complete_name = fields.Char(
string="Complete Name",
compute='_compute_complete_name',
store=True,
)
@api.multi
@api.depends("name", "parent_id", "parent_id.name")
def _compute_complete_name(self):
for rec in self:
rec.complete_name = rec.display_name
@api.multi @api.multi
def name_get(self): def name_get(self):
@ -30,7 +41,7 @@ class ResPartnerSector(models.Model):
""" Return the list [cat.name, cat.parent_id.name, ...] """ """ Return the list [cat.name, cat.parent_id.name, ...] """
res = [] res = []
while cat: while cat:
res.append(cat.name)
res.append(cat.name or '/')
cat = cat.parent_id cat = cat.parent_id
return res return res

1
partner_sector/views/res_partner_sector_view.xml

@ -16,6 +16,7 @@
<field name="arch" type="xml"> <field name="arch" type="xml">
<tree string="Sectors" editable="top"> <tree string="Sectors" editable="top">
<field name="name"/> <field name="name"/>
<field name="complete_name"/>
<field name="parent_id"/> <field name="parent_id"/>
</tree> </tree>
</field> </field>

1
partner_sector/views/res_partner_view.xml

@ -36,6 +36,7 @@
<field name="inherit_id" ref="base.view_res_partner_filter"/> <field name="inherit_id" ref="base.view_res_partner_filter"/>
<field name="arch" type="xml"> <field name="arch" type="xml">
<field name="category_id" position="after"> <field name="category_id" position="after">
<field name="sector_complete_name"/>
<field name="sector_id" <field name="sector_id"
string="Sector" string="Sector"
filter_domain="['|',('sector_id','ilike',self), filter_domain="['|',('sector_id','ilike',self),

Loading…
Cancel
Save