Service


Un servicio concreto que se ofrece, de un ServiceType dado. Puede ser global (sin service_supplier_id) o propio de un ServiceSupplier. Las FleetAssociation enlazan un servicio con una company o branch para que una flota lo preste.

Notas y gotchas

  • Se crea deshabilitado (is_enabled = false).
  • Al listar los servicios de un service supplier se incluyen también los servicios globales.

Estructura de Datos

Atributo Tipo Descripción
id int
is_enabled bool Si el servicio está disponible
name string Nombre del servicio
description string\|null Descripción del servicio
service_type_id int {@link ServiceType} al que pertenece el servicio
created_at datetime\|null
updated_at datetime\|null
service_supplier_id int\|null {@link ServiceSupplier} propietario; nulo si es un servicio global
allLogs ApiLog>
fleetAssociations FleetAssociation> Asociaciones de flota que prestan este servicio
logs ApiLog>
serviceType ServiceType {@link ServiceType} al que pertenece el servicio
{
    "id": 1,
    "is_enabled": true,
    "name": "Estándar",
    "description": null,
    "service_type_id": 1,
    "created_at": "2023-07-07 13:36:34",
    "updated_at": "2023-07-07 13:36:34",
    "service_supplier_id": null
}

Endpoints

Insertar Service

Crear servicio

Crea un Service de un ServiceType. Si se envía service_supplier_id, queda ligado a ese ServiceSupplier (requiere acceso a su dueño); si no, es un servicio global. Nace deshabilitado.

Método URI Cabeceras
POST /services Authorization
{
    "name": "required|string|max:32",
    "description": "nullable|string|max:255",
    "service_type_id": "required|integer|exists:service_types,id",
    "service_supplier_id": "nullable|integer|exists:service_suppliers,id"
}

Listar Service

{info} Soporta: Paginación Filters Carga dinámica

Listar servicios

Listado paginado de Service. Con service_supplier_id devuelve los del proveedor indicado más los servicios globales (sin proveedor).

Método URI Cabeceras
GET /services N/A

Mostrar Service

{info} Soporta: Carga dinámica

Mostrar servicio

Devuelve el Service por su id.

Método URI Cabeceras
GET /services/{serviceId} N/A

Actualizar Service

Actualizar servicio

Modifica name, description e is_enabled del Service.

Método URI Cabeceras
PATCH /services/{serviceId} Authorization
{
    "name": "string|max:32",
    "description": "nullable|string|max:255",
    "is_enabled": "boolean"
}

Eliminar Service

Eliminar servicio

Borra el Service.

Método URI Cabeceras
DELETE /services/{serviceId} Authorization

Acciones de Service

Listar servicios de un tipo

{info} Soporta: Paginación Filters Carga dinámica

Service de un ServiceType concreto, con el mismo filtro service_supplier_id que el listado general.

Método URI Cabeceras
GET /service-types/{serviceTypeId}/services N/A

Relaciones