Saltearse al contenido

Plataformas y Vehiculos

Vehiculos

Modelo

interface Vehicle {
id: string;
license_plate: string; // Matricula
type: 'van' | 'truck' | 'motorcycle' | 'car';
brand: string;
model: string;
year?: number;
max_weight_kg?: number; // Peso maximo autorizado
max_volume_m3?: number; // Volumen maximo de carga
fuel_type: 'gasoline' | 'diesel' | 'electric' | 'hybrid';
status: 'available' | 'in_use' | 'maintenance' | 'out_of_service';
current_driver_id?: string;
notes?: string;
active: boolean;
}

Endpoints

MetodoRutaDescripcion
GET/api/logistics/vehiclesListar vehiculos
POST/api/logistics/vehiclesCrear vehiculo
GET/api/logistics/vehicles/:idVer vehiculo
PATCH/api/logistics/vehicles/:idActualizar vehiculo
DELETE/api/logistics/vehicles/:idEliminar vehiculo
POST/api/logistics/vehicles/:id/maintenanceMarcar en mantenimiento

Listar vehiculos disponibles

GET /api/logistics/vehicles?status=available&type=van

Plataformas de carga

Las plataformas son puntos de carga y descarga donde se organiza la mercancia.

Modelo

interface Platform {
id: string;
name: string; // "Plataforma A - Entrada", "Plataforma B - Salida"
code: string;
type: 'loading' | 'unloading' | 'mixed';
location: string; // "Almacen planta baja, zona norte"
capacity: number; // Numero maximo de pallets
current_load: number;
status: 'available' | 'occupied' | 'maintenance';
active: boolean;
}

Endpoints

GET /api/logistics/platforms
POST /api/logistics/platforms
GET /api/logistics/platforms/:id
PATCH /api/logistics/platforms/:id
DELETE /api/logistics/platforms/:id

Areas de Staging

Las areas de staging son zonas fisicas en el almacen donde se organizan los preparados antes de cargarlos.

Modelo

interface StagingArea {
id: string;
name: string; // "Area A - Barcelona", "Area B - Madrid"
code: string;
warehouse_id: string;
zones: StagingZone[];
status: 'active' | 'inactive';
}
interface StagingZone {
id: string;
name: string; // "Zona 1", "Zona 2"
zone_number: string; // "A-01", "A-02"
type: 'shipment' | 'returns' | 'hold';
shelf_count?: number;
current_shipments: number;
max_shipments: number;
}

Endpoints

GET /api/logistics/staging-areas
POST /api/logistics/staging-areas
GET /api/logistics/staging-areas/:id
PATCH /api/logistics/staging-areas/:id
DELETE /api/logistics/staging-areas/:id

Asignar envio a zona de staging

POST /api/logistics/staging-areas/assign
Content-Type: application/json
{
"staging_area_id": "sa_001",
"zone_id": "zone_002",
"shipment_id": "ship_001"
}

Paquetes

Modelo

interface Package {
id: string;
package_number: string; // Numero de bulto
shipment_id: string;
barcode: string;
description: string;
weight: number; // kg
length?: number; // cm
width?: number; // cm
height?: number; // cm
status: 'in_stock' | 'picked' | 'in_transit' | 'delivered';
location?: string; // Ubicacion en almacen
}

Endpoints

GET /api/logistics/packages
POST /api/logistics/packages
GET /api/logistics/packages/:id
PATCH /api/logistics/packages/:id
DELETE /api/logistics/packages/:id

Listar paquetes de un envio

GET /api/logistics/packages?shipment_id=ship_001

Resumen de endpoints

MetodoRutaDescripcion
GET/api/logistics/vehiclesListar vehiculos
POST/api/logistics/vehiclesCrear vehiculo
PATCH/api/logistics/vehicles/:idActualizar vehiculo
POST/api/logistics/vehicles/:id/maintenanceMarcar en mantenimiento
GET/api/logistics/platformsListar plataformas
POST/api/logistics/platformsCrear plataforma
PATCH/api/logistics/platforms/:idActualizar plataforma
GET/api/logistics/staging-areasListar areas de staging
POST/api/logistics/staging-areasCrear area de staging
POST/api/logistics/staging-areas/assignAsignar envio a zona
GET/api/logistics/packagesListar paquetes
POST/api/logistics/packagesCrear paquete