Skip to content

Commit

Permalink
ADD 16.0 partner_brand module
Browse files Browse the repository at this point in the history
  • Loading branch information
bealdav committed Apr 14, 2023
1 parent 95f9db5 commit 208d731
Show file tree
Hide file tree
Showing 9 changed files with 116 additions and 0 deletions.
Empty file added partner_brand/README.rst
Empty file.
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
17 changes: 17 additions & 0 deletions partner_brand/__manifest__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
{
"name": "Partner Brand Custom",
"summary": "Define registered mark in partners according to brand settings",
"version": "16.0.1.0.0",
"author": "Odoo Community Association (OCA), Akretion",
"development_status": "Alpha",
"category": "Product",
"maintainers": ["bealdav"],
"website": "https://github.com/OCA/brand",
"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
65 changes: 65 additions & 0 deletions partner_brand/views/partner.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
<?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>
1 change: 1 addition & 0 deletions setup/partner_brand/odoo/addons/partner_brand
6 changes: 6 additions & 0 deletions setup/partner_brand/setup.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
import setuptools

setuptools.setup(
setup_requires=['setuptools-odoo'],
odoo_addon=True,
)

0 comments on commit 208d731

Please sign in to comment.