Sistema CRM Admin - CRUDs Implementados
Se han implementado 6 CRUDs diferentes, cada uno con características especiales
optimizadas para casos de uso específicos. Todos mantienen el filtrado automático por
ruc_vendedor para el sistema multi-empresa.
1. Niveles de Cliente
CRUD Básico - FundacionalCaracterísticas Especiales:
- CRUD completo básico (C-R-U-D)
- Validaciones en tiempo real
- Ordenamiento por jerarquía
- Multiplicadores de puntos
- Soft delete (activo/inactivo)
Casos de Uso:
Configuración básica del programa de puntos. Define la jerarquía de clientes (BRONCE, PLATA, ORO) y sus multiplicadores.
2. Recompensas
CRUD con Tipos y StockCaracterísticas Especiales:
- Tipos de recompensa (DESCUENTO, PRODUCTO, etc.)
- Campos condicionales según tipo
- Gestión de stock disponible
- Fechas de vigencia
- Exportación a CSV
Casos de Uso:
Catálogo de recompensas canjeables. Maneja diferentes tipos con validaciones específicas y control de inventario.
3. Beneficios por Nivel
CRUD con Relaciones DinámicasCaracterísticas Especiales:
- Relación con tabla 'niveles'
- Dropdown dinámico de niveles
- Campos condicionales complejos
- Vista previa en tiempo real
- Acciones masivas
- Validación de fechas cruzadas
Casos de Uso:
Beneficios específicos por nivel de cliente. Maneja relaciones complejas y validaciones cruzadas entre tablas.
4. Promociones Temporales
CRUD con Lógica Temporal AvanzadaCaracterísticas Especiales:
- Fechas de vigencia complejas
- Estados temporales (Programada, Activa, Expirada)
- Condiciones múltiples (monto, cantidad)
- Duplicación de promociones
- Plantillas rápidas predefinidas
- Cálculo de duración automático
Casos de Uso:
Promociones con fechas específicas (Black Friday, Navidad). Lógica temporal compleja y condiciones de aplicación.
5. Configuración Global
CRUD de Registro ÚnicoCaracterísticas Especiales:
- Un solo registro por RUC
- Solo UPDATE (no CREATE/DELETE)
- Validaciones de rangos numéricos
- Validaciones de fechas cruzadas
- Información del sistema
Casos de Uso:
Parámetros globales del programa (dólares por punto, valor del punto, fechas del programa). Un registro único por empresa.
6. Historial de Transacciones
CRUD de Solo Lectura - ReportesCaracterísticas Especiales:
- Solo lectura (READ-ONLY)
- Filtros avanzados múltiples
- Rangos de fechas y montos
- Estadísticas en tiempo real
- Gráficos de tendencias
- Exportación múltiple (Excel, CSV, PDF)
- Períodos rápidos predefinidos
Casos de Uso:
Análisis y reportes de transacciones históricas. Optimizado para grandes volúmenes de datos con filtros complejos.
Comparativa de Características por CRUD
| CRUD | Crear | Leer | Actualizar | Eliminar | Relaciones | Filtros Avanzados | Exportación | Validaciones Especiales |
|---|---|---|---|---|---|---|---|---|
| Niveles | Soft | Básicos | Rangos numéricos | |||||
| Recompensas | Soft | Por tipo | Campos condicionales | |||||
| Beneficios | Soft | Niveles | Avanzados | Relaciones + Fechas | ||||
| Promociones | Soft | Temporales | Lógica temporal | |||||
| Configuración | Registro único | |||||||
| Transacciones | Clientes | Complejos | Múltiple | Solo lectura + Reportes |
Arquitectura Técnica
Clases Base:
CrmAdminTableView- Vista de tabla genéricaCrmAdminTableViewFiltrada- Vista con filtros avanzadoscrmAdminCrud- Funciones CRUD genéricascrmAdminBackendCommon- Funciones backendcrmAdminFrontend- Componentes de UI
JavaScript Rescatado:
- Tooltips móviles para texto truncado
- Búsqueda en tiempo real con debounce
- Validaciones de formularios dinámicas
- Exportación automática de tablas
- Confirmaciones mejoradas con modales
Características del Sistema
Multi-Empresa:
- Filtrado automático por
ruc_vendedor - Configuración independiente por RUC
- Datos aislados entre empresas
- Sesiones del sistema de facturación
Compatibilidad:
- PHP 5.6+ (fallbacks implementados)
- MariaDB 5.5.68+
- Bootstrap 5 responsive
- JavaScript Vanilla para interactividad
- Chart.js para gráficos