feat(website_sale_aplicoop): sistema de ribbons basado en stock
- Añadidos ribbons 'Sin Stock' (rojo) y 'Pocas Existencias' (amarillo) - Nuevo campo configurable: umbral de stock bajo (default: 5.0) - Campos computed en product.product: * is_out_of_stock: True cuando qty_available <= 0 * is_low_stock: True cuando 0 < qty_available <= threshold * dynamic_ribbon_id: ribbon automático según nivel de stock - Ordenamiento mejorado: productos con stock primero, sin stock al final - Template actualizado: * Muestra ribbon de stock en tarjeta de producto * Deshabilita botón add-to-cart cuando producto sin stock * Cambia icono a 'fa-ban' en productos sin stock - Vista de configuración: campo 'Low Stock Threshold' en Settings > Shop Performance - Solo aplica a productos type='consu' (almacenables) - Tests: 112 pasados, 0 fallos
This commit is contained in:
parent
539cd5cccd
commit
2a005a9d5a
7 changed files with 132 additions and 6 deletions
22
website_sale_aplicoop/data/product_ribbon_data.xml
Normal file
22
website_sale_aplicoop/data/product_ribbon_data.xml
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Copyright 2026 Criptomart -->
|
||||
<!-- License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl) -->
|
||||
<odoo>
|
||||
<data noupdate="0">
|
||||
<!-- Ribbon: Out of Stock (Sin Stock) -->
|
||||
<record id="out_of_stock_ribbon" model="product.ribbon">
|
||||
<field name="name">Sin Stock</field>
|
||||
<field name="position">left</field>
|
||||
<field name="text_color">#FFFFFF</field>
|
||||
<field name="bg_color">#d9534f</field>
|
||||
</record>
|
||||
|
||||
<!-- Ribbon: Low Stock (Pocas Existencias) -->
|
||||
<record id="low_stock_ribbon" model="product.ribbon">
|
||||
<field name="name">Pocas Existencias</field>
|
||||
<field name="position">left</field>
|
||||
<field name="text_color">#FFFFFF</field>
|
||||
<field name="bg_color">#ffc107</field>
|
||||
</record>
|
||||
</data>
|
||||
</odoo>
|
||||
Loading…
Add table
Add a link
Reference in a new issue