Añadir Catalog-and-Bundles

2026-02-25 21:39:51 +00:00
parent b1c1b81a4c
commit b116516848

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`