Ir al contenido principal

Permisos del modulo - [permissions-module]

🧾 Descripción

Devuelve un listado de permisos de módulos habilitados para el usuario autenticado en la app.
Además, determina si el usuario tiene acceso al módulo “solicitudes_de_pagos”, validándolo contra listas internas y datos del ERP (tabla Validacion de Pagos Gerencia).


🚀 Endpoint


POST /permissions-modules

🔐 Seguridad

  • Requiere usuario enviado en el body.

  • No usa autenticación adicional dentro del servicio, pero sí consulta el ERP vía dbErp().


📥 Request Body



{ "usuario": "string" }

Campos

Campo Tipo Requerido Descripción
usuario string Email del usuario de la app.

📤 Responses

✔️ 200 – Respuesta exitosa

{ "valor": true, "msn": "lista de dni validacion módulos", "data": { "informacion_personal": true, "marcaciones": true, "otros_descuentos": true, "capacitacion": true, "contrato_de_trabajo": true, "boletas_de_pago": true, "solicitudes": true, "reconocimiento_de_deuda": true, "centro_de_ayuda": true, "supervision": true, "asistencia": true, "contratacion": true, "convocatoria": true, "documentos_internos": true, "solicitudes_de_pagos": true } }

Nota: El valor de solicitudes_de_pagos depende del usuario.


❌ 400 – Falta el usuario en la solicitud



{ "valor": false, "msn": "Debe enviar el usuario" }

🧩 Lógica Interna

1. Validar que se envíe el parámetro usuario

Si no existe → retorna error.

2. Lista inicial de usuarios con permiso en solicitudes_de_pagos

Hardcoded en el código:

[ "45738484@shalomcontrol.com", "40650120@shalomcontrol.com", "40377937@shalomcontrol.com" ]

3. Consulta al ERP

Consulta la tabla: tabValidacion de Pagos Gerencia

Utiliza: SELECT usuario FROM `tabValidacion de Pagos Gerencia`

Si la respuesta contiene valores, se agregan a la lista general.

4. Mezcla de listas

Se combinan:

  • Lista hardcodeada

  • Lista proveniente del ERP

5. Validación final

solicitudes_de_pagos = in_array(usuario, lista_combinada)

6. Todos los demás permisos se marcan como true


📚 Schema de Respuesta

data (permisos)

{ "informacion_personal": true, "marcaciones": true, "otros_descuentos": true, "capacitacion": true, "contrato_de_trabajo": true, "boletas_de_pago": true, "solicitudes": true, "reconocimiento_de_deuda": true, "centro_de_ayuda": true, "supervision": true, "asistencia": true, "contratacion": true, "convocatoria": true, "documentos_internos": true, "solicitudes_de_pagos": "boolean dinámico" }

🧪 Ejemplo de uso (curl)

curl -X POST https://midominio.com/api/permissions-modules \ -H "Content-Type: application/json" \ -d '{"usuario":"user@example.com"}'