CTS(Url CTS PDF (1)) - [pdfCTS]
🧾 Descripción
Genera el PDF de la Compensación por Tiempo de Servicios (CTS) de un empleado para un periodo específico (mes y año).
El servicio consulta la información almacenada en el ERP y retorna el archivo PDF ya renderizado desde una vista Blade (pdf/cts).
También valida si la descarga está habilitada según la fecha definida por la empresa:
-
CTS de Mayo se habilita desde el 16 de mayo
-
CTS de Noviembre se habilita desde el 16 de noviembre
Si el usuario intenta descargar antes de esas fechas, el servicio lo bloquea.
🚀 Endpoint
GET /pdf-cts/{employee}/{month}/{year}
Parámetros
| Parámetro | Tipo | Descripción |
|---|---|---|
| employee | string | ID del empleado |
| month | string/int | 5 ó 11 (Mayo / Noviembre) |
| year | string/int | Año del cálculo CTS |
🔐 Seguridad
Este servicio requiere una autenticación interna mediante apiService() para consumir los datos del ERP.
No necesita token del cliente, pero sí credenciales válidas para el ERP.
🧠 Flujo del Servicio (resumen real)
1️⃣ Validación del Mes
Convierte el mes recibido:
| Valor recibido | Se interpreta como |
|---|---|
"5" |
"MAYO" |
"11" |
"NOVIEMBRE" |
2️⃣ Validación de Fecha de Bloqueo
El servicio verifica si la fecha actual está dentro del periodo permitido:
-
Para Mayo:
📅 Debe ser a partir del 16-05-<año> -
Para Noviembre:
📅 Debe ser a partir del 16-11-<año>
Si aún no llega la fecha → se retorna:
3️⃣ Obtiene la CTS del ERP
Se consulta la API del ERP:
Se recuperan campos como:
-
remuneración computable
-
días computables
-
banco del empleado
-
CTS total a pagar
-
datos personales
Si no existen registros → retorna:
4️⃣ Genera el PDF
Si existe el registro, el servicio envía la información a la vista:
resources/views/pdf/cts.blade.php
Luego devuelve el PDF:
📥 Request Body
No utiliza body.
📤 Response – Ejemplo exitoso
El servicio no retorna JSON cuando es exitoso, sino un PDF vía stream, por lo que la respuesta es un archivo.
Ejemplo conceptual: <PDF STREAM - CTS Mayo 2024>
❗ Posibles Errores
1. CTS no habilitado por fecha
2. CTS inexistente para el periodo
3. Parámetros mal enviados
4. Error interno del ERP
Retorna el error capturado del servicio apiService().
📚 Schemas involucrados
Compensación por Tiempo de Servicios (CTS)
Campos usados:
No hay comentarios para mostrar
No hay comentarios para mostrar