Files
ibiza_sistema/docs/ANALISIS_SISTEMA_IBIZA.md
nickpons666 535f7c5963 feat: Agregar filtros avanzados a reporte de Deudores de Conceptos
- Filtros por casas: selección múltiple con opción 'Todas las casas'
- Filtros por conceptos: selección múltiple con opción 'Todos los conceptos'
- Estado inicial: todos los filtros marcados por defecto (muestra toda la info)
- Exportación PDF: incluye solo datos filtrados según selección
- JavaScript interactivo: lógica de checkboxes con estados intermedios
- Modelo actualizado: método getConceptDebtorsFiltered para filtrado avanzado
- Interfaz intuitiva: scrollable containers para listas largas
- Preserva permisos: respeta restricciones de acceso por casas
2026-01-05 16:12:24 -06:00

9.7 KiB
Executable File
Raw Permalink Blame History

ANÁLISIS COMPLETO DEL SISTEMA IBIZA CEA

Resumen Ejecutivo

El sistema IBIZA CEA es una plataforma de gestión integral para condominios que maneja dos módulos principales: Pagos de Agua y Finanzas. El sistema está desarrollado en PHP con MySQL y está diseñado para administrar 101 casas del condominio IBIZA.


🏗️ ESTRUCTURA DEL SISTEMA

Base de Datos

  • Nombre: ibiza_db
  • Motor: MySQL/MariaDB
  • Tablas principales: 15 tablas

Arquitectura

  • Frontend: PHP puro con HTML5, CSS3, JavaScript
  • Backend: PHP con MySQLi
  • API REST: Endpoints para integración externa
  • Autenticación: Basada en sesiones con roles de usuario

📊 MÓDULOS DEL SISTEMA

1. MÓDULO DE PAGOS DE AGUA (Sistema Principal)

Página Principal: index.php

Funcionalidad: Concentrado de pagos mensuales de agua por casa

Características:

  • Vista tabular de 101 casas vs 12 meses
  • Edición inline de pagos (clic en celda)
  • Filtros por año y número de casa
  • Exportación a PDF y CSV
  • Estados visuales de pago (pagado/pendiente/parcial)

Proceso de Flujo:

  1. Usuario selecciona año (2024-2030)
  2. Sistema muestra matriz casas×meses
  3. Admin/capturista puede editar montos haciendo clic
  4. Estados se actualizan automáticamente (verde=pagado, rojo=pendiente)

Lógica de Negocio:

  • Casas pueden estar "activa" o "deshabitada"
  • Casas con consumo_only=1 reciben descuento de $100 (desde 2025)
  • Cálculo automático de saldos y estados

Tablas Involucradas:

  • houses - Información de casas (101 registros)
  • payments - Pagos registrados por casa/año/mes
  • monthly_bills - Configuración de montos esperados

2. MÓDULO DE FINANZAS (Sistema Secundario)

2.1 Gestión de Casas (finance_houses.php)

Funcionalidad: Administración del registro de propietarios

Características:

  • Lista de 101 casas con números y propietarios
  • Edición de nombres de propietarios (solo admin)
  • Vista tabular con información de registro

Proceso:

  1. Muestra todas las casas del 001-101
  2. Admin puede editar nombre del propietario
  3. Sistema registra cambios en log de actividad

2.2 Conceptos de Recaudación (finance_concepts.php)

Funcionalidad: Definición de eventos especiales de cobro

Características:

  • Creación de conceptos globales (Protocolización, Poda de árboles, etc.)
  • Montos variables por casa
  • Relación con conceptos globales
  • Gestión de pagos por concepto

Ejemplos del Sistema:

  • Protocolización: $200 por casa
  • Poda de árboles: $20 por casa
  • Reparación de candado: $6 por casa

2.3 Reportes Financieros (finance_reports.php)

Funcionalidad: Generación de reportes financieros

Tipos de Reportes:

  • Balance General: Resumen completo financiero
  • Estado de Cuenta por Casa: Detalle de pagos individuales
  • Detalle por Concepto: Pagos agrupados por concepto
  • Detalle por Concepto Global: Reportes de eventos especiales

Características:

  • Filtros por rango de fechas
  • Exportación a PDF
  • Cálculos automáticos de totales

2.4 Gestión de Gastos (finance_expenses.php)

Funcionalidad: Registro de egresos del sistema

Características:

  • Registro de gastos con conceptos
  • Soporte para comprobantes (receipt_path)
  • Relación con conceptos de recaudación
  • Montos y fechas configurables

🔐 SEGURIDAD Y ROLES

Sistema de Autenticación

Página: login.php

Flujo:

  1. Usuario ingresa credenciales
  2. Sistema verifica contra tabla users
  3. Creación de sesión con regeneración de ID
  4. Redirección a select_system.php

Roles de Usuario

  1. admin: Acceso completo a todas las funciones
  2. capturista: Puede editar pagos y crear conceptos
  3. viewer: Solo puede visualizar información
  4. any: Rol mínimo para navegación básica

Página de Selección (select_system.php)

Funcionalidad: Portal de navegación entre sistemas

Características:

  • Interfaz moderna con cards de selección
  • Dos opciones: "Pagos de Agua" y "Finanzas"
  • Diseño responsivo y visual atractivo

📋 TABLAS DE BASE DE DATOS

Tablas Principales

1. houses (101 registros)

  • Propósito: Registro de casas del condominio
  • Campos clave: number, status, consumo_only
  • Estados: 'activa' o 'deshabitada'

2. payments (1,000+ registros)

  • Propósito: Pagos mensuales registrados
  • Relación: Muchos a uno con houses
  • Periodo: 2024-2025 con datos históricos

