Gestión de Personal
Permite la consulta del equipo humano y operarios registrados en BaseGes ERP. Es el maestro de personal empleado para imputar horas de mano de obra en proyectos, partes de trabajo (GMAO) y órdenes de servicio técnico.
Seguridad
Requiere autorización mediante cabecera HTTP:
X-Api-Key: {tu_clave_api}oAuthorization: Bearer {tu_token_jwt}
Endpoints Disponibles
| Método | Ruta | Descripción |
|---|---|---|
GET | /employees | Listado paginado de empleados y técnicos disponibles. |
GET | /employees/{code} | Consulta de ficha de empleado con datos de contacto y categoría. |
POST | /employees | Registro de un nuevo operario o empleado. |
PATCH | /employees/{code} | Actualización parcial de la ficha de empleado. |
1. Listado Paginado de Personal
GET /employees
Parámetros de Consulta (Query String)
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
page | integer | No | Número de página (predeterminado: 1, mínimo: 1). |
pageSize | integer | No | Elementos por página (predeterminado: 50, máximo: 100). |
Code | string | No | Filtro exacto por código de empleado (ej. "EMP001"). |
VatNumber | string | No | Filtro por DNI / NIE del trabajador. |
search | string | No | Búsqueda parcial predictiva. |
updatedAfter | datetime | No | Sincronización incremental (formato ISO 8601). |
Coincidencias del parámetro
searchLa búsqueda predictiva busca simultáneamente en:
Code(Código de empleado)Name(Nombre y apellidos)VatNumber(DNI / NIF)Address(Dirección)PostalCode(Código postal)City(Población)Phone(Teléfono corporativo o personal)Email(Correo electrónico)
Ejemplo de Petición
GET /employees?page=1&pageSize=10&search=García HTTP/1.1
Host: localhost:5000
X-Api-Key: 12345678-abcd-ef01-2345-6789abcdef01
Respuesta Exitosa (200 OK)
{
"items": [
{
"code": "EMP007",
"name": "Carlos García Moreno",
"vatNumber": "45678901D",
"address": "Calle Mayor, 14, 2ºB",
"postalCode": "28013",
"city": "Madrid",
"province": "Madrid",
"phone": "+34 600 123 456",
"email": "carlos.garcia@empresa.com"
}
],
"page": 1,
"pageSize": 10,
"totalCount": 1,
"totalPages": 1,
"hasPreviousPage": false,
"hasNextPage": false
}