Verificar *** - [verifyDownloadSalary]
🧾 Descripción
Valida si un trabajador ha descargado su boleta de pago correspondiente al mes anterior.
La validación solo aplica del día 1 al 7 de cada mes; fuera de ese rango, se asume automáticamente como validación positiva.
El servicio consulta el registro de descargas en la tabla historial_procesos_app.
🚀 Endpoint
La ruta final depende de cómo esté configurada en
routes/api.php.
🔐 Seguridad
No se valida token en el controlador, pero se recomienda proteger el endpoint detrás de autenticación de la app.
📥 Request Body
{
"employee": "string",
"fechaIngreso": "string (YYYY-MM-DD)"
} |
Campos requeridos
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| employee | string | Sí | Código del empleado (ID del trabajador). |
| fechaIngreso | string | Sí | Fecha de ingreso del trabajador en formato YYYY-MM-DD. |
🧠 Reglas de negocio
-
Validación por fecha
Si la fecha actual es mayor al día 7 del mes → no corresponde validación. -
Obtiene el mes anterior y convierte el número en texto (ej. 01 → Enero).
-
Si
fechaIngreso >= primer día del mes actual, entonces el trabajador ingresó recientemente → no se valida descarga. -
Consulta en la BD (
mysql2.historial_procesos_app) si existe un registro:-
proceso = 'NOMINA' -
empleado = <employee> -
monthyyeardel mes anterior -
Registros con fecha ascendente
-
-
Si existe registro → sí descargó
Si no → debe descargar su boleta pendiente.
📤 Responses
🟦 Caso 1: Fuera del rango de fechas (después del día 7)
{
"valor": true,
"msg": "No corresponde validación, fuera de fecha."
} |
🟥 Error: falta fecha de ingreso
{
"valor": false,
"msg": "Debe enviar la fecha de ingreso del trabajador"
} |
🟥 Error: falta empleado
{
"valor": false,
"msg": "Debe enviar el código de empleado del trabajador"
} |
🟦 Caso 2: Ingreso reciente (no se valida)
{
"valor": true,
"msg": "No corresponde validación"
} |
🟩 Caso 3: El trabajador SÍ descargó su boleta
{
"valor": true,
"msg": "Si descargó boleta."
} |
🟥 Caso 4: El trabajador NO descargó su boleta
{
"valor": false,
"msg": "Tiene pendiente descargar su boleta de pago del mes de <MesTexto> <Año>, descárguelo desde el módulo Boletas de Pago."
} |
Ejemplo:
{
"valor": false,
"msg": "Tiene pendiente descargar su boleta de pago del mes de Enero 2025, descárguelo desde el módulo Boletas de Pago."
} |
No hay comentarios para mostrar
No hay comentarios para mostrar