3. monthly_bills (25+ registros)

  • Propósito: Configuración de montos esperados
  • Cálculo: Total dividido entre casas activas
  • Evolución: Montos variables por mes ($250-$712)

4. finance_houses (101 registros)

  • Propósito: Datos financieros de casas
  • Campos: house_number, owner_name
  • Uso: Módulo financiero separado

5. finance_collection_concepts (5 registros)

  • Propósito: Conceptos especiales de cobro
  • Ejemplos: Protocolización, Poda, Reparación
  • Montos: Variables ($6-$200 por casa)

6. finance_expenses (17 registros)

  • Propósito: Registro de egresos
  • Conceptos: Herrero, Candados, Asesoría, etc.
  • Montos: $11-$1,015

7. activity_logs (9,800+ registros)

  • Propósito: Auditoría completa del sistema
  • Acciones: login, navigation, editar_pago, etc.
  • Usuarios: Principalmente usuario ID 1 y 2

🔄 FLUJOS DE TRABAJO

Flujo de Pagos de Agua (Mensual)

  1. Configuración: Admin define montos en monthly_bills
  2. Registro: Capturista ingresa pagos casa por casa
  3. Seguimiento: Sistema muestra estados de pago
  4. Reportes: Exportación a PDF para administración

Flujo de Conceptos Especiales

  1. Creación: Admin define concepto global y montos
  2. Recaudación: Capturista registra pagos por casa
  3. Control: Sistema vincula pagos con conceptos
  4. Reportes: Generación de estados de cuenta

Flujo de Gastos

  1. Registro: Admin ingresa egresos con conceptos
  2. Documentación: Opcional carga de comprobantes
  3. Vinculación: Relación con conceptos de recaudación
  4. Control: Reportes de balance general

🎯 FUNCIONALIDADES CLAVE

1. Gestión de Pagos

  • Edición Inline: Clic en celda para editar monto
  • Estados Visuales: Colores automáticos según estado
  • Cálculos Automáticos: Saldos y totales en tiempo real
  • Validaciones: Prevención de errores de entrada

2. Control de Acceso

  • Autenticación Segura: Password hashing y regeneración de sesión
  • Roles Granulares: Diferentes niveles de acceso
  • Auditoría: Registro completo de actividades

3. Reportes

  • Múltiples Formatos: PDF, CSV, vista en pantalla
  • Filtros Avanzados: Por fecha, casa, concepto
  • Cálculos Automáticos: Totales y subtotales

4. API REST

  • Endpoints: houses, payments, stats, login
  • Autenticación: Tokens de API
  • Formato: JSON responses

📈 MÉTRICAS Y DATOS

Volumen de Datos

  • Casas: 101 propiedades
  • Pagos Registrados: 1,000+ transacciones
  • Actividad: 9,800+ eventos en log
  • Usuarios: Principalmente 2 usuarios activos

Datos Financieros

  • Rango de Pagos: $150-$56,109 (error en registro)
  • Pagos Típicos: $250-$712 mensuales
  • Conceptos Especiales: $6-$200 por evento
  • Gastos Registrados: $11-$1,015

Uso del Sistema

  • Período Activo: Junio 2024 - Diciembre 2025
  • Frecuencia: Uso diario multiple
  • Usuarios Principales: ID 1 (admin), ID 2 (capturista)

🚀 OPORTUNIDADES DE MEJORA

1. Experiencia de Usuario

  • Unificación: Integrar los dos sistemas en uno solo
  • Navegación: Menú unificado en lugar de selección separada
  • Interfaz: Diseño consistente entre módulos

2. Funcionalidades

  • Dashboard Principal: Vista unificada de todos los módulos
  • Notificaciones: Alertas de pagos pendientes
  • Búsqueda: Búsqueda global de casas y propietarios

3. Técnico

  • Framework: PHP puro con Mysql(Mariadb)
  • Frontend: Implementar Vue.js/React para mejor UX
  • Testing: Adicionar pruebas unitarias y de integración

4. Negocio

  • Automatización: Cálculos automáticos de multas
  • Integración: Sistema de pagos en línea
  • Móvil: App para residentes

📋 REQUERIMIENTOS PARA UNIFICACIÓN

1. Estructura Sugerida

/dashboard.php          - Dashboard unificado
/casas/               - Gestión de casas
/pagos/               - Pagos de agua
/finanzas/            - Módulo financiero
/reportes/            - Reportes unificados
/configuracion/       - Configuración del sistema

2. Funcionalidades Integradas

  • Perfil de Casa: Vista unificada de pagos y finanzas
  • Dashboard Principal: Métricas de ambos sistemas
  • Reportes Combinados: Balance general completo
  • Gestión Unificada: Menú único de navegación

3. Mejoras de UX

  • Búsqueda Global: Encontrar casas por nombre/numero
  • Estados Unificados: Vista combinada de pagos
  • Notificaciones: Sistema de alertas integrado
  • Móvil: Diseño responsivo mejorado

🎯 CONCLUSIÓN

El sistema IBIZA CEA es una plataforma funcional y completa que gestiona eficientemente las necesidades del condominio. Sin embargo, la división en dos sistemas separados crea una experiencia fragmentada para los usuarios.

Recomendación Principal: Unificar ambos sistemas en una plataforma integrada con un dashboard principal que proporcione una visión completa de cada casa, incluyendo pagos de agua, conceptos especiales, gastos y balances generales.

Esta unificación mejoraría significativamente la experiencia del usuario, simplificaría la navegación y proporcionaría una visión más completa del estado financiero del condominio.