Saltearse al contenido

Elevators

Tag: elevators
Descripción: Operaciones para gestión de elevadores asociados a servicios de sucursal


  • Descripción: Registra un nuevo elevador en el sistema
  • Operation ID: ElevatorsController_create
  • Autenticación requerida: 🔒 Sí (ROLE_MAINTENANCE_MANAGER)
{
"branchServiceId": 1,
"brand": "Otis",
"model": "Gen2",
"serialNumber": "OTIS-2023-001",
"capacity": 1000,
"installationDate": "2023-01-15",
"lastMaintenanceDate": "2023-05-01",
"nextMaintenanceDate": "2023-11-01"
}
CódigoDescripción
201Elevador creado exitosamente
400Datos de entrada inválidos
401No autorizado
404Servicio de sucursal no encontrado

2. Listar todos los elevadores (GET /elevators)

Sección titulada «2. Listar todos los elevadores (GET /elevators)»
  • Descripción: Obtiene todos los elevadores con filtros avanzados
  • Operation ID: ElevatorsController_findAll
  • Autenticación requerida: 🔒 Sí (ROLE_MAINTENANCE_TECH)
ParámetroTipoRequeridoDescripción
pageinteger❌ NoNúmero de página (default: 1)
limitinteger❌ NoLímite por página (default: 20)
branchServiceIdinteger❌ NoFiltrar por ID de servicio
brandstring❌ NoFiltrar por marca
activeOnlyboolean❌ NoFiltrar solo activos
needsMaintenanceboolean❌ NoFiltrar por mantenimiento pendiente
CódigoDescripción
200Lista de elevadores obtenida
401No autorizado

3. Obtener elevador por ID (GET /elevators/:id)

Sección titulada «3. Obtener elevador por ID (GET /elevators/:id)»
  • Descripción: Obtiene los detalles completos de un elevador específico
  • Operation ID: ElevatorsController_findOne
  • Autenticación requerida: 🔒 Sí (ROLE_MAINTENANCE_TECH)
ParámetroTipoDescripción
idintegerID del elevador
CódigoDescripción
200Elevador obtenido exitosamente
401No autorizado
404Elevador no encontrado

4. Actualizar elevador (PATCH /elevators/:id)

Sección titulada «4. Actualizar elevador (PATCH /elevators/:id)»
  • Descripción: Actualiza los datos de un elevador existente
  • Operation ID: ElevatorsController_update
  • Autenticación requerida: 🔒 Sí (ROLE_MAINTENANCE_MANAGER)
ParámetroTipoDescripción
idintegerID del elevador
{
"lastMaintenanceDate": "2023-06-01",
"nextMaintenanceDate": "2023-12-01",
"isActive": true
}
CódigoDescripción
200Elevador actualizado exitosamente
400Datos de entrada inválidos
401No autorizado
404Elevador no encontrado

5. Eliminar elevador (DELETE /elevators/:id)

Sección titulada «5. Eliminar elevador (DELETE /elevators/:id)»
  • Descripción: Desactiva un elevador (soft delete)
  • Operation ID: ElevatorsController_remove
  • Autenticación requerida: 🔒 Sí (ROLE_MAINTENANCE_ADMIN)
ParámetroTipoDescripción
idintegerID del elevador
CódigoDescripción
204Elevador desactivado exitosamente
401No autorizado
404Elevador no encontrado

6. Registrar mantenimiento (POST /elevators/:id/maintenance)

Sección titulada «6. Registrar mantenimiento (POST /elevators/:id/maintenance)»
  • Descripción: Registra una acción de mantenimiento en un elevador
  • Operation ID: ElevatorsController_recordMaintenance
  • Autenticación requerida: 🔒 Sí (ROLE_MAINTENANCE_TECH)
ParámetroTipoDescripción
idintegerID del elevador
{
"maintenanceType": "preventive",
"technician": "John Doe",
"notes": "Lubricación y revisión de frenos",
"nextMaintenanceDate": "2023-12-01"
}
CódigoDescripción
200Mantenimiento registrado
400Datos de entrada inválidos
401No autorizado
404Elevador no encontrado

MétodoEndpointDescripciónPermiso Requerido
POST/elevatorsCrear nuevo elevadorROLE_MAINTENANCE_MANAGER
GET/elevatorsListar elevadoresROLE_MAINTENANCE_TECH
GET/elevators/:idObtener elevador por IDROLE_MAINTENANCE_TECH
PATCH/elevators/:idActualizar elevadorROLE_MAINTENANCE_MANAGER
DELETE/elevators/:idDesactivar elevadorROLE_MAINTENANCE_ADMIN
POST/elevators/:id/maintenanceRegistrar mantenimientoROLE_MAINTENANCE_TECH
interface Elevator {
id: number;
branchServiceId: number;
brand: string;
model: string;
serialNumber: string;
capacity: number;
installationDate: string; // ISO 8601
lastMaintenanceDate?: string; // ISO 8601
nextMaintenanceDate?: string; // ISO 8601
isActive: boolean;
createdAt: string; // ISO 8601
updatedAt: string; // ISO 8601
branchService?: BranchService; // Relación opcional
}
{
"id": 1,
"branchServiceId": 1,
"brand": "Otis",
"model": "Gen2",
"serialNumber": "OTIS-2023-001",
"capacity": 1000,
"installationDate": "2023-01-15T00:00:00.000Z",
"lastMaintenanceDate": "2023-06-01T00:00:00.000Z",
"nextMaintenanceDate": "2023-12-01T00:00:00.000Z",
"isActive": true,
"createdAt": "2023-01-10T14:30:00.000Z",
"updatedAt": "2023-06-02T09:15:00.000Z",
"branchService": {
"id": 1,
"name": "Servicio de Edificio Principal"
}
}