Añadir Catalog-and-Bundles
27
Catalog-and-Bundles.-.md
Normal file
27
Catalog-and-Bundles.-.md
Normal file
@@ -0,0 +1,27 @@
|
|||||||
|
# 📦 Gestión de Catálogo, Rubros y Combos
|
||||||
|
|
||||||
|
El catálogo en SIG-CM soporta una arquitectura polimórfica. Un "Producto" puede ser un aviso, un espacio en radio, un bien físico o un "Combo" (Bundle).
|
||||||
|
|
||||||
|
## 🌳 Árbol de Categorías (Taxonomía)
|
||||||
|
|
||||||
|
Las categorías funcionan bajo una estructura de árbol (Padre > Hijo). Existen reglas estrictas para mantener la integridad en la base de datos:
|
||||||
|
1. **Regla de Inserción:** No se pueden crear sub-categorías dentro de un Rubro si este ya contiene avisos directos.
|
||||||
|
2. **Regla de Movimiento (Drag & Drop):** No se puede mover una categoría padre dentro de uno de sus propios hijos (prevención de referencias circulares).
|
||||||
|
3. **Fusión (Merge):** Al fusionar la Categoría A hacia la B, se trasladan sus avisos, atributos dinámicos y operaciones permitidas; luego, la Categoría A se elimina.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🍔 Combos (Bundles) y Prorrateo de Precios
|
||||||
|
|
||||||
|
Un "Combo" (`TypeCode: BUNDLE`) es un producto padre que agrupa múltiples productos hijos (que pueden pertenecer a empresas distintas).
|
||||||
|
|
||||||
|
**Regla de Negocio Crítica:**
|
||||||
|
Al vender un Combo por un precio cerrado (Ej: $10,000), el sistema debe desglosar ese dinero entre los componentes hijos para la futura [Liquidación Cruzada](Settlement).
|
||||||
|
|
||||||
|
**¿Cómo se calcula el prorrateo?**
|
||||||
|
* Si el componente tiene un `FixedAllocationAmount` configurado por el administrador, se asigna ese valor directo.
|
||||||
|
* Si no, se usa una **Regla de Tres Simple** basada en el precio de lista actual de los hijos:
|
||||||
|
* *Ejemplo:* Combo a $1,000.
|
||||||
|
* Hijo A (Vale $800 en lista). Hijo B (Vale $400 en lista). Total suma teórica: $1,200.
|
||||||
|
* Asignación A = `$1,000 * (800 / 1200) = $666.66`
|
||||||
|
* Asignación B = `$1,000 * (400 / 1200) = $333.33`
|
||||||
Reference in New Issue
Block a user