Skip to content

Commit

Permalink
ADD partner_brand
Browse files Browse the repository at this point in the history
  • Loading branch information
bealdav committed Apr 14, 2023
1 parent 95f9db5 commit a2625cd
Show file tree
Hide file tree
Showing 6 changed files with 93 additions and 0 deletions.
1 change: 1 addition & 0 deletions partner_brand/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
from . import models
16 changes: 16 additions & 0 deletions partner_brand/__manifest__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
{
"name": "Partner Brand Custom",
"summary": "Define registered mark in partner according brand settings",
"version": "16.0.1.0.0",
"author": "Akretion",
"development_status": "Alpha",
"category": "Product",
"website": "https://akretion.com",
"license": "AGPL-3",
"depends": [
"brand",
],
"data": [
"views/partner.xml",
],
}
1 change: 1 addition & 0 deletions partner_brand/models/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
from . import partner
15 changes: 15 additions & 0 deletions partner_brand/models/partner.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# © 2023 David BEAL @ Akretion
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).

from odoo import fields, models


class ResPartner(models.Model):
_inherit = "res.partner"

brand_id = fields.Many2one(comodel_name="res.brand")
brand_logo = fields.Image(
comodel_name="res.partner",
string="Brand logo",
related="brand_id.partner_id.image_128",
)
10 changes: 10 additions & 0 deletions partner_brand/readme/DESCRIPTION.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
Allow to set brand to partners allowing to group/filter partners by brand

A brand, here, could be Carrefour, Wallmart, etc.

It also display brand image in form view and flag for partner with brand in kanban

Other idea for this concept, but to implement in an other module, i.e. product_brand_pricelist :

- define a pricelist to the partner (brand partner)
- create a pricelist on each partner based on previous pricelist
50 changes: 50 additions & 0 deletions partner_brand/views/partner.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo>

<record id="view_partner_form" model="ir.ui.view">
<field name="model">res.partner</field>
<field name="inherit_id" ref="base.view_partner_form" />
<field name="arch" type="xml">
<field name="industry_id" position="after">
<field name="brand_id" attrs="{'invisible': [('is_company', '=', False)]}"/>
</field>
<field name="image_1920" position="before">
<field name="brand_logo" widget="image" class="oe_avatar" attrs="{'invisible': [('brand_logo', '=', False)]}"/>
</field>
</field>
</record>

<record id="view_partner_tree" model="ir.ui.view">
<field name="model">res.partner</field>
<field name="inherit_id" ref="base.view_partner_tree" />
<field name="arch" type="xml">
<field name="active" position="after">
<field name="brand_id" optional="hide"/>
</field>
</field>
</record>

<record id="view_res_partner_filter" model="ir.ui.view">
<field name="model">res.partner</field>
<field name="inherit_id" ref="base.view_res_partner_filter" />
<field name="arch" type="xml">
<xpath expr="//group" position="inside">
<filter name="group_brand" string="Brand" context="{'group_by': 'brand_id'}"/>
</xpath>
</field>
</record>

<record id="res_partner_kanban_view" model="ir.ui.view">
<field name="model">res.partner</field>
<field name="inherit_id" ref="base.res_partner_kanban_view" />
<field name="arch" type="xml">
<xpath expr="//div/div" position="before">
<div>
<field name="brand_logo" invisible="1"/>
<span title="This company is linked to a brand" attrs="{'invisible': [('brand_logo', '=', False)]}"&amp;nbsp;</span>
</div>
</xpath>
</field>
</record>

</odoo>

0 comments on commit a2625cd

Please sign in to comment.