54 Lógica de Mora y Días de Gracia en Laravel 12: Cálculos Automáticos de Atraso y Notificaciones 📉🔔

Duración: 12 min
Módulo: Módulo Prestamos y Pagos Lección 13 de 18

¡Contenido Exclusivo!

Adquiere este curso para tener acceso inmediato a esta y a **todas las lecciones Premium**.

Inscribirse Ahora por $10.00 Acceso instantáneo de por vida y código fuente incluido.

Descripción

📉 Lección 54: Lógica de Mora y Días de Gracia: Cálculos Automáticos

En esta sesión de Benji V2, desarrollamos el motor de cálculo para el estado de las cuotas. El sistema ahora es capaz de determinar por sí mismo si un cliente está al día, si se encuentra en un periodo de gracia, si su cuota está próxima a vencer o si ya generó intereses por mora.

🧮 Variables y Extracción de Datos

Para realizar los cálculos, el sistema primero recolecta información clave de los ajustes globales:

  • ⏳ Días de Gracia: (Ej: 5 días) Margen antes de aplicar sanciones.
  • 🔔 Días de Notificación: (Ej: 3-5 días) Antelación para alertar sobre un vencimiento.
  • 💸 Tasa de Mora Diaria: El porcentaje (ej: 2%) convertido a decimal (0.02) para el cálculo financiero [01:19].
  • 📅 Fechas Críticas: Comparamos la Fecha Actual contra la Fecha de Vencimiento de cada cuota [02:01].

🚥 Estados Dinámicos de la Cuota

Dependiendo de la comparación de fechas, la cuota puede pasar por los siguientes estados visuales:

  1. 🟢 Faltan N Días: La cuota está pendiente pero aún lejos de su vencimiento [06:21].
  2. 🔔 Por Vencer: El sistema muestra una alerta (campanita) cuando la fecha actual entra en el rango de los "Días de Notificación" [07:40].
  3. 🟡 Periodo de Gracia: Si la fecha venció pero está dentro de los días permitidos. Se informa cuántos días de gracia le quedan al cliente y no se cobra mora aún [08:23].
  4. 🔴 Atraso / Mora: Si se superan los días de gracia, el estado cambia a rojo, calcula los días de atraso real y muestra el monto exacto de la mora acumulada [10:10].

💻 Implementación de la Lógica (Blade & PHP)

Utilizamos una estructura de control en la vista show que procesa cada fila de la tabla de amortización:

  • 🛠️ Cálculo de Diferencia: Usamos la lógica de PHP para obtener la diferencia de días entre la fecha actual y el vencimiento.
  • 🎨 Formateo Visual: Aplicamos clases de colores (verde para pagado, rojo para atrasado) y mensajes personalizados según el resultado de los cálculos de atraso [11:50].

Resultado de la Lección

Al finalizar, el administrador tiene un tablero de control financiero en tiempo real. Ya no es necesario revisar el calendario manualmente; el sistema indica visualmente quién debe pagar pronto, quién está en prórroga y quién ya debe dinero extra por intereses de mora.