upgrade v16. configura automáticamente la categoría del website y el

ribbon del producto según configuraciones en la compañía cuando se
actualizan los campos en distribución.
This commit is contained in:
snt 2024-09-05 01:47:15 +02:00
parent 823589afb0
commit e102c0e517
11 changed files with 166 additions and 30 deletions

View file

@ -1,2 +1 @@
from . import models

View file

@ -1,36 +1,23 @@
{
'name': 'Product Retail',
'category': 'Product',
'summary': 'Gestiona productos en distribución / Venta a minoristas',
'summary': 'Gestiona productos en distribución.',
'version': "16.0.1.0.0",
'description': """
Gestiona productos en distribución / Venta a minoristas
==================================================
* Añade campo a product: En Distribución y margin de minoristas.
* Filtro de productos en distribución en las vistas de productos
ToDo:
* Configuración para elegir lista de precios a minoristas
* Los minoristas se configuran a mano con esa tarifa, público normal con la Tarifa Pública por efecto
* los productos con margen configurado se agregan en esa tarifa con el descuento marcado
* Impide la venta a minoristas de artículos que no están en distribución
* Filtro de productos en distribución en la vista de productos.
""",
'author': 'Criptomart',
'depends': [
'product',
],
'external_dependencies': {'python': [], 'bin': []},
'data': [
'views/product.xml',
],
'qweb': [],
'demo': [],
'installable': True,
'auto_install': False,
'application': False,
"post_load": None,
"pre_init_hook": None,
"post_init_hook": None,
"uninstall_hook": None,
}

View file

@ -1,14 +1,11 @@
# Copyright (C) 2022: Criptomart (https://criptomart.net)
# Copyright (C) 2022-2024: Criptomart (https://criptomart.net)
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
#import logging
from odoo import tools, models, fields, api, _
#_logger = logging.getLogger(__name__)
class ProductTemplate(models.Model):
_inherit = "product.template"
in_distribution = fields.Boolean('En distribución')
retail_margin = fields.Float('Margen aplicado a minoristas')
in_distribution = fields.Boolean('En distribución libros')
in_distribution_music = fields.Boolean('En distribución música')

View file

@ -10,18 +10,19 @@ License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). -->
<field name="inherit_id" ref="product.product_template_only_form_view"/>
<field name="arch" type="xml">
<field name="sale_ok" position="before">
<div>
<span>
<field name="in_distribution"/>
<label for="in_distribution" />
</div>
</span>
<span>
<field name="in_distribution_music"/>
<label for="in_distribution_music" />
</span>
</field>
<!-- <field name="list_price" position="after" attrs="{'invisible': [('in_distribution', '=', False)]}">
<field name="retail_margin" attrs="{'invisible': [('in_distribution', '=', False)]}"/>
</field> -->
</field>
</record>
<!--Filter for products in distribution -->
<record id="view_product_search_form_inherit_dsitribution" model="ir.ui.view">
<record id="view_product_search_form_inherit_distribution" model="ir.ui.view">
<field name="name">view.product.search.form.inherit.distribution</field>
<field name="model">product.template</field>
<field name="inherit_id" ref="product.product_template_search_view"/>
@ -29,8 +30,8 @@ License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). -->
<xpath expr="//filter[@name='services']" position="before">
<separator/>
<filter string="En Distribución"
name="products_dsitribution_filter"
domain="[('in_distribution', '=', True)]"
name="products_distribution_filter"
domain="['|',('in_distribution', '=', True),('in_distribution_music', '=', True)]"
help="Products sold to retailers."
icon="terp-project"
/>