demo seed change 2
This commit is contained in:
@@ -44,10 +44,10 @@
|
||||
"location": "Barcelona Gràcia - Storage",
|
||||
"production_stage": "RAW_MATERIAL",
|
||||
"quality_status": "APPROVED",
|
||||
"expiration_date": "2025-02-20T00:00:00Z",
|
||||
"expiration_date": "BASE_TS + 35d 18h",
|
||||
"supplier_id": "40000000-0000-0000-0000-000000000001",
|
||||
"batch_number": "BCN-HAR-20250115-001",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"enterprise_shared": true,
|
||||
"source_location": "Central Warehouse - Barcelona"
|
||||
},
|
||||
@@ -59,10 +59,10 @@
|
||||
"location": "Barcelona Gràcia - Cold Storage",
|
||||
"production_stage": "RAW_MATERIAL",
|
||||
"quality_status": "APPROVED",
|
||||
"expiration_date": "2025-01-25T00:00:00Z",
|
||||
"expiration_date": "BASE_TS + 9d 18h",
|
||||
"supplier_id": "40000000-0000-0000-0000-000000000002",
|
||||
"batch_number": "BCN-MAN-20250115-001",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"enterprise_shared": true,
|
||||
"source_location": "Central Warehouse - Barcelona"
|
||||
},
|
||||
@@ -74,10 +74,10 @@
|
||||
"location": "Barcelona Gràcia - Display",
|
||||
"production_stage": "FINISHED_PRODUCT",
|
||||
"quality_status": "APPROVED",
|
||||
"expiration_date": "2025-01-16T06:00:00Z",
|
||||
"expiration_date": "BASE_TS + 1d",
|
||||
"supplier_id": null,
|
||||
"batch_number": "BCN-BAG-20250115-001",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"enterprise_shared": true,
|
||||
"source_location": "Central Production Facility - Barcelona"
|
||||
},
|
||||
@@ -89,10 +89,10 @@
|
||||
"location": "Barcelona Gràcia - Display",
|
||||
"production_stage": "FINISHED_PRODUCT",
|
||||
"quality_status": "APPROVED",
|
||||
"expiration_date": "2025-01-16T08:00:00Z",
|
||||
"expiration_date": "BASE_TS + 1d 2h",
|
||||
"supplier_id": null,
|
||||
"batch_number": "BCN-CRO-20250115-001",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"enterprise_shared": true,
|
||||
"source_location": "Central Production Facility - Barcelona"
|
||||
}
|
||||
@@ -107,7 +107,7 @@
|
||||
"unit_price": 2.85,
|
||||
"total_revenue": 99.75,
|
||||
"sales_channel": "RETAIL",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Venda local a Barcelona Gràcia - matí",
|
||||
"enterprise_location_sale": true,
|
||||
"parent_order_id": "60000000-0000-0000-0000-000000003001"
|
||||
@@ -119,9 +119,9 @@
|
||||
"product_id": "20000000-0000-0000-0000-000000000002",
|
||||
"quantity_sold": 18.0,
|
||||
"unit_price": 3.95,
|
||||
"total_revenue": 71.10,
|
||||
"total_revenue": 71.1,
|
||||
"sales_channel": "RETAIL",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Venda de croissants a Barcelona Gràcia",
|
||||
"enterprise_location_sale": true,
|
||||
"parent_order_id": "60000000-0000-0000-0000-000000003002"
|
||||
@@ -133,9 +133,9 @@
|
||||
"product_id": "20000000-0000-0000-0000-000000000001",
|
||||
"quantity_sold": 28.0,
|
||||
"unit_price": 2.85,
|
||||
"total_revenue": 79.80,
|
||||
"total_revenue": 79.8,
|
||||
"sales_channel": "RETAIL",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Venda de tarda a Barcelona Gràcia",
|
||||
"enterprise_location_sale": true,
|
||||
"parent_order_id": "60000000-0000-0000-0000-000000003003"
|
||||
@@ -148,11 +148,11 @@
|
||||
"order_number": "ORD-BCN-GRA-20250115-001",
|
||||
"customer_name": "Restaurant El Vaixell",
|
||||
"customer_email": "comandes@elvaixell.cat",
|
||||
"order_date": "2025-01-15T07:00:00Z",
|
||||
"delivery_date": "2025-01-15T08:30:00Z",
|
||||
"order_date": "BASE_TS + 1h",
|
||||
"delivery_date": "BASE_TS + 2h 30m",
|
||||
"status": "DELIVERED",
|
||||
"total_amount": 99.75,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Comanda matinal per restaurant local",
|
||||
"enterprise_location_order": true
|
||||
},
|
||||
@@ -162,11 +162,11 @@
|
||||
"order_number": "ORD-BCN-GRA-20250115-002",
|
||||
"customer_name": "Cafeteria La Perla",
|
||||
"customer_email": "info@laperla.cat",
|
||||
"order_date": "2025-01-15T06:30:00Z",
|
||||
"delivery_date": "2025-01-15T09:00:00Z",
|
||||
"order_date": "BASE_TS + 30m",
|
||||
"delivery_date": "BASE_TS + 3h",
|
||||
"status": "DELIVERED",
|
||||
"total_amount": 71.10,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"total_amount": 71.1,
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Croissants per cafeteria",
|
||||
"enterprise_location_order": true
|
||||
},
|
||||
@@ -176,11 +176,11 @@
|
||||
"order_number": "ORD-BCN-GRA-20250114-003",
|
||||
"customer_name": "Hotel Casa Fuster",
|
||||
"customer_email": "compras@casafuster.com",
|
||||
"order_date": "2025-01-14T14:00:00Z",
|
||||
"delivery_date": "2025-01-14T17:00:00Z",
|
||||
"order_date": "BASE_TS - 1d 8h",
|
||||
"delivery_date": "BASE_TS - 1d 11h",
|
||||
"status": "DELIVERED",
|
||||
"total_amount": 79.80,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"total_amount": 79.8,
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Comanda de tarda per hotel",
|
||||
"enterprise_location_order": true
|
||||
}
|
||||
@@ -195,13 +195,13 @@
|
||||
"planned_quantity": 100.0,
|
||||
"actual_quantity": 98.0,
|
||||
"status": "COMPLETED",
|
||||
"planned_start_time": "2025-01-15T04:00:00Z",
|
||||
"actual_start_time": "2025-01-15T04:05:00Z",
|
||||
"planned_end_time": "2025-01-15T06:00:00Z",
|
||||
"actual_end_time": "2025-01-15T06:10:00Z",
|
||||
"planned_start_time": "BASE_TS - 1d 22h",
|
||||
"actual_start_time": "BASE_TS - 1d 22h 5m",
|
||||
"planned_end_time": "BASE_TS",
|
||||
"actual_end_time": "BASE_TS + 10m",
|
||||
"equipment_id": "30000000-0000-0000-0000-000000000002",
|
||||
"operator_id": "50000000-0000-0000-0000-000000000012",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Producció matinal de baguettes a Barcelona",
|
||||
"enterprise_location_production": true
|
||||
},
|
||||
@@ -214,13 +214,13 @@
|
||||
"planned_quantity": 50.0,
|
||||
"actual_quantity": null,
|
||||
"status": "IN_PROGRESS",
|
||||
"planned_start_time": "2025-01-15T05:00:00Z",
|
||||
"actual_start_time": "2025-01-15T05:00:00Z",
|
||||
"planned_end_time": "2025-01-15T07:30:00Z",
|
||||
"planned_start_time": "BASE_TS - 1d 23h",
|
||||
"actual_start_time": "BASE_TS - 1d 23h",
|
||||
"planned_end_time": "BASE_TS + 1h 30m",
|
||||
"actual_end_time": null,
|
||||
"equipment_id": "30000000-0000-0000-0000-000000000002",
|
||||
"operator_id": "50000000-0000-0000-0000-000000000013",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Producció de croissants en curs a Barcelona",
|
||||
"enterprise_location_production": true
|
||||
}
|
||||
@@ -230,11 +230,11 @@
|
||||
"id": "80000000-0000-0000-0000-000000002001",
|
||||
"tenant_id": "B0000000-0000-4000-a000-000000000001",
|
||||
"product_id": "20000000-0000-0000-0000-000000000001",
|
||||
"forecast_date": "2025-01-16T00:00:00Z",
|
||||
"forecast_date": "BASE_TS + 18h",
|
||||
"predicted_quantity": 85.0,
|
||||
"confidence_score": 0.91,
|
||||
"forecast_horizon_days": 1,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Previsió de demanda diària per Barcelona Gràcia",
|
||||
"enterprise_location_forecast": true
|
||||
},
|
||||
@@ -242,13 +242,13 @@
|
||||
"id": "80000000-0000-0000-0000-000000002002",
|
||||
"tenant_id": "B0000000-0000-4000-a000-000000000001",
|
||||
"product_id": "20000000-0000-0000-0000-000000000002",
|
||||
"forecast_date": "2025-01-16T00:00:00Z",
|
||||
"forecast_date": "BASE_TS + 18h",
|
||||
"predicted_quantity": 45.0,
|
||||
"confidence_score": 0.89,
|
||||
"forecast_horizon_days": 1,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Previsió de croissants per demà a Barcelona",
|
||||
"enterprise_location_forecast": true
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -41,10 +41,10 @@
|
||||
"location": "Madrid Centro - Storage",
|
||||
"production_stage": "RAW_MATERIAL",
|
||||
"quality_status": "APPROVED",
|
||||
"expiration_date": "2025-02-15T00:00:00Z",
|
||||
"expiration_date": "BASE_TS + 30d 18h",
|
||||
"supplier_id": "40000000-0000-0000-0000-000000000001",
|
||||
"batch_number": "MAD-HAR-20250115-001",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"enterprise_shared": true,
|
||||
"source_location": "Central Warehouse - Madrid"
|
||||
},
|
||||
@@ -56,10 +56,10 @@
|
||||
"location": "Madrid Centro - Display",
|
||||
"production_stage": "FINISHED_PRODUCT",
|
||||
"quality_status": "APPROVED",
|
||||
"expiration_date": "2025-01-16T06:00:00Z",
|
||||
"expiration_date": "BASE_TS + 1d",
|
||||
"supplier_id": null,
|
||||
"batch_number": "MAD-BAG-20250115-001",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"enterprise_shared": true,
|
||||
"source_location": "Central Production Facility - Madrid"
|
||||
}
|
||||
@@ -74,7 +74,7 @@
|
||||
"unit_price": 2.75,
|
||||
"total_revenue": 68.75,
|
||||
"sales_channel": "RETAIL",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Venta local en Madrid Centro",
|
||||
"enterprise_location_sale": true,
|
||||
"parent_order_id": "60000000-0000-0000-0000-000000002001"
|
||||
|
||||
@@ -44,10 +44,10 @@
|
||||
"location": "Valencia Ruzafa - Storage",
|
||||
"production_stage": "RAW_MATERIAL",
|
||||
"quality_status": "APPROVED",
|
||||
"expiration_date": "2025-02-18T00:00:00Z",
|
||||
"expiration_date": "BASE_TS + 33d 18h",
|
||||
"supplier_id": "40000000-0000-0000-0000-000000000001",
|
||||
"batch_number": "VLC-HAR-20250115-001",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"enterprise_shared": true,
|
||||
"source_location": "Central Warehouse - Valencia"
|
||||
},
|
||||
@@ -59,10 +59,10 @@
|
||||
"location": "Valencia Ruzafa - Cold Storage",
|
||||
"production_stage": "RAW_MATERIAL",
|
||||
"quality_status": "APPROVED",
|
||||
"expiration_date": "2025-01-23T00:00:00Z",
|
||||
"expiration_date": "BASE_TS + 7d 18h",
|
||||
"supplier_id": "40000000-0000-0000-0000-000000000002",
|
||||
"batch_number": "VLC-MAN-20250115-001",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"enterprise_shared": true,
|
||||
"source_location": "Central Warehouse - Valencia"
|
||||
},
|
||||
@@ -74,10 +74,10 @@
|
||||
"location": "Valencia Ruzafa - Dry Storage",
|
||||
"production_stage": "RAW_MATERIAL",
|
||||
"quality_status": "APPROVED",
|
||||
"expiration_date": "2026-01-15T00:00:00Z",
|
||||
"expiration_date": "BASE_TS + 364d 18h",
|
||||
"supplier_id": "40000000-0000-0000-0000-000000000003",
|
||||
"batch_number": "VLC-SAL-20250115-001",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"enterprise_shared": true,
|
||||
"source_location": "Central Warehouse - Valencia"
|
||||
},
|
||||
@@ -89,10 +89,10 @@
|
||||
"location": "Valencia Ruzafa - Display",
|
||||
"production_stage": "FINISHED_PRODUCT",
|
||||
"quality_status": "APPROVED",
|
||||
"expiration_date": "2025-01-16T06:00:00Z",
|
||||
"expiration_date": "BASE_TS + 1d",
|
||||
"supplier_id": null,
|
||||
"batch_number": "VLC-BAG-20250115-001",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"enterprise_shared": true,
|
||||
"source_location": "Central Production Facility - Valencia"
|
||||
},
|
||||
@@ -104,10 +104,10 @@
|
||||
"location": "Valencia Ruzafa - Display",
|
||||
"production_stage": "FINISHED_PRODUCT",
|
||||
"quality_status": "APPROVED",
|
||||
"expiration_date": "2025-01-17T06:00:00Z",
|
||||
"expiration_date": "BASE_TS + 2d",
|
||||
"supplier_id": null,
|
||||
"batch_number": "VLC-PAN-20250115-001",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"enterprise_shared": true,
|
||||
"source_location": "Central Production Facility - Valencia"
|
||||
}
|
||||
@@ -119,10 +119,10 @@
|
||||
"sale_date": "2025-01-15T08:00:00Z",
|
||||
"product_id": "20000000-0000-0000-0000-000000000001",
|
||||
"quantity_sold": 32.0,
|
||||
"unit_price": 2.70,
|
||||
"total_revenue": 86.40,
|
||||
"unit_price": 2.7,
|
||||
"total_revenue": 86.4,
|
||||
"sales_channel": "RETAIL",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Venta local en Valencia Ruzafa - mañana",
|
||||
"enterprise_location_sale": true,
|
||||
"parent_order_id": "60000000-0000-0000-0000-000000004001"
|
||||
@@ -133,10 +133,10 @@
|
||||
"sale_date": "2025-01-15T10:00:00Z",
|
||||
"product_id": "20000000-0000-0000-0000-000000000003",
|
||||
"quantity_sold": 15.0,
|
||||
"unit_price": 2.40,
|
||||
"total_revenue": 36.00,
|
||||
"unit_price": 2.4,
|
||||
"total_revenue": 36.0,
|
||||
"sales_channel": "RETAIL",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Venta de pan de campo en Valencia",
|
||||
"enterprise_location_sale": true,
|
||||
"parent_order_id": "60000000-0000-0000-0000-000000004002"
|
||||
@@ -147,10 +147,10 @@
|
||||
"sale_date": "2025-01-14T18:30:00Z",
|
||||
"product_id": "20000000-0000-0000-0000-000000000001",
|
||||
"quantity_sold": 24.0,
|
||||
"unit_price": 2.70,
|
||||
"total_revenue": 64.80,
|
||||
"unit_price": 2.7,
|
||||
"total_revenue": 64.8,
|
||||
"sales_channel": "RETAIL",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Venta de tarde en Valencia Ruzafa",
|
||||
"enterprise_location_sale": true,
|
||||
"parent_order_id": "60000000-0000-0000-0000-000000004003"
|
||||
@@ -163,11 +163,11 @@
|
||||
"order_number": "ORD-VLC-RUZ-20250115-001",
|
||||
"customer_name": "Mercado de Ruzafa - Puesto 12",
|
||||
"customer_email": "puesto12@mercadoruzafa.es",
|
||||
"order_date": "2025-01-15T06:30:00Z",
|
||||
"delivery_date": "2025-01-15T08:00:00Z",
|
||||
"order_date": "BASE_TS + 30m",
|
||||
"delivery_date": "BASE_TS + 2h",
|
||||
"status": "DELIVERED",
|
||||
"total_amount": 86.40,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"total_amount": 86.4,
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Pedido matinal para puesto de mercado",
|
||||
"enterprise_location_order": true
|
||||
},
|
||||
@@ -177,11 +177,11 @@
|
||||
"order_number": "ORD-VLC-RUZ-20250115-002",
|
||||
"customer_name": "Bar La Pilareta",
|
||||
"customer_email": "pedidos@lapilareta.es",
|
||||
"order_date": "2025-01-15T07:00:00Z",
|
||||
"delivery_date": "2025-01-15T10:00:00Z",
|
||||
"order_date": "BASE_TS + 1h",
|
||||
"delivery_date": "BASE_TS + 4h",
|
||||
"status": "DELIVERED",
|
||||
"total_amount": 36.00,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"total_amount": 36.0,
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Pan de campo para bar tradicional",
|
||||
"enterprise_location_order": true
|
||||
},
|
||||
@@ -191,11 +191,11 @@
|
||||
"order_number": "ORD-VLC-RUZ-20250114-003",
|
||||
"customer_name": "Restaurante La Riuà",
|
||||
"customer_email": "compras@lariua.com",
|
||||
"order_date": "2025-01-14T16:00:00Z",
|
||||
"delivery_date": "2025-01-14T18:30:00Z",
|
||||
"order_date": "BASE_TS - 1d 10h",
|
||||
"delivery_date": "BASE_TS - 1d 12h 30m",
|
||||
"status": "DELIVERED",
|
||||
"total_amount": 64.80,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"total_amount": 64.8,
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Pedido de tarde para restaurante",
|
||||
"enterprise_location_order": true
|
||||
},
|
||||
@@ -205,11 +205,11 @@
|
||||
"order_number": "ORD-VLC-RUZ-20250116-004",
|
||||
"customer_name": "Hotel Sorolla Palace",
|
||||
"customer_email": "aprovisionamiento@sorollapalace.com",
|
||||
"order_date": "2025-01-15T11:00:00Z",
|
||||
"delivery_date": "2025-01-16T07:00:00Z",
|
||||
"order_date": "BASE_TS + 5h",
|
||||
"delivery_date": "BASE_TS + 1d 1h",
|
||||
"status": "CONFIRMED",
|
||||
"total_amount": 125.50,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"total_amount": 125.5,
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Pedido para desayuno buffet del hotel - entrega mañana",
|
||||
"enterprise_location_order": true
|
||||
}
|
||||
@@ -224,13 +224,13 @@
|
||||
"planned_quantity": 90.0,
|
||||
"actual_quantity": 88.0,
|
||||
"status": "COMPLETED",
|
||||
"planned_start_time": "2025-01-15T03:30:00Z",
|
||||
"actual_start_time": "2025-01-15T03:35:00Z",
|
||||
"planned_end_time": "2025-01-15T05:30:00Z",
|
||||
"actual_end_time": "2025-01-15T05:40:00Z",
|
||||
"planned_start_time": "BASE_TS - 1d 21h 30m",
|
||||
"actual_start_time": "BASE_TS - 1d 21h 35m",
|
||||
"planned_end_time": "BASE_TS - 1d 23h 30m",
|
||||
"actual_end_time": "BASE_TS - 1d 23h 40m",
|
||||
"equipment_id": "30000000-0000-0000-0000-000000000003",
|
||||
"operator_id": "50000000-0000-0000-0000-000000000013",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Producción matinal de baguettes en Valencia",
|
||||
"enterprise_location_production": true
|
||||
},
|
||||
@@ -243,13 +243,13 @@
|
||||
"planned_quantity": 40.0,
|
||||
"actual_quantity": 40.0,
|
||||
"status": "COMPLETED",
|
||||
"planned_start_time": "2025-01-15T04:00:00Z",
|
||||
"actual_start_time": "2025-01-15T04:00:00Z",
|
||||
"planned_end_time": "2025-01-15T06:30:00Z",
|
||||
"actual_end_time": "2025-01-15T06:25:00Z",
|
||||
"planned_start_time": "BASE_TS - 1d 22h",
|
||||
"actual_start_time": "BASE_TS - 1d 22h",
|
||||
"planned_end_time": "BASE_TS + 30m",
|
||||
"actual_end_time": "BASE_TS + 25m",
|
||||
"equipment_id": "30000000-0000-0000-0000-000000000003",
|
||||
"operator_id": "50000000-0000-0000-0000-000000000014",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Producción de pan de campo completada",
|
||||
"enterprise_location_production": true
|
||||
},
|
||||
@@ -262,13 +262,13 @@
|
||||
"planned_quantity": 120.0,
|
||||
"actual_quantity": null,
|
||||
"status": "SCHEDULED",
|
||||
"planned_start_time": "2025-01-16T03:30:00Z",
|
||||
"planned_start_time": "BASE_TS + 21h 30m",
|
||||
"actual_start_time": null,
|
||||
"planned_end_time": "2025-01-16T05:30:00Z",
|
||||
"planned_end_time": "BASE_TS + 23h 30m",
|
||||
"actual_end_time": null,
|
||||
"equipment_id": "30000000-0000-0000-0000-000000000003",
|
||||
"operator_id": "50000000-0000-0000-0000-000000000013",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Lote programado para mañana - pedido de hotel",
|
||||
"enterprise_location_production": true
|
||||
}
|
||||
@@ -278,11 +278,11 @@
|
||||
"id": "80000000-0000-0000-0000-000000003001",
|
||||
"tenant_id": "V0000000-0000-4000-a000-000000000001",
|
||||
"product_id": "20000000-0000-0000-0000-000000000001",
|
||||
"forecast_date": "2025-01-16T00:00:00Z",
|
||||
"forecast_date": "BASE_TS + 18h",
|
||||
"predicted_quantity": 78.0,
|
||||
"confidence_score": 0.90,
|
||||
"confidence_score": 0.9,
|
||||
"forecast_horizon_days": 1,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Previsión de demanda diaria para Valencia Ruzafa",
|
||||
"enterprise_location_forecast": true
|
||||
},
|
||||
@@ -290,11 +290,11 @@
|
||||
"id": "80000000-0000-0000-0000-000000003002",
|
||||
"tenant_id": "V0000000-0000-4000-a000-000000000001",
|
||||
"product_id": "20000000-0000-0000-0000-000000000003",
|
||||
"forecast_date": "2025-01-16T00:00:00Z",
|
||||
"forecast_date": "BASE_TS + 18h",
|
||||
"predicted_quantity": 35.0,
|
||||
"confidence_score": 0.87,
|
||||
"forecast_horizon_days": 1,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Previsión de pan de campo para mañana",
|
||||
"enterprise_location_forecast": true
|
||||
},
|
||||
@@ -302,13 +302,13 @@
|
||||
"id": "80000000-0000-0000-0000-000000003003",
|
||||
"tenant_id": "V0000000-0000-4000-a000-000000000001",
|
||||
"product_id": "20000000-0000-0000-0000-000000000001",
|
||||
"forecast_date": "2025-01-17T00:00:00Z",
|
||||
"forecast_date": "BASE_TS + 1d 18h",
|
||||
"predicted_quantity": 95.0,
|
||||
"confidence_score": 0.93,
|
||||
"forecast_horizon_days": 2,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Previsión fin de semana - aumento de demanda esperado",
|
||||
"enterprise_location_forecast": true
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -9,7 +9,7 @@
|
||||
"position": "CEO",
|
||||
"phone": "+34 912 345 678",
|
||||
"status": "ACTIVE",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"last_login": "2025-01-15T06:00:00Z",
|
||||
"permissions": [
|
||||
"all_access",
|
||||
@@ -27,7 +27,7 @@
|
||||
"position": "Head of Production",
|
||||
"phone": "+34 913 456 789",
|
||||
"status": "ACTIVE",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"last_login": "2025-01-15T06:00:00Z",
|
||||
"permissions": [
|
||||
"production_management",
|
||||
@@ -45,7 +45,7 @@
|
||||
"position": "Quality Assurance Manager",
|
||||
"phone": "+34 914 567 890",
|
||||
"status": "ACTIVE",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"last_login": "2025-01-15T06:00:00Z",
|
||||
"permissions": [
|
||||
"quality_control",
|
||||
@@ -63,7 +63,7 @@
|
||||
"position": "Logistics Coordinator",
|
||||
"phone": "+34 915 678 901",
|
||||
"status": "ACTIVE",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"last_login": "2025-01-15T06:00:00Z",
|
||||
"permissions": [
|
||||
"logistics_management",
|
||||
@@ -81,7 +81,7 @@
|
||||
"position": "Sales Director",
|
||||
"phone": "+34 916 789 012",
|
||||
"status": "ACTIVE",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"last_login": "2025-01-15T06:00:00Z",
|
||||
"permissions": [
|
||||
"sales_management",
|
||||
@@ -100,7 +100,7 @@
|
||||
"position": "Procurement Manager",
|
||||
"phone": "+34 917 890 123",
|
||||
"status": "ACTIVE",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"last_login": "2025-01-15T06:00:00Z",
|
||||
"permissions": [
|
||||
"procurement_management",
|
||||
@@ -119,7 +119,7 @@
|
||||
"position": "Maintenance Supervisor",
|
||||
"phone": "+34 918 901 234",
|
||||
"status": "ACTIVE",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"last_login": "2025-01-15T06:00:00Z",
|
||||
"permissions": [
|
||||
"equipment_maintenance",
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
"brand": "Molinos San José - Enterprise",
|
||||
"unit_of_measure": "KILOGRAMS",
|
||||
"package_size": null,
|
||||
"average_cost": 0.80,
|
||||
"average_cost": 0.8,
|
||||
"last_purchase_price": null,
|
||||
"standard_cost": null,
|
||||
"low_stock_threshold": 500.0,
|
||||
@@ -37,11 +37,15 @@
|
||||
"nutritional_info": null,
|
||||
"produced_locally": false,
|
||||
"recipe_id": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"created_by": "d2e3f4a5-b6c7-48d9-e0f1-a2b3c4d5e6f7",
|
||||
"enterprise_shared": true,
|
||||
"shared_locations": ["Madrid Centro", "Barcelona Gràcia", "Valencia Ruzafa"]
|
||||
"shared_locations": [
|
||||
"Madrid Centro",
|
||||
"Barcelona Gràcia",
|
||||
"Valencia Ruzafa"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "10000000-0000-0000-0000-000000000002",
|
||||
@@ -57,7 +61,7 @@
|
||||
"brand": "Lescure - Enterprise",
|
||||
"unit_of_measure": "KILOGRAMS",
|
||||
"package_size": null,
|
||||
"average_cost": 4.20,
|
||||
"average_cost": 4.2,
|
||||
"last_purchase_price": null,
|
||||
"standard_cost": null,
|
||||
"low_stock_threshold": 200.0,
|
||||
@@ -80,11 +84,15 @@
|
||||
"nutritional_info": null,
|
||||
"produced_locally": false,
|
||||
"recipe_id": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"created_by": "d2e3f4a5-b6c7-48d9-e0f1-a2b3c4d5e6f7",
|
||||
"enterprise_shared": true,
|
||||
"shared_locations": ["Madrid Centro", "Barcelona Gràcia", "Valencia Ruzafa"]
|
||||
"shared_locations": [
|
||||
"Madrid Centro",
|
||||
"Barcelona Gràcia",
|
||||
"Valencia Ruzafa"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "20000000-0000-0000-0000-000000000001",
|
||||
@@ -100,7 +108,7 @@
|
||||
"brand": "Panadería Central",
|
||||
"unit_of_measure": "UNITS",
|
||||
"package_size": null,
|
||||
"average_cost": 1.80,
|
||||
"average_cost": 1.8,
|
||||
"last_purchase_price": null,
|
||||
"standard_cost": null,
|
||||
"low_stock_threshold": 100.0,
|
||||
@@ -124,11 +132,15 @@
|
||||
"nutritional_info": null,
|
||||
"produced_locally": true,
|
||||
"recipe_id": "30000000-0000-0000-0000-000000000001",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"created_by": "d2e3f4a5-b6c7-48d9-e0f1-a2b3c4d5e6f7",
|
||||
"enterprise_shared": true,
|
||||
"shared_locations": ["Madrid Centro", "Barcelona Gràcia", "Valencia Ruzafa"]
|
||||
"shared_locations": [
|
||||
"Madrid Centro",
|
||||
"Barcelona Gràcia",
|
||||
"Valencia Ruzafa"
|
||||
]
|
||||
}
|
||||
],
|
||||
"stock": [
|
||||
@@ -140,11 +152,11 @@
|
||||
"location": "Central Warehouse - Madrid",
|
||||
"production_stage": "RAW_MATERIAL",
|
||||
"quality_status": "APPROVED",
|
||||
"expiration_date": "2025-07-15T00:00:00Z",
|
||||
"expiration_date": "BASE_TS + 180d 18h",
|
||||
"supplier_id": "40000000-0000-0000-0000-000000000001",
|
||||
"batch_number": "ENT-HAR-20250115-001",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"enterprise_shared": true
|
||||
},
|
||||
{
|
||||
@@ -155,11 +167,11 @@
|
||||
"location": "Central Warehouse - Madrid",
|
||||
"production_stage": "RAW_MATERIAL",
|
||||
"quality_status": "APPROVED",
|
||||
"expiration_date": "2025-02-15T00:00:00Z",
|
||||
"expiration_date": "BASE_TS + 30d 18h",
|
||||
"supplier_id": "40000000-0000-0000-0000-000000000002",
|
||||
"batch_number": "ENT-MAN-20250115-001",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"enterprise_shared": true
|
||||
},
|
||||
{
|
||||
@@ -170,11 +182,11 @@
|
||||
"location": "Central Warehouse - Madrid",
|
||||
"production_stage": "FINISHED_PRODUCT",
|
||||
"quality_status": "APPROVED",
|
||||
"expiration_date": "2025-01-16T06:00:00Z",
|
||||
"expiration_date": "BASE_TS + 1d",
|
||||
"supplier_id": null,
|
||||
"batch_number": "ENT-BAG-20250115-001",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"enterprise_shared": true
|
||||
}
|
||||
]
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
"cook_time_minutes": 25,
|
||||
"total_time_minutes": 180,
|
||||
"rest_time_minutes": 120,
|
||||
"estimated_cost_per_unit": 1.80,
|
||||
"estimated_cost_per_unit": 1.8,
|
||||
"last_calculated_cost": 1.75,
|
||||
"cost_calculation_date": "2025-01-14T00:00:00Z",
|
||||
"target_margin_percentage": 65.0,
|
||||
@@ -25,11 +25,15 @@
|
||||
"status": "APPROVED",
|
||||
"is_active": true,
|
||||
"is_standardized": true,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"created_by": "50000000-0000-0000-0000-000000000011",
|
||||
"enterprise_standard": true,
|
||||
"applicable_locations": ["Madrid Centro", "Barcelona Gràcia", "Valencia Ruzafa"],
|
||||
"applicable_locations": [
|
||||
"Madrid Centro",
|
||||
"Barcelona Gràcia",
|
||||
"Valencia Ruzafa"
|
||||
],
|
||||
"instructions": {
|
||||
"steps": [
|
||||
{
|
||||
@@ -94,7 +98,7 @@
|
||||
"10000000-0000-0000-0000-000000000002"
|
||||
],
|
||||
"is_essential": true,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"enterprise_standard": true
|
||||
},
|
||||
{
|
||||
@@ -106,7 +110,7 @@
|
||||
"unit": "kilograms",
|
||||
"substitution_options": [],
|
||||
"is_essential": false,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"enterprise_standard": true,
|
||||
"notes": "Solo para versión premium"
|
||||
}
|
||||
|
||||
@@ -21,9 +21,18 @@
|
||||
"lead_time_days": 2,
|
||||
"contract_start_date": "2024-01-01T00:00:00Z",
|
||||
"contract_end_date": "2025-12-31T23:59:59Z",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"specialties": ["flour", "bread_improvers", "enterprise_supply"],
|
||||
"delivery_areas": ["Madrid", "Barcelona", "Valencia", "Basque Country"],
|
||||
"created_at": "BASE_TS",
|
||||
"specialties": [
|
||||
"flour",
|
||||
"bread_improvers",
|
||||
"enterprise_supply"
|
||||
],
|
||||
"delivery_areas": [
|
||||
"Madrid",
|
||||
"Barcelona",
|
||||
"Valencia",
|
||||
"Basque Country"
|
||||
],
|
||||
"enterprise_contract": true,
|
||||
"contract_type": "national_supply_agreement",
|
||||
"annual_volume_commitment": 50000.0,
|
||||
@@ -50,9 +59,18 @@
|
||||
"lead_time_days": 1,
|
||||
"contract_start_date": "2024-03-15T00:00:00Z",
|
||||
"contract_end_date": "2025-12-31T23:59:59Z",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"specialties": ["butter", "cream", "enterprise_dairy"],
|
||||
"delivery_areas": ["Madrid", "Barcelona", "Valencia", "Basque Country"],
|
||||
"created_at": "BASE_TS",
|
||||
"specialties": [
|
||||
"butter",
|
||||
"cream",
|
||||
"enterprise_dairy"
|
||||
],
|
||||
"delivery_areas": [
|
||||
"Madrid",
|
||||
"Barcelona",
|
||||
"Valencia",
|
||||
"Basque Country"
|
||||
],
|
||||
"enterprise_contract": true,
|
||||
"contract_type": "premium_dairy_supply",
|
||||
"annual_volume_commitment": 12000.0,
|
||||
|
||||
@@ -11,9 +11,9 @@
|
||||
"manufacturer": "Sveba Dahlen",
|
||||
"firmware_version": "4.2.1",
|
||||
"status": "OPERATIONAL",
|
||||
"install_date": "2024-06-15T00:00:00Z",
|
||||
"last_maintenance_date": "2025-01-10T00:00:00Z",
|
||||
"next_maintenance_date": "2025-04-10T00:00:00Z",
|
||||
"install_date": "BASE_TS - 215d 18h",
|
||||
"last_maintenance_date": "BASE_TS - 6d 18h",
|
||||
"next_maintenance_date": "BASE_TS + 84d 18h",
|
||||
"maintenance_interval_days": 90,
|
||||
"efficiency_percentage": 95.0,
|
||||
"uptime_percentage": 97.0,
|
||||
@@ -37,10 +37,14 @@
|
||||
"supports_remote_control": true,
|
||||
"is_active": true,
|
||||
"notes": "Equipo principal para producción masiva",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"enterprise_asset": true,
|
||||
"shared_locations": ["Madrid Centro", "Barcelona Gràcia", "Valencia Ruzafa"]
|
||||
"shared_locations": [
|
||||
"Madrid Centro",
|
||||
"Barcelona Gràcia",
|
||||
"Valencia Ruzafa"
|
||||
]
|
||||
}
|
||||
],
|
||||
"production_batches": [
|
||||
@@ -52,8 +56,8 @@
|
||||
"recipe_id": "30000000-0000-0000-0000-000000000001",
|
||||
"equipment_id": "30000000-0000-0000-0000-000000000001",
|
||||
"status": "IN_PROGRESS",
|
||||
"start_time": "2025-01-15T06:30:00Z",
|
||||
"end_time": "2025-01-15T10:30:00Z",
|
||||
"start_time": "BASE_TS + 30m",
|
||||
"end_time": "BASE_TS + 4h 30m",
|
||||
"planned_quantity": 250.0,
|
||||
"actual_quantity": 200.0,
|
||||
"waste_quantity": 5.0,
|
||||
@@ -61,8 +65,8 @@
|
||||
"production_line": "Linea 1 - Baguettes",
|
||||
"shift": "Morning",
|
||||
"supervisor_id": "50000000-0000-0000-0000-000000000011",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"enterprise_batch": true,
|
||||
"production_facility": "Central Production Facility - Madrid",
|
||||
"distribution_plan": [
|
||||
|
||||
@@ -7,11 +7,11 @@
|
||||
"tenant_id": "80000000-0000-4000-a000-000000000001",
|
||||
"po_number": "ENT-PO-20250115-001",
|
||||
"supplier_id": "40000000-0000-0000-0000-000000000001",
|
||||
"order_date": "2025-01-14T10:00:00Z",
|
||||
"expected_delivery_date": "2025-01-16T10:00:00Z",
|
||||
"order_date": "BASE_TS - 1d 4h",
|
||||
"expected_delivery_date": "BASE_TS + 1d 4h",
|
||||
"status": "pending_approval",
|
||||
"total_amount": 650.00,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"total_amount": 650.0,
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Pedido semanal de harina para producción central",
|
||||
"enterprise_order": true,
|
||||
"contract_reference": "ENT-HARINA-2024-001",
|
||||
@@ -27,9 +27,9 @@
|
||||
"po_id": "50000000-0000-0000-0000-000000002001",
|
||||
"ingredient_id": "10000000-0000-0000-0000-000000000001",
|
||||
"quantity": 800.0,
|
||||
"unit_price": 0.80,
|
||||
"total_price": 640.00,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"unit_price": 0.8,
|
||||
"total_price": 640.0,
|
||||
"created_at": "BASE_TS",
|
||||
"enterprise_item": true,
|
||||
"delivery_schedule": [
|
||||
{
|
||||
@@ -45,9 +45,9 @@
|
||||
"po_id": "50000000-0000-0000-0000-000000002001",
|
||||
"ingredient_id": "10000000-0000-0000-0000-000000000002",
|
||||
"quantity": 12.5,
|
||||
"unit_price": 4.00,
|
||||
"total_price": 50.00,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"unit_price": 4.0,
|
||||
"total_price": 50.0,
|
||||
"created_at": "BASE_TS",
|
||||
"enterprise_item": true,
|
||||
"delivery_schedule": [
|
||||
{
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
"status": "ACTIVE",
|
||||
"total_orders": 125,
|
||||
"total_spent": 18500.75,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Cadena hotelera con 15 ubicaciones en España",
|
||||
"contract_type": "national_supply_agreement",
|
||||
"annual_volume_commitment": 25000.0,
|
||||
@@ -36,11 +36,11 @@
|
||||
"tenant_id": "80000000-0000-4000-a000-000000000001",
|
||||
"customer_id": "60000000-0000-0000-0000-000000002001",
|
||||
"order_number": "ENT-ORD-20250115-001",
|
||||
"order_date": "2025-01-14T11:00:00Z",
|
||||
"delivery_date": "2025-01-15T09:00:00Z",
|
||||
"order_date": "BASE_TS - 1d 5h",
|
||||
"delivery_date": "BASE_TS + 3h",
|
||||
"status": "DELIVERED",
|
||||
"total_amount": 650.50,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"total_amount": 650.5,
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Pedido semanal para 5 hoteles",
|
||||
"enterprise_order": true,
|
||||
"contract_reference": "ENT-HOTEL-2024-001",
|
||||
@@ -70,9 +70,9 @@
|
||||
"order_id": "60000000-0000-0000-0000-000000002001",
|
||||
"product_id": "20000000-0000-0000-0000-000000000001",
|
||||
"quantity": 100.0,
|
||||
"unit_price": 2.50,
|
||||
"total_price": 250.00,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"unit_price": 2.5,
|
||||
"total_price": 250.0,
|
||||
"created_at": "BASE_TS",
|
||||
"enterprise_item": true
|
||||
},
|
||||
{
|
||||
@@ -83,7 +83,7 @@
|
||||
"quantity": 25.0,
|
||||
"unit_price": 3.75,
|
||||
"total_price": 93.75,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"enterprise_item": true
|
||||
},
|
||||
{
|
||||
@@ -93,8 +93,8 @@
|
||||
"product_id": "20000000-0000-0000-0000-000000000003",
|
||||
"quantity": 20.0,
|
||||
"unit_price": 2.25,
|
||||
"total_price": 45.00,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"total_price": 45.0,
|
||||
"created_at": "BASE_TS",
|
||||
"enterprise_item": true
|
||||
},
|
||||
{
|
||||
@@ -105,7 +105,7 @@
|
||||
"quantity": 15.0,
|
||||
"unit_price": 1.75,
|
||||
"total_price": 26.25,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"enterprise_item": true
|
||||
}
|
||||
]
|
||||
|
||||
@@ -6,10 +6,10 @@
|
||||
"sale_date": "2025-01-14T10:00:00Z",
|
||||
"product_id": "20000000-0000-0000-0000-000000000001",
|
||||
"quantity_sold": 250.0,
|
||||
"unit_price": 2.50,
|
||||
"total_revenue": 625.00,
|
||||
"unit_price": 2.5,
|
||||
"total_revenue": 625.0,
|
||||
"sales_channel": "ENTERPRISE",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Venta a Grupo Hotelero Mediterráneo",
|
||||
"enterprise_sale": true,
|
||||
"customer_id": "60000000-0000-0000-0000-000000002001",
|
||||
@@ -27,9 +27,9 @@
|
||||
"product_id": "20000000-0000-0000-0000-000000000002",
|
||||
"quantity_sold": 50.0,
|
||||
"unit_price": 3.75,
|
||||
"total_revenue": 187.50,
|
||||
"total_revenue": 187.5,
|
||||
"sales_channel": "ENTERPRISE",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Venta a Grupo Hotelero Mediterráneo",
|
||||
"enterprise_sale": true,
|
||||
"customer_id": "60000000-0000-0000-0000-000000002001",
|
||||
@@ -42,9 +42,9 @@
|
||||
"product_id": "20000000-0000-0000-0000-000000000003",
|
||||
"quantity_sold": 40.0,
|
||||
"unit_price": 2.25,
|
||||
"total_revenue": 90.00,
|
||||
"total_revenue": 90.0,
|
||||
"sales_channel": "ENTERPRISE",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Venta a Grupo Hotelero Mediterráneo",
|
||||
"enterprise_sale": true,
|
||||
"customer_id": "60000000-0000-0000-0000-000000002001",
|
||||
@@ -57,9 +57,9 @@
|
||||
"product_id": "20000000-0000-0000-0000-000000000004",
|
||||
"quantity_sold": 30.0,
|
||||
"unit_price": 1.75,
|
||||
"total_revenue": 52.50,
|
||||
"total_revenue": 52.5,
|
||||
"sales_channel": "ENTERPRISE",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Venta a Grupo Hotelero Mediterráneo",
|
||||
"enterprise_sale": true,
|
||||
"customer_id": "60000000-0000-0000-0000-000000002001",
|
||||
|
||||
@@ -4,11 +4,11 @@
|
||||
"id": "80000000-0000-0000-0000-000000002001",
|
||||
"tenant_id": "80000000-0000-4000-a000-000000000001",
|
||||
"product_id": "20000000-0000-0000-0000-000000000001",
|
||||
"forecast_date": "2025-01-16T00:00:00Z",
|
||||
"forecast_date": "BASE_TS + 18h",
|
||||
"predicted_quantity": 300.0,
|
||||
"confidence_score": 0.95,
|
||||
"forecast_horizon_days": 1,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Demanda diaria enterprise para 15 hoteles",
|
||||
"enterprise_forecast": true,
|
||||
"forecast_type": "contractual_commitment",
|
||||
@@ -26,11 +26,11 @@
|
||||
"id": "80000000-0000-0000-0000-000000002002",
|
||||
"tenant_id": "80000000-0000-4000-a000-000000000001",
|
||||
"product_id": "20000000-0000-0000-0000-000000000002",
|
||||
"forecast_date": "2025-01-16T00:00:00Z",
|
||||
"forecast_date": "BASE_TS + 18h",
|
||||
"predicted_quantity": 60.0,
|
||||
"confidence_score": 0.92,
|
||||
"forecast_horizon_days": 1,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Demanda diaria enterprise para desayunos",
|
||||
"enterprise_forecast": true,
|
||||
"forecast_type": "contractual_commitment",
|
||||
@@ -41,11 +41,11 @@
|
||||
"id": "80000000-0000-0000-0000-000000002099",
|
||||
"tenant_id": "80000000-0000-4000-a000-000000000001",
|
||||
"product_id": "20000000-0000-0000-0000-000000000001",
|
||||
"forecast_date": "2025-01-17T00:00:00Z",
|
||||
"forecast_date": "BASE_TS + 1d 18h",
|
||||
"predicted_quantity": 450.0,
|
||||
"confidence_score": 0.98,
|
||||
"forecast_horizon_days": 2,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Demanda de fin de semana - evento especial",
|
||||
"enterprise_forecast": true,
|
||||
"forecast_type": "special_event",
|
||||
@@ -67,10 +67,10 @@
|
||||
"id": "80000000-0000-0000-0000-000000002101",
|
||||
"tenant_id": "80000000-0000-4000-a000-000000000001",
|
||||
"batch_id": "ENT-FCST-20250116-001",
|
||||
"prediction_date": "2025-01-15T06:00:00Z",
|
||||
"prediction_date": "BASE_TS",
|
||||
"status": "COMPLETED",
|
||||
"total_forecasts": 3,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Predicción diaria para contratos enterprise",
|
||||
"enterprise_batch": true,
|
||||
"forecast_horizon": "48_hours",
|
||||
|
||||
@@ -7,8 +7,8 @@
|
||||
"email": "maria.garcia@panaderiaartesana.com",
|
||||
"role": "owner",
|
||||
"is_active": true,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z"
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS"
|
||||
},
|
||||
{
|
||||
"id": "50000000-0000-0000-0000-000000000001",
|
||||
@@ -17,8 +17,8 @@
|
||||
"email": "juan.panadero@panaderiaartesana.com",
|
||||
"role": "baker",
|
||||
"is_active": true,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z"
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS"
|
||||
},
|
||||
{
|
||||
"id": "50000000-0000-0000-0000-000000000002",
|
||||
@@ -27,8 +27,8 @@
|
||||
"email": "ana.ventas@panaderiaartesana.com",
|
||||
"role": "sales",
|
||||
"is_active": true,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z"
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS"
|
||||
},
|
||||
{
|
||||
"id": "50000000-0000-0000-0000-000000000003",
|
||||
@@ -37,8 +37,8 @@
|
||||
"email": "pedro.calidad@panaderiaartesana.com",
|
||||
"role": "quality_control",
|
||||
"is_active": true,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z"
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS"
|
||||
},
|
||||
{
|
||||
"id": "50000000-0000-0000-0000-000000000004",
|
||||
@@ -47,8 +47,8 @@
|
||||
"email": "laura.admin@panaderiaartesana.com",
|
||||
"role": "admin",
|
||||
"is_active": true,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z"
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS"
|
||||
},
|
||||
{
|
||||
"id": "50000000-0000-0000-0000-000000000005",
|
||||
@@ -57,8 +57,8 @@
|
||||
"email": "carlos.almacen@panaderiaartesana.com",
|
||||
"role": "warehouse",
|
||||
"is_active": true,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z"
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS"
|
||||
},
|
||||
{
|
||||
"id": "50000000-0000-0000-0000-000000000006",
|
||||
@@ -67,8 +67,8 @@
|
||||
"email": "isabel.produccion@panaderiaartesana.com",
|
||||
"role": "production_manager",
|
||||
"is_active": true,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z"
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -37,8 +37,8 @@
|
||||
"nutritional_info": null,
|
||||
"produced_locally": false,
|
||||
"recipe_id": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"created_by": "c1a2b3c4-d5e6-47a8-b9c0-d1e2f3a4b5c6"
|
||||
},
|
||||
{
|
||||
@@ -78,8 +78,8 @@
|
||||
"nutritional_info": null,
|
||||
"produced_locally": false,
|
||||
"recipe_id": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"created_by": "c1a2b3c4-d5e6-47a8-b9c0-d1e2f3a4b5c6"
|
||||
},
|
||||
{
|
||||
@@ -119,8 +119,8 @@
|
||||
"nutritional_info": null,
|
||||
"produced_locally": false,
|
||||
"recipe_id": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"created_by": "c1a2b3c4-d5e6-47a8-b9c0-d1e2f3a4b5c6"
|
||||
},
|
||||
{
|
||||
@@ -160,8 +160,8 @@
|
||||
"nutritional_info": null,
|
||||
"produced_locally": false,
|
||||
"recipe_id": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"created_by": "c1a2b3c4-d5e6-47a8-b9c0-d1e2f3a4b5c6"
|
||||
},
|
||||
{
|
||||
@@ -201,8 +201,8 @@
|
||||
"nutritional_info": null,
|
||||
"produced_locally": false,
|
||||
"recipe_id": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"created_by": "c1a2b3c4-d5e6-47a8-b9c0-d1e2f3a4b5c6"
|
||||
},
|
||||
{
|
||||
@@ -242,8 +242,8 @@
|
||||
"nutritional_info": null,
|
||||
"produced_locally": false,
|
||||
"recipe_id": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"created_by": "c1a2b3c4-d5e6-47a8-b9c0-d1e2f3a4b5c6"
|
||||
},
|
||||
{
|
||||
@@ -283,8 +283,8 @@
|
||||
"nutritional_info": null,
|
||||
"produced_locally": false,
|
||||
"recipe_id": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"created_by": "c1a2b3c4-d5e6-47a8-b9c0-d1e2f3a4b5c6"
|
||||
},
|
||||
{
|
||||
@@ -324,8 +324,8 @@
|
||||
"nutritional_info": null,
|
||||
"produced_locally": false,
|
||||
"recipe_id": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"created_by": "c1a2b3c4-d5e6-47a8-b9c0-d1e2f3a4b5c6"
|
||||
},
|
||||
{
|
||||
@@ -365,8 +365,8 @@
|
||||
"nutritional_info": null,
|
||||
"produced_locally": false,
|
||||
"recipe_id": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"created_by": "c1a2b3c4-d5e6-47a8-b9c0-d1e2f3a4b5c6"
|
||||
},
|
||||
{
|
||||
@@ -406,8 +406,8 @@
|
||||
"nutritional_info": null,
|
||||
"produced_locally": false,
|
||||
"recipe_id": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"created_by": "c1a2b3c4-d5e6-47a8-b9c0-d1e2f3a4b5c6"
|
||||
},
|
||||
{
|
||||
@@ -445,8 +445,8 @@
|
||||
"nutritional_info": null,
|
||||
"produced_locally": false,
|
||||
"recipe_id": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"created_by": "c1a2b3c4-d5e6-47a8-b9c0-d1e2f3a4b5c6"
|
||||
},
|
||||
{
|
||||
@@ -484,8 +484,8 @@
|
||||
"nutritional_info": null,
|
||||
"produced_locally": false,
|
||||
"recipe_id": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"created_by": "c1a2b3c4-d5e6-47a8-b9c0-d1e2f3a4b5c6"
|
||||
},
|
||||
{
|
||||
@@ -525,8 +525,8 @@
|
||||
"nutritional_info": null,
|
||||
"produced_locally": false,
|
||||
"recipe_id": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"created_by": "c1a2b3c4-d5e6-47a8-b9c0-d1e2f3a4b5c6"
|
||||
},
|
||||
{
|
||||
@@ -564,8 +564,8 @@
|
||||
"nutritional_info": null,
|
||||
"produced_locally": false,
|
||||
"recipe_id": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"created_by": "c1a2b3c4-d5e6-47a8-b9c0-d1e2f3a4b5c6"
|
||||
},
|
||||
{
|
||||
@@ -603,8 +603,8 @@
|
||||
"nutritional_info": null,
|
||||
"produced_locally": false,
|
||||
"recipe_id": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"created_by": "c1a2b3c4-d5e6-47a8-b9c0-d1e2f3a4b5c6"
|
||||
},
|
||||
{
|
||||
@@ -642,8 +642,8 @@
|
||||
"nutritional_info": null,
|
||||
"produced_locally": false,
|
||||
"recipe_id": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"created_by": "c1a2b3c4-d5e6-47a8-b9c0-d1e2f3a4b5c6"
|
||||
},
|
||||
{
|
||||
@@ -684,8 +684,8 @@
|
||||
"nutritional_info": null,
|
||||
"produced_locally": false,
|
||||
"recipe_id": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"created_by": "c1a2b3c4-d5e6-47a8-b9c0-d1e2f3a4b5c6"
|
||||
},
|
||||
{
|
||||
@@ -725,8 +725,8 @@
|
||||
"nutritional_info": null,
|
||||
"produced_locally": false,
|
||||
"recipe_id": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"created_by": "c1a2b3c4-d5e6-47a8-b9c0-d1e2f3a4b5c6"
|
||||
},
|
||||
{
|
||||
@@ -764,8 +764,8 @@
|
||||
"nutritional_info": null,
|
||||
"produced_locally": false,
|
||||
"recipe_id": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"created_by": "c1a2b3c4-d5e6-47a8-b9c0-d1e2f3a4b5c6"
|
||||
},
|
||||
{
|
||||
@@ -803,8 +803,8 @@
|
||||
"nutritional_info": null,
|
||||
"produced_locally": false,
|
||||
"recipe_id": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"created_by": "c1a2b3c4-d5e6-47a8-b9c0-d1e2f3a4b5c6"
|
||||
},
|
||||
{
|
||||
@@ -845,8 +845,8 @@
|
||||
"nutritional_info": null,
|
||||
"produced_locally": false,
|
||||
"recipe_id": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"created_by": "c1a2b3c4-d5e6-47a8-b9c0-d1e2f3a4b5c6"
|
||||
},
|
||||
{
|
||||
@@ -886,8 +886,8 @@
|
||||
"nutritional_info": null,
|
||||
"produced_locally": false,
|
||||
"recipe_id": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"created_by": "c1a2b3c4-d5e6-47a8-b9c0-d1e2f3a4b5c6"
|
||||
},
|
||||
{
|
||||
@@ -928,8 +928,8 @@
|
||||
"nutritional_info": null,
|
||||
"produced_locally": false,
|
||||
"recipe_id": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"created_by": "c1a2b3c4-d5e6-47a8-b9c0-d1e2f3a4b5c6"
|
||||
},
|
||||
{
|
||||
@@ -969,8 +969,8 @@
|
||||
"nutritional_info": null,
|
||||
"produced_locally": false,
|
||||
"recipe_id": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"created_by": "c1a2b3c4-d5e6-47a8-b9c0-d1e2f3a4b5c6"
|
||||
},
|
||||
{
|
||||
@@ -1012,8 +1012,8 @@
|
||||
"nutritional_info": null,
|
||||
"produced_locally": false,
|
||||
"recipe_id": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"created_by": "c1a2b3c4-d5e6-47a8-b9c0-d1e2f3a4b5c6"
|
||||
}
|
||||
],
|
||||
@@ -1028,11 +1028,11 @@
|
||||
"location": "Almacén Principal - Zona A",
|
||||
"production_stage": "raw_ingredient",
|
||||
"quality_status": "good",
|
||||
"expiration_date": "2025-07-15T00:00:00Z",
|
||||
"expiration_date": "BASE_TS + 180d 18h",
|
||||
"supplier_id": "40000000-0000-0000-0000-000000000001",
|
||||
"batch_number": "HAR-T55-20250110-001",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"is_available": true,
|
||||
"is_expired": false,
|
||||
"notes": "⚠️ CRITICAL: Below reorder point (80 < 150) - NO pending PO - Should trigger RED alert"
|
||||
@@ -1047,11 +1047,11 @@
|
||||
"location": "Almacén Refrigerado - Zona B",
|
||||
"production_stage": "raw_ingredient",
|
||||
"quality_status": "good",
|
||||
"expiration_date": "2025-02-15T00:00:00Z",
|
||||
"expiration_date": "BASE_TS + 30d 18h",
|
||||
"supplier_id": "40000000-0000-0000-0000-000000000002",
|
||||
"batch_number": "MAN-SAL-20250112-001",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"is_available": true,
|
||||
"is_expired": false,
|
||||
"notes": "⚠️ LOW: Below reorder point (25 < 40) - Has pending PO (PO-2025-006) - Should show warning"
|
||||
@@ -1066,11 +1066,11 @@
|
||||
"location": "Almacén Refrigerado - Zona C",
|
||||
"production_stage": "raw_ingredient",
|
||||
"quality_status": "good",
|
||||
"expiration_date": "2025-02-28T00:00:00Z",
|
||||
"expiration_date": "BASE_TS + 43d 18h",
|
||||
"supplier_id": "40000000-0000-0000-0000-000000000003",
|
||||
"batch_number": "LEV-FRE-20250114-001",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"is_available": true,
|
||||
"is_expired": false,
|
||||
"notes": "⚠️ LOW: Below reorder point (8 < 10) - Has pending PO (PO-2025-004-URGENT) - Critical for production"
|
||||
@@ -1085,11 +1085,11 @@
|
||||
"location": "Almacén Principal - Zona A",
|
||||
"production_stage": "raw_ingredient",
|
||||
"quality_status": "good",
|
||||
"expiration_date": "2025-06-15T00:00:00Z",
|
||||
"expiration_date": "BASE_TS + 150d 18h",
|
||||
"supplier_id": "40000000-0000-0000-0000-000000000001",
|
||||
"batch_number": "HAR-T65-20250111-001",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"is_available": true,
|
||||
"is_expired": false,
|
||||
"notes": "Above reorder point - Normal stock level"
|
||||
@@ -1104,11 +1104,11 @@
|
||||
"location": "Almacén Refrigerado - Zona B",
|
||||
"production_stage": "raw_ingredient",
|
||||
"quality_status": "good",
|
||||
"expiration_date": "2025-01-22T00:00:00Z",
|
||||
"expiration_date": "BASE_TS + 6d 18h",
|
||||
"supplier_id": "40000000-0000-0000-0000-000000000002",
|
||||
"batch_number": "LEC-ENT-20250114-001",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"is_available": true,
|
||||
"is_expired": false,
|
||||
"notes": "Above reorder point - Normal stock level"
|
||||
|
||||
@@ -73,8 +73,8 @@
|
||||
"season_start_month": null,
|
||||
"season_end_month": null,
|
||||
"is_signature_item": true,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"created_by": "c1a2b3c4-d5e6-47a8-b9c0-d1e2f3a4b5c6",
|
||||
"updated_by": "c1a2b3c4-d5e6-47a8-b9c0-d1e2f3a4b5c6"
|
||||
},
|
||||
@@ -157,8 +157,8 @@
|
||||
"season_start_month": null,
|
||||
"season_end_month": null,
|
||||
"is_signature_item": true,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"created_by": "c1a2b3c4-d5e6-47a8-b9c0-d1e2f3a4b5c6",
|
||||
"updated_by": "c1a2b3c4-d5e6-47a8-b9c0-d1e2f3a4b5c6"
|
||||
},
|
||||
@@ -247,8 +247,8 @@
|
||||
"season_start_month": null,
|
||||
"season_end_month": null,
|
||||
"is_signature_item": true,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"created_by": "c1a2b3c4-d5e6-47a8-b9c0-d1e2f3a4b5c6",
|
||||
"updated_by": "c1a2b3c4-d5e6-47a8-b9c0-d1e2f3a4b5c6"
|
||||
},
|
||||
@@ -325,8 +325,8 @@
|
||||
"season_start_month": null,
|
||||
"season_end_month": null,
|
||||
"is_signature_item": false,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"created_by": "c1a2b3c4-d5e6-47a8-b9c0-d1e2f3a4b5c6",
|
||||
"updated_by": "c1a2b3c4-d5e6-47a8-b9c0-d1e2f3a4b5c6"
|
||||
}
|
||||
|
||||
@@ -21,9 +21,16 @@
|
||||
"lead_time_days": 2,
|
||||
"contract_start_date": "2024-01-01T00:00:00Z",
|
||||
"contract_end_date": "2025-12-31T23:59:59Z",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"specialties": ["flour", "bread_improvers"],
|
||||
"delivery_areas": ["Madrid", "Basque Country", "Navarra"]
|
||||
"created_at": "BASE_TS",
|
||||
"specialties": [
|
||||
"flour",
|
||||
"bread_improvers"
|
||||
],
|
||||
"delivery_areas": [
|
||||
"Madrid",
|
||||
"Basque Country",
|
||||
"Navarra"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "40000000-0000-0000-0000-000000000002",
|
||||
@@ -46,9 +53,17 @@
|
||||
"lead_time_days": 1,
|
||||
"contract_start_date": "2024-03-15T00:00:00Z",
|
||||
"contract_end_date": "2025-12-31T23:59:59Z",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"specialties": ["milk", "butter", "cream"],
|
||||
"delivery_areas": ["Madrid", "Basque Country", "Cantabria"]
|
||||
"created_at": "BASE_TS",
|
||||
"specialties": [
|
||||
"milk",
|
||||
"butter",
|
||||
"cream"
|
||||
],
|
||||
"delivery_areas": [
|
||||
"Madrid",
|
||||
"Basque Country",
|
||||
"Cantabria"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "40000000-0000-0000-0000-000000000003",
|
||||
@@ -71,9 +86,17 @@
|
||||
"lead_time_days": 1,
|
||||
"contract_start_date": "2024-06-01T00:00:00Z",
|
||||
"contract_end_date": "2025-12-31T23:59:59Z",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"specialties": ["fruits", "vegetables", "citrus"],
|
||||
"delivery_areas": ["Madrid", "Toledo", "Guadalajara"]
|
||||
"created_at": "BASE_TS",
|
||||
"specialties": [
|
||||
"fruits",
|
||||
"vegetables",
|
||||
"citrus"
|
||||
],
|
||||
"delivery_areas": [
|
||||
"Madrid",
|
||||
"Toledo",
|
||||
"Guadalajara"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "40000000-0000-0000-0000-000000000004",
|
||||
@@ -96,9 +119,17 @@
|
||||
"lead_time_days": 3,
|
||||
"contract_start_date": "2024-01-01T00:00:00Z",
|
||||
"contract_end_date": "2025-12-31T23:59:59Z",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"specialties": ["salt", "sea_salt", "gourmet_salt"],
|
||||
"delivery_areas": ["Madrid", "Valencia", "Murcia"]
|
||||
"created_at": "BASE_TS",
|
||||
"specialties": [
|
||||
"salt",
|
||||
"sea_salt",
|
||||
"gourmet_salt"
|
||||
],
|
||||
"delivery_areas": [
|
||||
"Madrid",
|
||||
"Valencia",
|
||||
"Murcia"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "40000000-0000-0000-0000-000000000005",
|
||||
@@ -121,9 +152,17 @@
|
||||
"lead_time_days": 5,
|
||||
"contract_start_date": "2024-01-01T00:00:00Z",
|
||||
"contract_end_date": "2025-12-31T23:59:59Z",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"specialties": ["packaging", "bags", "boxes"],
|
||||
"delivery_areas": ["Madrid", "Barcelona", "Zaragoza"]
|
||||
"created_at": "BASE_TS",
|
||||
"specialties": [
|
||||
"packaging",
|
||||
"bags",
|
||||
"boxes"
|
||||
],
|
||||
"delivery_areas": [
|
||||
"Madrid",
|
||||
"Barcelona",
|
||||
"Zaragoza"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "40000000-0000-0000-0000-000000000006",
|
||||
@@ -146,9 +185,17 @@
|
||||
"lead_time_days": 2,
|
||||
"contract_start_date": "2024-01-01T00:00:00Z",
|
||||
"contract_end_date": "2025-12-31T23:59:59Z",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"specialties": ["yeast", "baking_yeast", "dry_yeast"],
|
||||
"delivery_areas": ["Madrid", "Zaragoza", "Navarra"]
|
||||
"created_at": "BASE_TS",
|
||||
"specialties": [
|
||||
"yeast",
|
||||
"baking_yeast",
|
||||
"dry_yeast"
|
||||
],
|
||||
"delivery_areas": [
|
||||
"Madrid",
|
||||
"Zaragoza",
|
||||
"Navarra"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -11,9 +11,9 @@
|
||||
"manufacturer": null,
|
||||
"firmware_version": null,
|
||||
"status": "OPERATIONAL",
|
||||
"install_date": "2025-01-15T06:00:00Z",
|
||||
"last_maintenance_date": "2025-01-15T06:00:00Z",
|
||||
"next_maintenance_date": "2025-04-15T06:00:00Z",
|
||||
"install_date": "BASE_TS",
|
||||
"last_maintenance_date": "BASE_TS",
|
||||
"next_maintenance_date": "BASE_TS + 90d",
|
||||
"maintenance_interval_days": 90,
|
||||
"efficiency_percentage": 92.0,
|
||||
"uptime_percentage": 90.0,
|
||||
@@ -37,8 +37,8 @@
|
||||
"supports_remote_control": false,
|
||||
"is_active": true,
|
||||
"notes": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z"
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS"
|
||||
},
|
||||
{
|
||||
"id": "30000000-0000-0000-0000-000000000002",
|
||||
@@ -51,9 +51,9 @@
|
||||
"manufacturer": null,
|
||||
"firmware_version": null,
|
||||
"status": "OPERATIONAL",
|
||||
"install_date": "2025-01-15T06:00:00Z",
|
||||
"last_maintenance_date": "2025-01-15T06:00:00Z",
|
||||
"next_maintenance_date": "2025-04-15T06:00:00Z",
|
||||
"install_date": "BASE_TS",
|
||||
"last_maintenance_date": "BASE_TS",
|
||||
"next_maintenance_date": "BASE_TS + 90d",
|
||||
"maintenance_interval_days": 60,
|
||||
"efficiency_percentage": 95.0,
|
||||
"uptime_percentage": 90.0,
|
||||
@@ -77,8 +77,8 @@
|
||||
"supports_remote_control": false,
|
||||
"is_active": true,
|
||||
"notes": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z"
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS"
|
||||
},
|
||||
{
|
||||
"id": "30000000-0000-0000-0000-000000000003",
|
||||
@@ -91,9 +91,9 @@
|
||||
"manufacturer": null,
|
||||
"firmware_version": null,
|
||||
"status": "OPERATIONAL",
|
||||
"install_date": "2025-01-15T06:00:00Z",
|
||||
"last_maintenance_date": "2025-01-15T06:00:00Z",
|
||||
"next_maintenance_date": "2025-04-15T06:00:00Z",
|
||||
"install_date": "BASE_TS",
|
||||
"last_maintenance_date": "BASE_TS",
|
||||
"next_maintenance_date": "BASE_TS + 90d",
|
||||
"maintenance_interval_days": 90,
|
||||
"efficiency_percentage": 88.0,
|
||||
"uptime_percentage": 90.0,
|
||||
@@ -117,8 +117,8 @@
|
||||
"supports_remote_control": false,
|
||||
"is_active": true,
|
||||
"notes": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z"
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS"
|
||||
},
|
||||
{
|
||||
"id": "30000000-0000-0000-0000-000000000004",
|
||||
@@ -131,9 +131,9 @@
|
||||
"manufacturer": null,
|
||||
"firmware_version": null,
|
||||
"status": "OPERATIONAL",
|
||||
"install_date": "2025-01-15T06:00:00Z",
|
||||
"last_maintenance_date": "2025-01-15T06:00:00Z",
|
||||
"next_maintenance_date": "2025-04-15T06:00:00Z",
|
||||
"install_date": "BASE_TS",
|
||||
"last_maintenance_date": "BASE_TS",
|
||||
"next_maintenance_date": "BASE_TS + 90d",
|
||||
"maintenance_interval_days": 120,
|
||||
"efficiency_percentage": 90.0,
|
||||
"uptime_percentage": 90.0,
|
||||
@@ -157,8 +157,8 @@
|
||||
"supports_remote_control": false,
|
||||
"is_active": true,
|
||||
"notes": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z"
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS"
|
||||
},
|
||||
{
|
||||
"id": "30000000-0000-0000-0000-000000000005",
|
||||
@@ -171,9 +171,9 @@
|
||||
"manufacturer": null,
|
||||
"firmware_version": null,
|
||||
"status": "WARNING",
|
||||
"install_date": "2025-01-15T06:00:00Z",
|
||||
"last_maintenance_date": "2025-01-15T06:00:00Z",
|
||||
"next_maintenance_date": "2025-04-15T06:00:00Z",
|
||||
"install_date": "BASE_TS",
|
||||
"last_maintenance_date": "BASE_TS",
|
||||
"next_maintenance_date": "BASE_TS + 90d",
|
||||
"maintenance_interval_days": 60,
|
||||
"efficiency_percentage": 78.0,
|
||||
"uptime_percentage": 90.0,
|
||||
@@ -197,8 +197,8 @@
|
||||
"supports_remote_control": false,
|
||||
"is_active": true,
|
||||
"notes": "Eficiencia reducida. Programar inspección preventiva.",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z"
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS"
|
||||
},
|
||||
{
|
||||
"id": "30000000-0000-0000-0000-000000000006",
|
||||
@@ -211,9 +211,9 @@
|
||||
"manufacturer": null,
|
||||
"firmware_version": null,
|
||||
"status": "OPERATIONAL",
|
||||
"install_date": "2025-01-15T06:00:00Z",
|
||||
"last_maintenance_date": "2025-01-15T06:00:00Z",
|
||||
"next_maintenance_date": "2025-04-15T06:00:00Z",
|
||||
"install_date": "BASE_TS",
|
||||
"last_maintenance_date": "BASE_TS",
|
||||
"next_maintenance_date": "BASE_TS + 90d",
|
||||
"maintenance_interval_days": 90,
|
||||
"efficiency_percentage": 85.0,
|
||||
"uptime_percentage": 90.0,
|
||||
@@ -237,8 +237,8 @@
|
||||
"supports_remote_control": false,
|
||||
"is_active": true,
|
||||
"notes": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z"
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS"
|
||||
}
|
||||
],
|
||||
"batches": [
|
||||
@@ -288,8 +288,8 @@
|
||||
"delay_reason": null,
|
||||
"cancellation_reason": null,
|
||||
"reasoning_data": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"completed_at": null
|
||||
},
|
||||
{
|
||||
@@ -345,8 +345,8 @@
|
||||
"delay_reason": "Equipment setup delay",
|
||||
"cancellation_reason": null,
|
||||
"reasoning_data": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"completed_at": null
|
||||
},
|
||||
{
|
||||
@@ -395,8 +395,8 @@
|
||||
"delay_reason": null,
|
||||
"cancellation_reason": null,
|
||||
"reasoning_data": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"completed_at": null
|
||||
},
|
||||
{
|
||||
@@ -406,12 +406,12 @@
|
||||
"product_id": "20000000-0000-0000-0000-000000000001",
|
||||
"product_name": "Baguette Francesa Tradicional",
|
||||
"recipe_id": "30000000-0000-0000-0000-000000000001",
|
||||
"planned_start_time": "2025-01-08T12:00:00+00:00",
|
||||
"planned_end_time": "2025-01-08T14:45:00+00:00",
|
||||
"planned_start_time": "BASE_TS - 7d 6h",
|
||||
"planned_end_time": "BASE_TS - 7d 8h 45m",
|
||||
"planned_quantity": 100.0,
|
||||
"planned_duration_minutes": 165,
|
||||
"actual_start_time": "2025-01-08T12:00:00+00:00",
|
||||
"actual_end_time": "2025-01-08T14:45:00+00:00",
|
||||
"actual_start_time": "BASE_TS - 7d 6h",
|
||||
"actual_end_time": "BASE_TS - 7d 8h 45m",
|
||||
"actual_quantity": 98.0,
|
||||
"actual_duration_minutes": null,
|
||||
"status": "COMPLETED",
|
||||
@@ -445,8 +445,8 @@
|
||||
"delay_reason": null,
|
||||
"cancellation_reason": null,
|
||||
"reasoning_data": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"completed_at": null
|
||||
},
|
||||
{
|
||||
@@ -456,12 +456,12 @@
|
||||
"product_id": "20000000-0000-0000-0000-000000000002",
|
||||
"product_name": "Croissant de Mantequilla Artesanal",
|
||||
"recipe_id": "30000000-0000-0000-0000-000000000002",
|
||||
"planned_start_time": "2025-01-08T11:00:00+00:00",
|
||||
"planned_end_time": "2025-01-08T15:00:00+00:00",
|
||||
"planned_start_time": "BASE_TS - 7d 5h",
|
||||
"planned_end_time": "BASE_TS - 7d 9h",
|
||||
"planned_quantity": 120.0,
|
||||
"planned_duration_minutes": 240,
|
||||
"actual_start_time": "2025-01-08T11:00:00+00:00",
|
||||
"actual_end_time": "2025-01-08T15:00:00+00:00",
|
||||
"actual_start_time": "BASE_TS - 7d 5h",
|
||||
"actual_end_time": "BASE_TS - 7d 9h",
|
||||
"actual_quantity": 115.0,
|
||||
"actual_duration_minutes": null,
|
||||
"status": "COMPLETED",
|
||||
@@ -496,8 +496,8 @@
|
||||
"delay_reason": null,
|
||||
"cancellation_reason": null,
|
||||
"reasoning_data": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"completed_at": null
|
||||
},
|
||||
{
|
||||
@@ -507,12 +507,12 @@
|
||||
"product_id": "20000000-0000-0000-0000-000000000003",
|
||||
"product_name": "Pan de Pueblo con Masa Madre",
|
||||
"recipe_id": "30000000-0000-0000-0000-000000000003",
|
||||
"planned_start_time": "2025-01-09T13:30:00+00:00",
|
||||
"planned_end_time": "2025-01-09T18:30:00+00:00",
|
||||
"planned_start_time": "BASE_TS - 6d 7h 30m",
|
||||
"planned_end_time": "BASE_TS - 6d 12h 30m",
|
||||
"planned_quantity": 80.0,
|
||||
"planned_duration_minutes": 300,
|
||||
"actual_start_time": "2025-01-09T13:30:00+00:00",
|
||||
"actual_end_time": "2025-01-09T18:30:00+00:00",
|
||||
"actual_start_time": "BASE_TS - 6d 7h 30m",
|
||||
"actual_end_time": "BASE_TS - 6d 12h 30m",
|
||||
"actual_quantity": 80.0,
|
||||
"actual_duration_minutes": null,
|
||||
"status": "COMPLETED",
|
||||
@@ -546,8 +546,8 @@
|
||||
"delay_reason": null,
|
||||
"cancellation_reason": null,
|
||||
"reasoning_data": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"completed_at": null
|
||||
},
|
||||
{
|
||||
@@ -557,12 +557,12 @@
|
||||
"product_id": "20000000-0000-0000-0000-000000000004",
|
||||
"product_name": "Napolitana de Chocolate",
|
||||
"recipe_id": "30000000-0000-0000-0000-000000000004",
|
||||
"planned_start_time": "2025-01-09T12:00:00+00:00",
|
||||
"planned_end_time": "2025-01-09T15:00:00+00:00",
|
||||
"planned_start_time": "BASE_TS - 6d 6h",
|
||||
"planned_end_time": "BASE_TS - 6d 9h",
|
||||
"planned_quantity": 90.0,
|
||||
"planned_duration_minutes": 180,
|
||||
"actual_start_time": "2025-01-09T12:00:00+00:00",
|
||||
"actual_end_time": "2025-01-09T15:00:00+00:00",
|
||||
"actual_start_time": "BASE_TS - 6d 6h",
|
||||
"actual_end_time": "BASE_TS - 6d 9h",
|
||||
"actual_quantity": 88.0,
|
||||
"actual_duration_minutes": null,
|
||||
"status": "QUARANTINED",
|
||||
@@ -605,8 +605,8 @@
|
||||
"delay_reason": null,
|
||||
"cancellation_reason": null,
|
||||
"reasoning_data": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"completed_at": null
|
||||
},
|
||||
{
|
||||
@@ -616,12 +616,12 @@
|
||||
"product_id": "20000000-0000-0000-0000-000000000001",
|
||||
"product_name": "Baguette Francesa Tradicional",
|
||||
"recipe_id": "30000000-0000-0000-0000-000000000001",
|
||||
"planned_start_time": "2025-01-10T12:00:00+00:00",
|
||||
"planned_end_time": "2025-01-10T14:45:00+00:00",
|
||||
"planned_start_time": "BASE_TS - 5d 6h",
|
||||
"planned_end_time": "BASE_TS - 5d 8h 45m",
|
||||
"planned_quantity": 120.0,
|
||||
"planned_duration_minutes": 165,
|
||||
"actual_start_time": "2025-01-10T12:00:00+00:00",
|
||||
"actual_end_time": "2025-01-10T14:45:00+00:00",
|
||||
"actual_start_time": "BASE_TS - 5d 6h",
|
||||
"actual_end_time": "BASE_TS - 5d 8h 45m",
|
||||
"actual_quantity": 118.0,
|
||||
"actual_duration_minutes": null,
|
||||
"status": "COMPLETED",
|
||||
@@ -655,8 +655,8 @@
|
||||
"delay_reason": null,
|
||||
"cancellation_reason": null,
|
||||
"reasoning_data": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"completed_at": null
|
||||
},
|
||||
{
|
||||
@@ -666,12 +666,12 @@
|
||||
"product_id": "20000000-0000-0000-0000-000000000002",
|
||||
"product_name": "Croissant de Mantequilla Artesanal",
|
||||
"recipe_id": "30000000-0000-0000-0000-000000000002",
|
||||
"planned_start_time": "2025-01-10T11:00:00+00:00",
|
||||
"planned_end_time": "2025-01-10T15:00:00+00:00",
|
||||
"planned_start_time": "BASE_TS - 5d 5h",
|
||||
"planned_end_time": "BASE_TS - 5d 9h",
|
||||
"planned_quantity": 100.0,
|
||||
"planned_duration_minutes": 240,
|
||||
"actual_start_time": "2025-01-10T11:00:00+00:00",
|
||||
"actual_end_time": "2025-01-10T15:00:00+00:00",
|
||||
"actual_start_time": "BASE_TS - 5d 5h",
|
||||
"actual_end_time": "BASE_TS - 5d 9h",
|
||||
"actual_quantity": 96.0,
|
||||
"actual_duration_minutes": null,
|
||||
"status": "COMPLETED",
|
||||
@@ -706,8 +706,8 @@
|
||||
"delay_reason": null,
|
||||
"cancellation_reason": null,
|
||||
"reasoning_data": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"completed_at": null
|
||||
},
|
||||
{
|
||||
@@ -717,12 +717,12 @@
|
||||
"product_id": "20000000-0000-0000-0000-000000000001",
|
||||
"product_name": "Baguette Francesa Tradicional",
|
||||
"recipe_id": "30000000-0000-0000-0000-000000000001",
|
||||
"planned_start_time": "2025-01-11T12:00:00+00:00",
|
||||
"planned_end_time": "2025-01-11T14:45:00+00:00",
|
||||
"planned_start_time": "BASE_TS - 4d 6h",
|
||||
"planned_end_time": "BASE_TS - 4d 8h 45m",
|
||||
"planned_quantity": 100.0,
|
||||
"planned_duration_minutes": 165,
|
||||
"actual_start_time": "2025-01-11T12:00:00+00:00",
|
||||
"actual_end_time": "2025-01-11T14:45:00+00:00",
|
||||
"actual_start_time": "BASE_TS - 4d 6h",
|
||||
"actual_end_time": "BASE_TS - 4d 8h 45m",
|
||||
"actual_quantity": 99.0,
|
||||
"actual_duration_minutes": null,
|
||||
"status": "COMPLETED",
|
||||
@@ -756,8 +756,8 @@
|
||||
"delay_reason": null,
|
||||
"cancellation_reason": null,
|
||||
"reasoning_data": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"completed_at": null
|
||||
},
|
||||
{
|
||||
@@ -767,12 +767,12 @@
|
||||
"product_id": "20000000-0000-0000-0000-000000000003",
|
||||
"product_name": "Pan de Pueblo con Masa Madre",
|
||||
"recipe_id": "30000000-0000-0000-0000-000000000003",
|
||||
"planned_start_time": "2025-01-11T13:00:00+00:00",
|
||||
"planned_end_time": "2025-01-11T18:00:00+00:00",
|
||||
"planned_start_time": "BASE_TS - 4d 7h",
|
||||
"planned_end_time": "BASE_TS - 4d 12h",
|
||||
"planned_quantity": 60.0,
|
||||
"planned_duration_minutes": 300,
|
||||
"actual_start_time": "2025-01-11T13:00:00+00:00",
|
||||
"actual_end_time": "2025-01-11T18:00:00+00:00",
|
||||
"actual_start_time": "BASE_TS - 4d 7h",
|
||||
"actual_end_time": "BASE_TS - 4d 12h",
|
||||
"actual_quantity": 60.0,
|
||||
"actual_duration_minutes": null,
|
||||
"status": "COMPLETED",
|
||||
@@ -806,8 +806,8 @@
|
||||
"delay_reason": null,
|
||||
"cancellation_reason": null,
|
||||
"reasoning_data": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"completed_at": null
|
||||
},
|
||||
{
|
||||
@@ -817,12 +817,12 @@
|
||||
"product_id": "20000000-0000-0000-0000-000000000002",
|
||||
"product_name": "Croissant de Mantequilla Artesanal",
|
||||
"recipe_id": "30000000-0000-0000-0000-000000000002",
|
||||
"planned_start_time": "2025-01-12T11:00:00+00:00",
|
||||
"planned_end_time": "2025-01-12T15:00:00+00:00",
|
||||
"planned_start_time": "BASE_TS - 3d 5h",
|
||||
"planned_end_time": "BASE_TS - 3d 9h",
|
||||
"planned_quantity": 150.0,
|
||||
"planned_duration_minutes": 240,
|
||||
"actual_start_time": "2025-01-12T11:00:00+00:00",
|
||||
"actual_end_time": "2025-01-12T15:00:00+00:00",
|
||||
"actual_start_time": "BASE_TS - 3d 5h",
|
||||
"actual_end_time": "BASE_TS - 3d 9h",
|
||||
"actual_quantity": 145.0,
|
||||
"actual_duration_minutes": null,
|
||||
"status": "COMPLETED",
|
||||
@@ -857,8 +857,8 @@
|
||||
"delay_reason": null,
|
||||
"cancellation_reason": null,
|
||||
"reasoning_data": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"completed_at": null
|
||||
},
|
||||
{
|
||||
@@ -868,12 +868,12 @@
|
||||
"product_id": "20000000-0000-0000-0000-000000000004",
|
||||
"product_name": "Napolitana de Chocolate",
|
||||
"recipe_id": "30000000-0000-0000-0000-000000000004",
|
||||
"planned_start_time": "2025-01-12T12:30:00+00:00",
|
||||
"planned_end_time": "2025-01-12T15:30:00+00:00",
|
||||
"planned_start_time": "BASE_TS - 3d 6h 30m",
|
||||
"planned_end_time": "BASE_TS - 3d 9h 30m",
|
||||
"planned_quantity": 80.0,
|
||||
"planned_duration_minutes": 180,
|
||||
"actual_start_time": "2025-01-12T12:30:00+00:00",
|
||||
"actual_end_time": "2025-01-12T15:30:00+00:00",
|
||||
"actual_start_time": "BASE_TS - 3d 6h 30m",
|
||||
"actual_end_time": "BASE_TS - 3d 9h 30m",
|
||||
"actual_quantity": 79.0,
|
||||
"actual_duration_minutes": null,
|
||||
"status": "COMPLETED",
|
||||
@@ -907,8 +907,8 @@
|
||||
"delay_reason": null,
|
||||
"cancellation_reason": null,
|
||||
"reasoning_data": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"completed_at": null
|
||||
},
|
||||
{
|
||||
@@ -918,12 +918,12 @@
|
||||
"product_id": "20000000-0000-0000-0000-000000000001",
|
||||
"product_name": "Baguette Francesa Tradicional",
|
||||
"recipe_id": "30000000-0000-0000-0000-000000000001",
|
||||
"planned_start_time": "2025-01-13T12:00:00+00:00",
|
||||
"planned_end_time": "2025-01-13T14:45:00+00:00",
|
||||
"planned_start_time": "BASE_TS - 2d 6h",
|
||||
"planned_end_time": "BASE_TS - 2d 8h 45m",
|
||||
"planned_quantity": 110.0,
|
||||
"planned_duration_minutes": 165,
|
||||
"actual_start_time": "2025-01-13T12:00:00+00:00",
|
||||
"actual_end_time": "2025-01-13T14:45:00+00:00",
|
||||
"actual_start_time": "BASE_TS - 2d 6h",
|
||||
"actual_end_time": "BASE_TS - 2d 8h 45m",
|
||||
"actual_quantity": 108.0,
|
||||
"actual_duration_minutes": null,
|
||||
"status": "COMPLETED",
|
||||
@@ -957,8 +957,8 @@
|
||||
"delay_reason": null,
|
||||
"cancellation_reason": null,
|
||||
"reasoning_data": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"completed_at": null
|
||||
},
|
||||
{
|
||||
@@ -968,12 +968,12 @@
|
||||
"product_id": "20000000-0000-0000-0000-000000000003",
|
||||
"product_name": "Pan de Pueblo con Masa Madre",
|
||||
"recipe_id": "30000000-0000-0000-0000-000000000003",
|
||||
"planned_start_time": "2025-01-13T13:30:00+00:00",
|
||||
"planned_end_time": "2025-01-13T18:30:00+00:00",
|
||||
"planned_start_time": "BASE_TS - 2d 7h 30m",
|
||||
"planned_end_time": "BASE_TS - 2d 12h 30m",
|
||||
"planned_quantity": 70.0,
|
||||
"planned_duration_minutes": 300,
|
||||
"actual_start_time": "2025-01-13T13:30:00+00:00",
|
||||
"actual_end_time": "2025-01-13T18:30:00+00:00",
|
||||
"actual_start_time": "BASE_TS - 2d 7h 30m",
|
||||
"actual_end_time": "BASE_TS - 2d 12h 30m",
|
||||
"actual_quantity": 70.0,
|
||||
"actual_duration_minutes": null,
|
||||
"status": "COMPLETED",
|
||||
@@ -1007,8 +1007,8 @@
|
||||
"delay_reason": null,
|
||||
"cancellation_reason": null,
|
||||
"reasoning_data": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"completed_at": null
|
||||
},
|
||||
{
|
||||
@@ -1018,12 +1018,12 @@
|
||||
"product_id": "20000000-0000-0000-0000-000000000002",
|
||||
"product_name": "Croissant de Mantequilla Artesanal",
|
||||
"recipe_id": "30000000-0000-0000-0000-000000000002",
|
||||
"planned_start_time": "2025-01-14T11:00:00+00:00",
|
||||
"planned_end_time": "2025-01-14T15:00:00+00:00",
|
||||
"planned_start_time": "BASE_TS - 1d 5h",
|
||||
"planned_end_time": "BASE_TS - 1d 9h",
|
||||
"planned_quantity": 130.0,
|
||||
"planned_duration_minutes": 240,
|
||||
"actual_start_time": "2025-01-14T11:00:00+00:00",
|
||||
"actual_end_time": "2025-01-14T15:00:00+00:00",
|
||||
"actual_start_time": "BASE_TS - 1d 5h",
|
||||
"actual_end_time": "BASE_TS - 1d 9h",
|
||||
"actual_quantity": 125.0,
|
||||
"actual_duration_minutes": null,
|
||||
"status": "COMPLETED",
|
||||
@@ -1058,8 +1058,8 @@
|
||||
"delay_reason": null,
|
||||
"cancellation_reason": null,
|
||||
"reasoning_data": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"completed_at": null
|
||||
},
|
||||
{
|
||||
@@ -1069,12 +1069,12 @@
|
||||
"product_id": "20000000-0000-0000-0000-000000000001",
|
||||
"product_name": "Baguette Francesa Tradicional",
|
||||
"recipe_id": "30000000-0000-0000-0000-000000000001",
|
||||
"planned_start_time": "2025-01-14T12:30:00+00:00",
|
||||
"planned_end_time": "2025-01-14T15:15:00+00:00",
|
||||
"planned_start_time": "BASE_TS - 1d 6h 30m",
|
||||
"planned_end_time": "BASE_TS - 1d 9h 15m",
|
||||
"planned_quantity": 120.0,
|
||||
"planned_duration_minutes": 165,
|
||||
"actual_start_time": "2025-01-14T12:30:00+00:00",
|
||||
"actual_end_time": "2025-01-14T15:15:00+00:00",
|
||||
"actual_start_time": "BASE_TS - 1d 6h 30m",
|
||||
"actual_end_time": "BASE_TS - 1d 9h 15m",
|
||||
"actual_quantity": 118.0,
|
||||
"actual_duration_minutes": null,
|
||||
"status": "COMPLETED",
|
||||
@@ -1108,8 +1108,8 @@
|
||||
"delay_reason": null,
|
||||
"cancellation_reason": null,
|
||||
"reasoning_data": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"completed_at": null
|
||||
},
|
||||
{
|
||||
@@ -1119,11 +1119,11 @@
|
||||
"product_id": "20000000-0000-0000-0000-000000000001",
|
||||
"product_name": "Baguette Francesa Tradicional",
|
||||
"recipe_id": "30000000-0000-0000-0000-000000000001",
|
||||
"planned_start_time": "2025-01-15T12:00:00+00:00",
|
||||
"planned_end_time": "2025-01-15T14:45:00+00:00",
|
||||
"planned_start_time": "BASE_TS + 6h",
|
||||
"planned_end_time": "BASE_TS + 8h 45m",
|
||||
"planned_quantity": 100.0,
|
||||
"planned_duration_minutes": 165,
|
||||
"actual_start_time": "2025-01-15T12:00:00+00:00",
|
||||
"actual_start_time": "BASE_TS + 6h",
|
||||
"actual_end_time": null,
|
||||
"actual_quantity": null,
|
||||
"actual_duration_minutes": null,
|
||||
@@ -1158,8 +1158,8 @@
|
||||
"delay_reason": null,
|
||||
"cancellation_reason": null,
|
||||
"reasoning_data": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"completed_at": null
|
||||
},
|
||||
{
|
||||
@@ -1169,8 +1169,8 @@
|
||||
"product_id": "20000000-0000-0000-0000-000000000002",
|
||||
"product_name": "Croissant de Mantequilla Artesanal",
|
||||
"recipe_id": "30000000-0000-0000-0000-000000000002",
|
||||
"planned_start_time": "2025-01-15T14:00:00+00:00",
|
||||
"planned_end_time": "2025-01-15T18:00:00+00:00",
|
||||
"planned_start_time": "BASE_TS + 8h",
|
||||
"planned_end_time": "BASE_TS + 12h",
|
||||
"planned_quantity": 100.0,
|
||||
"planned_duration_minutes": 240,
|
||||
"actual_start_time": null,
|
||||
@@ -1209,8 +1209,8 @@
|
||||
"delay_reason": null,
|
||||
"cancellation_reason": null,
|
||||
"reasoning_data": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"completed_at": null
|
||||
},
|
||||
{
|
||||
@@ -1220,8 +1220,8 @@
|
||||
"product_id": "20000000-0000-0000-0000-000000000003",
|
||||
"product_name": "Pan de Pueblo con Masa Madre",
|
||||
"recipe_id": "30000000-0000-0000-0000-000000000003",
|
||||
"planned_start_time": "2025-01-16T13:00:00+00:00",
|
||||
"planned_end_time": "2025-01-16T18:00:00+00:00",
|
||||
"planned_start_time": "BASE_TS + 1d 7h",
|
||||
"planned_end_time": "BASE_TS + 1d 12h",
|
||||
"planned_quantity": 75.0,
|
||||
"planned_duration_minutes": 300,
|
||||
"actual_start_time": null,
|
||||
@@ -1259,8 +1259,8 @@
|
||||
"delay_reason": null,
|
||||
"cancellation_reason": null,
|
||||
"reasoning_data": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"completed_at": null
|
||||
},
|
||||
{
|
||||
@@ -1270,8 +1270,8 @@
|
||||
"product_id": "20000000-0000-0000-0000-000000000004",
|
||||
"product_name": "Napolitana de Chocolate",
|
||||
"recipe_id": "30000000-0000-0000-0000-000000000004",
|
||||
"planned_start_time": "2025-01-16T12:00:00+00:00",
|
||||
"planned_end_time": "2025-01-16T15:00:00+00:00",
|
||||
"planned_start_time": "BASE_TS + 1d 6h",
|
||||
"planned_end_time": "BASE_TS + 1d 9h",
|
||||
"planned_quantity": 85.0,
|
||||
"planned_duration_minutes": 180,
|
||||
"actual_start_time": null,
|
||||
@@ -1309,8 +1309,8 @@
|
||||
"delay_reason": null,
|
||||
"cancellation_reason": null,
|
||||
"reasoning_data": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"completed_at": null
|
||||
},
|
||||
{
|
||||
@@ -1320,8 +1320,8 @@
|
||||
"product_id": "20000000-0000-0000-0000-000000000002",
|
||||
"product_name": "Croissant de Mantequilla Artesanal",
|
||||
"recipe_id": "30000000-0000-0000-0000-000000000002",
|
||||
"planned_start_time": "2025-01-15T12:00:00+00:00",
|
||||
"planned_end_time": "2025-01-15T16:00:00+00:00",
|
||||
"planned_start_time": "BASE_TS + 6h",
|
||||
"planned_end_time": "BASE_TS + 10h",
|
||||
"planned_quantity": 120.0,
|
||||
"planned_duration_minutes": 240,
|
||||
"actual_start_time": null,
|
||||
@@ -1360,8 +1360,8 @@
|
||||
"delay_reason": null,
|
||||
"cancellation_reason": null,
|
||||
"reasoning_data": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"completed_at": null
|
||||
},
|
||||
{
|
||||
@@ -1371,8 +1371,8 @@
|
||||
"product_id": "20000000-0000-0000-0000-000000000001",
|
||||
"product_name": "Baguette Francesa Tradicional",
|
||||
"recipe_id": "30000000-0000-0000-0000-000000000001",
|
||||
"planned_start_time": "2025-01-15T14:30:00+00:00",
|
||||
"planned_end_time": "2025-01-15T17:15:00+00:00",
|
||||
"planned_start_time": "BASE_TS + 8h 30m",
|
||||
"planned_end_time": "BASE_TS + 11h 15m",
|
||||
"planned_quantity": 100.0,
|
||||
"planned_duration_minutes": 165,
|
||||
"actual_start_time": null,
|
||||
@@ -1410,8 +1410,8 @@
|
||||
"delay_reason": null,
|
||||
"cancellation_reason": null,
|
||||
"reasoning_data": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"completed_at": null
|
||||
},
|
||||
{
|
||||
@@ -1421,8 +1421,8 @@
|
||||
"product_id": "20000000-0000-0000-0000-000000000003",
|
||||
"product_name": "Pan de Pueblo con Masa Madre",
|
||||
"recipe_id": "30000000-0000-0000-0000-000000000003",
|
||||
"planned_start_time": "2025-01-15T16:00:00+00:00",
|
||||
"planned_end_time": "2025-01-15T21:00:00+00:00",
|
||||
"planned_start_time": "BASE_TS + 10h",
|
||||
"planned_end_time": "BASE_TS + 15h",
|
||||
"planned_quantity": 60.0,
|
||||
"planned_duration_minutes": 300,
|
||||
"actual_start_time": null,
|
||||
@@ -1460,8 +1460,8 @@
|
||||
"delay_reason": null,
|
||||
"cancellation_reason": null,
|
||||
"reasoning_data": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"completed_at": null
|
||||
},
|
||||
{
|
||||
@@ -1471,8 +1471,8 @@
|
||||
"product_id": "20000000-0000-0000-0000-000000000004",
|
||||
"product_name": "Tarta de Chocolate Premium",
|
||||
"recipe_id": "30000000-0000-0000-0000-000000000004",
|
||||
"planned_start_time": "2025-01-15T23:00:00+00:00",
|
||||
"planned_end_time": "2025-01-16T02:00:00+00:00",
|
||||
"planned_start_time": "BASE_TS + 17h",
|
||||
"planned_end_time": "BASE_TS + 20h",
|
||||
"planned_quantity": 5.0,
|
||||
"planned_duration_minutes": 180,
|
||||
"actual_start_time": null,
|
||||
@@ -1510,8 +1510,8 @@
|
||||
"delay_reason": null,
|
||||
"cancellation_reason": null,
|
||||
"reasoning_data": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"completed_at": null
|
||||
},
|
||||
{
|
||||
@@ -1521,8 +1521,8 @@
|
||||
"product_id": "20000000-0000-0000-0000-000000000002",
|
||||
"product_name": "Croissant de Mantequilla Artesanal",
|
||||
"recipe_id": "30000000-0000-0000-0000-000000000002",
|
||||
"planned_start_time": "2025-01-16T11:00:00+00:00",
|
||||
"planned_end_time": "2025-01-16T15:00:00+00:00",
|
||||
"planned_start_time": "BASE_TS + 1d 5h",
|
||||
"planned_end_time": "BASE_TS + 1d 9h",
|
||||
"planned_quantity": 150.0,
|
||||
"planned_duration_minutes": 240,
|
||||
"actual_start_time": null,
|
||||
@@ -1561,8 +1561,8 @@
|
||||
"delay_reason": null,
|
||||
"cancellation_reason": null,
|
||||
"reasoning_data": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"completed_at": null
|
||||
},
|
||||
{
|
||||
@@ -1572,8 +1572,8 @@
|
||||
"product_id": "20000000-0000-0000-0000-000000000001",
|
||||
"product_name": "Baguette Francesa Tradicional",
|
||||
"recipe_id": "30000000-0000-0000-0000-000000000001",
|
||||
"planned_start_time": "2025-01-15T20:00:00+00:00",
|
||||
"planned_end_time": "2025-01-15T22:45:00+00:00",
|
||||
"planned_start_time": "BASE_TS + 14h",
|
||||
"planned_end_time": "BASE_TS + 16h 45m",
|
||||
"planned_quantity": 80.0,
|
||||
"planned_duration_minutes": 165,
|
||||
"actual_start_time": null,
|
||||
@@ -1611,8 +1611,8 @@
|
||||
"delay_reason": null,
|
||||
"cancellation_reason": null,
|
||||
"reasoning_data": null,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS",
|
||||
"completed_at": null
|
||||
}
|
||||
]
|
||||
|
||||
@@ -11,11 +11,11 @@
|
||||
"required_delivery_date": "BASE_TS - 4h",
|
||||
"estimated_delivery_date": "BASE_TS - 4h",
|
||||
"expected_delivery_date": "BASE_TS - 4h",
|
||||
"subtotal": 500.00,
|
||||
"tax_amount": 105.00,
|
||||
"shipping_cost": 20.00,
|
||||
"discount_amount": 0.00,
|
||||
"total_amount": 625.00,
|
||||
"subtotal": 500.0,
|
||||
"tax_amount": 105.0,
|
||||
"shipping_cost": 20.0,
|
||||
"discount_amount": 0.0,
|
||||
"total_amount": 625.0,
|
||||
"currency": "EUR",
|
||||
"delivery_address": "Calle Panadería, 45, 28001 Madrid",
|
||||
"delivery_instructions": "URGENTE: Entrega en almacén trasero",
|
||||
@@ -39,11 +39,11 @@
|
||||
"required_delivery_date": "BASE_TS + 2h30m",
|
||||
"estimated_delivery_date": "BASE_TS + 2h30m",
|
||||
"expected_delivery_date": "BASE_TS + 2h30m",
|
||||
"subtotal": 300.00,
|
||||
"tax_amount": 63.00,
|
||||
"shipping_cost": 15.00,
|
||||
"discount_amount": 0.00,
|
||||
"total_amount": 378.00,
|
||||
"subtotal": 300.0,
|
||||
"tax_amount": 63.0,
|
||||
"shipping_cost": 15.0,
|
||||
"discount_amount": 0.0,
|
||||
"total_amount": 378.0,
|
||||
"currency": "EUR",
|
||||
"delivery_address": "Calle Panadería, 45, 28001 Madrid",
|
||||
"delivery_instructions": "Mantener refrigerado",
|
||||
@@ -61,73 +61,69 @@
|
||||
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
|
||||
"po_number": "PO-2025-001",
|
||||
"supplier_id": "40000000-0000-0000-0000-000000000001",
|
||||
"order_date_offset_days": -7,
|
||||
"status": "completed",
|
||||
"priority": "normal",
|
||||
"required_delivery_date_offset_days": -2,
|
||||
"estimated_delivery_date_offset_days": -2,
|
||||
"expected_delivery_date_offset_days": -2,
|
||||
"subtotal": 850.00,
|
||||
"tax_amount": 178.50,
|
||||
"shipping_cost": 25.00,
|
||||
"discount_amount": 0.00,
|
||||
"total_amount": 1053.50,
|
||||
"subtotal": 850.0,
|
||||
"tax_amount": 178.5,
|
||||
"shipping_cost": 25.0,
|
||||
"discount_amount": 0.0,
|
||||
"total_amount": 1053.5,
|
||||
"currency": "EUR",
|
||||
"delivery_address": "Calle Panadería, 45, 28001 Madrid",
|
||||
"delivery_instructions": "Entrega en almacén trasero",
|
||||
"delivery_contact": "Carlos Almacén",
|
||||
"delivery_phone": "+34 910 123 456",
|
||||
"requires_approval": false,
|
||||
"sent_to_supplier_at_offset_days": -7,
|
||||
"supplier_confirmation_date_offset_days": -6,
|
||||
"supplier_reference": "SUP-REF-2025-001",
|
||||
"notes": "Pedido habitual semanal de harinas",
|
||||
"created_by": "50000000-0000-0000-0000-000000000005"
|
||||
"created_by": "50000000-0000-0000-0000-000000000005",
|
||||
"order_date": "BASE_TS - 7d",
|
||||
"required_delivery_date": "BASE_TS - 2d",
|
||||
"estimated_delivery_date": "BASE_TS - 2d",
|
||||
"expected_delivery_date": "BASE_TS - 2d",
|
||||
"sent_to_supplier_at": "BASE_TS - 7d",
|
||||
"supplier_confirmation_date": "BASE_TS - 6d"
|
||||
},
|
||||
{
|
||||
"id": "50000000-0000-0000-0000-000000000002",
|
||||
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
|
||||
"po_number": "PO-2025-002",
|
||||
"supplier_id": "40000000-0000-0000-0000-000000000002",
|
||||
"order_date_offset_days": -5,
|
||||
"status": "completed",
|
||||
"priority": "normal",
|
||||
"required_delivery_date_offset_days": -1,
|
||||
"estimated_delivery_date_offset_days": -1,
|
||||
"expected_delivery_date_offset_days": -1,
|
||||
"subtotal": 320.00,
|
||||
"tax_amount": 67.20,
|
||||
"shipping_cost": 15.00,
|
||||
"discount_amount": 0.00,
|
||||
"total_amount": 402.20,
|
||||
"subtotal": 320.0,
|
||||
"tax_amount": 67.2,
|
||||
"shipping_cost": 15.0,
|
||||
"discount_amount": 0.0,
|
||||
"total_amount": 402.2,
|
||||
"currency": "EUR",
|
||||
"delivery_address": "Calle Panadería, 45, 28001 Madrid",
|
||||
"delivery_instructions": "Mantener refrigerado",
|
||||
"delivery_contact": "Carlos Almacén",
|
||||
"delivery_phone": "+34 910 123 456",
|
||||
"requires_approval": false,
|
||||
"sent_to_supplier_at_offset_days": -5,
|
||||
"supplier_confirmation_date_offset_days": -4,
|
||||
"supplier_reference": "LGIPUZ-2025-042",
|
||||
"notes": "Pedido de lácteos para producción semanal",
|
||||
"created_by": "50000000-0000-0000-0000-000000000005"
|
||||
"created_by": "50000000-0000-0000-0000-000000000005",
|
||||
"order_date": "BASE_TS - 5d",
|
||||
"required_delivery_date": "BASE_TS - 1d",
|
||||
"estimated_delivery_date": "BASE_TS - 1d",
|
||||
"expected_delivery_date": "BASE_TS - 1d",
|
||||
"sent_to_supplier_at": "BASE_TS - 5d",
|
||||
"supplier_confirmation_date": "BASE_TS - 4d"
|
||||
},
|
||||
{
|
||||
"id": "50000000-0000-0000-0000-000000000003",
|
||||
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
|
||||
"po_number": "PO-2025-003",
|
||||
"supplier_id": "40000000-0000-0000-0000-000000000003",
|
||||
"order_date_offset_days": -3,
|
||||
"status": "approved",
|
||||
"priority": "high",
|
||||
"required_delivery_date_offset_days": 1,
|
||||
"estimated_delivery_date_offset_days": 2,
|
||||
"expected_delivery_date_offset_days": 2,
|
||||
"subtotal": 450.00,
|
||||
"tax_amount": 94.50,
|
||||
"shipping_cost": 20.00,
|
||||
"discount_amount": 22.50,
|
||||
"total_amount": 542.00,
|
||||
"subtotal": 450.0,
|
||||
"tax_amount": 94.5,
|
||||
"shipping_cost": 20.0,
|
||||
"discount_amount": 22.5,
|
||||
"total_amount": 542.0,
|
||||
"currency": "EUR",
|
||||
"delivery_address": "Calle Panadería, 45, 28001 Madrid",
|
||||
"delivery_instructions": "Requiere inspección de calidad",
|
||||
@@ -136,7 +132,6 @@
|
||||
"requires_approval": true,
|
||||
"auto_approved": true,
|
||||
"auto_approval_rule_id": "10000000-0000-0000-0000-000000000001",
|
||||
"approved_at_offset_days": -2,
|
||||
"approved_by": "50000000-0000-0000-0000-000000000006",
|
||||
"notes": "Pedido urgente para nueva línea de productos ecológicos - Auto-aprobado por IA",
|
||||
"reasoning_data": {
|
||||
@@ -152,32 +147,31 @@
|
||||
"eu": "Auto-onartuta: €500ko mugaren azpian eta hornitzaile ziurtatutik"
|
||||
}
|
||||
},
|
||||
"created_by": "50000000-0000-0000-0000-000000000005"
|
||||
"created_by": "50000000-0000-0000-0000-000000000005",
|
||||
"order_date": "BASE_TS - 3d",
|
||||
"required_delivery_date": "BASE_TS + 1d",
|
||||
"estimated_delivery_date": "BASE_TS + 2d",
|
||||
"expected_delivery_date": "BASE_TS + 2d",
|
||||
"approved_at": "BASE_TS - 2d"
|
||||
},
|
||||
{
|
||||
"id": "50000000-0000-0000-0000-000000000004",
|
||||
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
|
||||
"po_number": "PO-2025-004-URGENT",
|
||||
"supplier_id": "40000000-0000-0000-0000-000000000001",
|
||||
"order_date_offset_days": -0.5,
|
||||
"status": "confirmed",
|
||||
"priority": "urgent",
|
||||
"required_delivery_date_offset_days": -0.167,
|
||||
"estimated_delivery_date_offset_days": 0.083,
|
||||
"expected_delivery_date_offset_days": -0.167,
|
||||
"subtotal": 1200.00,
|
||||
"tax_amount": 252.00,
|
||||
"shipping_cost": 35.00,
|
||||
"discount_amount": 60.00,
|
||||
"total_amount": 1427.00,
|
||||
"subtotal": 1200.0,
|
||||
"tax_amount": 252.0,
|
||||
"shipping_cost": 35.0,
|
||||
"discount_amount": 60.0,
|
||||
"total_amount": 1427.0,
|
||||
"currency": "EUR",
|
||||
"delivery_address": "Calle Panadería, 45, 28001 Madrid",
|
||||
"delivery_instructions": "URGENTE - Entrega antes de las 10:00 AM",
|
||||
"delivery_contact": "Isabel Producción",
|
||||
"delivery_phone": "+34 910 123 456",
|
||||
"requires_approval": false,
|
||||
"sent_to_supplier_at_offset_days": -0.5,
|
||||
"supplier_confirmation_date_offset_days": -0.4,
|
||||
"supplier_reference": "SUP-URGENT-2025-005",
|
||||
"notes": "EDGE CASE: Entrega retrasada - debió llegar hace 4 horas. Stock crítico de harina",
|
||||
"reasoning_data": {
|
||||
@@ -193,52 +187,54 @@
|
||||
"eu": "Presazkoa: Entrega 4 ordu berandu, gaurko ekoizpena eraginda"
|
||||
}
|
||||
},
|
||||
"created_by": "50000000-0000-0000-0000-000000000006"
|
||||
"created_by": "50000000-0000-0000-0000-000000000006",
|
||||
"order_date": "BASE_TS - 0.5d",
|
||||
"required_delivery_date": "BASE_TS - 0.167d",
|
||||
"estimated_delivery_date": "BASE_TS + 0.083d",
|
||||
"expected_delivery_date": "BASE_TS - 0.167d",
|
||||
"sent_to_supplier_at": "BASE_TS - 0.5d",
|
||||
"supplier_confirmation_date": "BASE_TS - 0.4d"
|
||||
},
|
||||
{
|
||||
"id": "50000000-0000-0000-0000-000000000007",
|
||||
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
|
||||
"po_number": "PO-2025-007",
|
||||
"supplier_id": "40000000-0000-0000-0000-000000000004",
|
||||
"order_date_offset_days": -7,
|
||||
"status": "completed",
|
||||
"priority": "normal",
|
||||
"required_delivery_date_offset_days": -5,
|
||||
"estimated_delivery_date_offset_days": -5,
|
||||
"expected_delivery_date_offset_days": -5,
|
||||
"subtotal": 450.00,
|
||||
"tax_amount": 94.50,
|
||||
"shipping_cost": 25.00,
|
||||
"discount_amount": 0.00,
|
||||
"total_amount": 569.50,
|
||||
"subtotal": 450.0,
|
||||
"tax_amount": 94.5,
|
||||
"shipping_cost": 25.0,
|
||||
"discount_amount": 0.0,
|
||||
"total_amount": 569.5,
|
||||
"currency": "EUR",
|
||||
"delivery_address": "Calle Panadería, 45, 28001 Madrid",
|
||||
"delivery_instructions": "Entrega en horario de mañana",
|
||||
"delivery_contact": "Carlos Almacén",
|
||||
"delivery_phone": "+34 910 123 456",
|
||||
"requires_approval": false,
|
||||
"sent_to_supplier_at_offset_days": -7,
|
||||
"supplier_confirmation_date_offset_days": -6,
|
||||
"supplier_reference": "SUP-REF-2025-007",
|
||||
"notes": "Pedido de ingredientes especiales para línea premium - Entregado hace 5 días",
|
||||
"created_by": "50000000-0000-0000-0000-000000000005"
|
||||
"created_by": "50000000-0000-0000-0000-000000000005",
|
||||
"order_date": "BASE_TS - 7d",
|
||||
"required_delivery_date": "BASE_TS - 5d",
|
||||
"estimated_delivery_date": "BASE_TS - 5d",
|
||||
"expected_delivery_date": "BASE_TS - 5d",
|
||||
"sent_to_supplier_at": "BASE_TS - 7d",
|
||||
"supplier_confirmation_date": "BASE_TS - 6d"
|
||||
},
|
||||
{
|
||||
"id": "50000000-0000-0000-0000-000000000005",
|
||||
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
|
||||
"po_number": "PO-2025-005",
|
||||
"supplier_id": "40000000-0000-0000-0000-000000000004",
|
||||
"order_date_offset_days": 0,
|
||||
"status": "draft",
|
||||
"priority": "normal",
|
||||
"required_delivery_date_offset_days": 3,
|
||||
"estimated_delivery_date_offset_days": 3,
|
||||
"expected_delivery_date_offset_days": 3,
|
||||
"subtotal": 280.00,
|
||||
"tax_amount": 58.80,
|
||||
"shipping_cost": 12.00,
|
||||
"discount_amount": 0.00,
|
||||
"total_amount": 350.80,
|
||||
"subtotal": 280.0,
|
||||
"tax_amount": 58.8,
|
||||
"shipping_cost": 12.0,
|
||||
"discount_amount": 0.0,
|
||||
"total_amount": 350.8,
|
||||
"currency": "EUR",
|
||||
"delivery_address": "Calle Panadería, 45, 28001 Madrid",
|
||||
"delivery_instructions": "Llamar antes de entregar",
|
||||
@@ -246,23 +242,23 @@
|
||||
"delivery_phone": "+34 910 123 456",
|
||||
"requires_approval": false,
|
||||
"notes": "Pedido planificado para reposición semanal",
|
||||
"created_by": "50000000-0000-0000-0000-000000000005"
|
||||
"created_by": "50000000-0000-0000-0000-000000000005",
|
||||
"order_date": "BASE_TS",
|
||||
"required_delivery_date": "BASE_TS + 3d",
|
||||
"estimated_delivery_date": "BASE_TS + 3d",
|
||||
"expected_delivery_date": "BASE_TS + 3d"
|
||||
},
|
||||
{
|
||||
"id": "50000000-0000-0000-0000-000000000006",
|
||||
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
|
||||
"po_number": "PO-2025-006",
|
||||
"supplier_id": "40000000-0000-0000-0000-000000000002",
|
||||
"order_date_offset_days": -0.5,
|
||||
"status": "sent_to_supplier",
|
||||
"priority": "high",
|
||||
"required_delivery_date_offset_days": 0.25,
|
||||
"estimated_delivery_date_offset_days": 0.25,
|
||||
"expected_delivery_date_offset_days": 0.25,
|
||||
"subtotal": 195.00,
|
||||
"subtotal": 195.0,
|
||||
"tax_amount": 40.95,
|
||||
"shipping_cost": 10.00,
|
||||
"discount_amount": 0.00,
|
||||
"shipping_cost": 10.0,
|
||||
"discount_amount": 0.0,
|
||||
"total_amount": 245.95,
|
||||
"currency": "EUR",
|
||||
"delivery_address": "Calle Panadería, 45, 28001 Madrid",
|
||||
@@ -270,9 +266,13 @@
|
||||
"delivery_contact": "Carlos Almacén",
|
||||
"delivery_phone": "+34 910 123 456",
|
||||
"requires_approval": false,
|
||||
"sent_to_supplier_at_offset_days": -0.5,
|
||||
"notes": "⏰ EDGE CASE: Entrega esperada en 6 horas - mantequilla para producción de croissants de mañana",
|
||||
"created_by": "50000000-0000-0000-0000-000000000006"
|
||||
"created_by": "50000000-0000-0000-0000-000000000006",
|
||||
"order_date": "BASE_TS - 0.5d",
|
||||
"required_delivery_date": "BASE_TS + 0.25d",
|
||||
"estimated_delivery_date": "BASE_TS + 0.25d",
|
||||
"expected_delivery_date": "BASE_TS + 0.25d",
|
||||
"sent_to_supplier_at": "BASE_TS - 0.5d"
|
||||
}
|
||||
],
|
||||
"purchase_order_items": [
|
||||
@@ -286,7 +286,7 @@
|
||||
"ordered_quantity": 500.0,
|
||||
"unit_of_measure": "kilograms",
|
||||
"unit_price": 0.85,
|
||||
"line_total": 425.00,
|
||||
"line_total": 425.0,
|
||||
"received_quantity": 500.0,
|
||||
"remaining_quantity": 0.0
|
||||
},
|
||||
@@ -300,7 +300,7 @@
|
||||
"ordered_quantity": 200.0,
|
||||
"unit_of_measure": "kilograms",
|
||||
"unit_price": 0.95,
|
||||
"line_total": 190.00,
|
||||
"line_total": 190.0,
|
||||
"received_quantity": 200.0,
|
||||
"remaining_quantity": 0.0
|
||||
},
|
||||
@@ -314,7 +314,7 @@
|
||||
"ordered_quantity": 100.0,
|
||||
"unit_of_measure": "kilograms",
|
||||
"unit_price": 1.15,
|
||||
"line_total": 115.00,
|
||||
"line_total": 115.0,
|
||||
"received_quantity": 100.0,
|
||||
"remaining_quantity": 0.0
|
||||
},
|
||||
@@ -327,8 +327,8 @@
|
||||
"product_code": "SAL-MAR-006",
|
||||
"ordered_quantity": 50.0,
|
||||
"unit_of_measure": "kilograms",
|
||||
"unit_price": 2.40,
|
||||
"line_total": 120.00,
|
||||
"unit_price": 2.4,
|
||||
"line_total": 120.0,
|
||||
"received_quantity": 50.0,
|
||||
"remaining_quantity": 0.0
|
||||
},
|
||||
@@ -341,8 +341,8 @@
|
||||
"product_code": "MANT-001",
|
||||
"ordered_quantity": 80.0,
|
||||
"unit_of_measure": "kilograms",
|
||||
"unit_price": 4.00,
|
||||
"line_total": 320.00,
|
||||
"unit_price": 4.0,
|
||||
"line_total": 320.0,
|
||||
"received_quantity": 80.0,
|
||||
"remaining_quantity": 0.0
|
||||
},
|
||||
@@ -355,8 +355,8 @@
|
||||
"product_code": "HAR-T55-001",
|
||||
"ordered_quantity": 1000.0,
|
||||
"unit_of_measure": "kilograms",
|
||||
"unit_price": 0.80,
|
||||
"line_total": 800.00,
|
||||
"unit_price": 0.8,
|
||||
"line_total": 800.0,
|
||||
"received_quantity": 0.0,
|
||||
"remaining_quantity": 1000.0,
|
||||
"notes": "URGENTE - Stock crítico"
|
||||
@@ -370,8 +370,8 @@
|
||||
"product_code": "LEV-FRESC-001",
|
||||
"ordered_quantity": 50.0,
|
||||
"unit_of_measure": "kilograms",
|
||||
"unit_price": 8.00,
|
||||
"line_total": 400.00,
|
||||
"unit_price": 8.0,
|
||||
"line_total": 400.0,
|
||||
"received_quantity": 0.0,
|
||||
"remaining_quantity": 50.0,
|
||||
"notes": "Stock agotado - prioridad máxima"
|
||||
@@ -385,8 +385,8 @@
|
||||
"product_code": "MANT-001",
|
||||
"ordered_quantity": 30.0,
|
||||
"unit_of_measure": "kilograms",
|
||||
"unit_price": 6.50,
|
||||
"line_total": 195.00,
|
||||
"unit_price": 6.5,
|
||||
"line_total": 195.0,
|
||||
"received_quantity": 0.0,
|
||||
"remaining_quantity": 30.0
|
||||
},
|
||||
@@ -399,8 +399,8 @@
|
||||
"product_code": "CHO-NEG-001",
|
||||
"ordered_quantity": 20.0,
|
||||
"unit_of_measure": "kilograms",
|
||||
"unit_price": 15.50,
|
||||
"line_total": 310.00,
|
||||
"unit_price": 15.5,
|
||||
"line_total": 310.0,
|
||||
"received_quantity": 20.0,
|
||||
"remaining_quantity": 0.0
|
||||
},
|
||||
@@ -413,8 +413,8 @@
|
||||
"product_code": "ALM-LAM-001",
|
||||
"ordered_quantity": 15.0,
|
||||
"unit_of_measure": "kilograms",
|
||||
"unit_price": 8.90,
|
||||
"line_total": 133.50,
|
||||
"unit_price": 8.9,
|
||||
"line_total": 133.5,
|
||||
"received_quantity": 15.0,
|
||||
"remaining_quantity": 0.0
|
||||
},
|
||||
@@ -427,8 +427,8 @@
|
||||
"product_code": "PAS-COR-001",
|
||||
"ordered_quantity": 10.0,
|
||||
"unit_of_measure": "kilograms",
|
||||
"unit_price": 4.50,
|
||||
"line_total": 45.00,
|
||||
"unit_price": 4.5,
|
||||
"line_total": 45.0,
|
||||
"received_quantity": 10.0,
|
||||
"remaining_quantity": 0.0
|
||||
}
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
"status": "ACTIVE",
|
||||
"total_orders": 45,
|
||||
"total_spent": 3250.75,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Regular wholesale customer - weekly orders"
|
||||
},
|
||||
{
|
||||
@@ -34,8 +34,8 @@
|
||||
"country": "España",
|
||||
"status": "ACTIVE",
|
||||
"total_orders": 12,
|
||||
"total_spent": 850.20,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"total_spent": 850.2,
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Small retail customer - biweekly orders"
|
||||
},
|
||||
{
|
||||
@@ -53,8 +53,8 @@
|
||||
"country": "España",
|
||||
"status": "ACTIVE",
|
||||
"total_orders": 28,
|
||||
"total_spent": 2150.50,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"total_spent": 2150.5,
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Hotel chain - large volume orders"
|
||||
},
|
||||
{
|
||||
@@ -72,8 +72,8 @@
|
||||
"country": "España",
|
||||
"status": "ACTIVE",
|
||||
"total_orders": 8,
|
||||
"total_spent": 620.40,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"total_spent": 620.4,
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Local bakery - frequent small orders"
|
||||
},
|
||||
{
|
||||
@@ -92,7 +92,7 @@
|
||||
"status": "ACTIVE",
|
||||
"total_orders": 15,
|
||||
"total_spent": 1250.75,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Organic supermarket chain - premium products"
|
||||
}
|
||||
],
|
||||
@@ -102,11 +102,11 @@
|
||||
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
|
||||
"customer_id": "60000000-0000-0000-0000-000000000001",
|
||||
"order_number": "ORD-20250115-001",
|
||||
"order_date": "2025-01-14T11:00:00Z",
|
||||
"delivery_date": "2025-01-15T09:00:00Z",
|
||||
"order_date": "BASE_TS - 1d 5h",
|
||||
"delivery_date": "BASE_TS + 3h",
|
||||
"status": "DELIVERED",
|
||||
"total_amount": 125.50,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"total_amount": 125.5,
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Regular weekly order"
|
||||
},
|
||||
{
|
||||
@@ -114,11 +114,11 @@
|
||||
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
|
||||
"customer_id": "60000000-0000-0000-0000-000000000002",
|
||||
"order_number": "ORD-20250115-002",
|
||||
"order_date": "2025-01-14T14:00:00Z",
|
||||
"delivery_date": "2025-01-15T10:00:00Z",
|
||||
"order_date": "BASE_TS - 1d 8h",
|
||||
"delivery_date": "BASE_TS + 4h",
|
||||
"status": "DELIVERED",
|
||||
"total_amount": 45.20,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"total_amount": 45.2,
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Small retail order"
|
||||
},
|
||||
{
|
||||
@@ -126,12 +126,12 @@
|
||||
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
|
||||
"customer_id": "60000000-0000-0000-0000-000000000001",
|
||||
"order_number": "ORD-URGENT-001",
|
||||
"order_date": "2025-01-15T07:00:00Z",
|
||||
"delivery_date": "2025-01-15T08:30:00Z",
|
||||
"order_date": "BASE_TS + 1h",
|
||||
"delivery_date": "BASE_TS + 2h 30m",
|
||||
"status": "PENDING",
|
||||
"total_amount": 185.75,
|
||||
"is_urgent": true,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Urgent order - special event at restaurant",
|
||||
"reasoning_data": {
|
||||
"type": "urgent_delivery",
|
||||
@@ -147,11 +147,11 @@
|
||||
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
|
||||
"customer_id": "60000000-0000-0000-0000-000000000005",
|
||||
"order_number": "ORD-20250115-003",
|
||||
"order_date": "2025-01-15T08:00:00Z",
|
||||
"delivery_date": "2025-01-15T10:00:00Z",
|
||||
"order_date": "BASE_TS + 2h",
|
||||
"delivery_date": "BASE_TS + 4h",
|
||||
"status": "PENDING",
|
||||
"total_amount": 215.50,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"total_amount": 215.5,
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Regular wholesale order - organic products",
|
||||
"reasoning_data": {
|
||||
"type": "standard_delivery",
|
||||
@@ -169,9 +169,9 @@
|
||||
"order_id": "60000000-0000-0000-0000-000000000001",
|
||||
"product_id": "20000000-0000-0000-0000-000000000001",
|
||||
"quantity": 50.0,
|
||||
"unit_price": 2.50,
|
||||
"total_price": 125.00,
|
||||
"created_at": "2025-01-15T06:00:00Z"
|
||||
"unit_price": 2.5,
|
||||
"total_price": 125.0,
|
||||
"created_at": "BASE_TS"
|
||||
},
|
||||
{
|
||||
"id": "60000000-0000-0000-0000-000000000102",
|
||||
@@ -180,8 +180,8 @@
|
||||
"product_id": "20000000-0000-0000-0000-000000000002",
|
||||
"quantity": 12.0,
|
||||
"unit_price": 3.75,
|
||||
"total_price": 45.00,
|
||||
"created_at": "2025-01-15T06:00:00Z"
|
||||
"total_price": 45.0,
|
||||
"created_at": "BASE_TS"
|
||||
},
|
||||
{
|
||||
"id": "60000000-0000-0000-0000-000000000199",
|
||||
@@ -191,7 +191,7 @@
|
||||
"quantity": 75.0,
|
||||
"unit_price": 2.45,
|
||||
"total_price": 183.75,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Urgent delivery - priority processing"
|
||||
},
|
||||
{
|
||||
@@ -201,8 +201,8 @@
|
||||
"product_id": "20000000-0000-0000-0000-000000000003",
|
||||
"quantity": 20.0,
|
||||
"unit_price": 3.25,
|
||||
"total_price": 65.00,
|
||||
"created_at": "2025-01-15T06:00:00Z"
|
||||
"total_price": 65.0,
|
||||
"created_at": "BASE_TS"
|
||||
}
|
||||
],
|
||||
"completed_orders": [
|
||||
@@ -211,11 +211,11 @@
|
||||
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
|
||||
"customer_id": "60000000-0000-0000-0000-000000000001",
|
||||
"order_number": "ORD-20250114-001",
|
||||
"order_date": "2025-01-13T10:00:00Z",
|
||||
"delivery_date": "2025-01-13T12:00:00Z",
|
||||
"order_date": "BASE_TS - 2d 4h",
|
||||
"delivery_date": "BASE_TS - 2d 6h",
|
||||
"status": "DELIVERED",
|
||||
"total_amount": 150.25,
|
||||
"created_at": "2025-01-13T10:00:00Z",
|
||||
"created_at": "BASE_TS - 2d 4h",
|
||||
"notes": "Regular weekly order - delivered on time"
|
||||
},
|
||||
{
|
||||
@@ -223,11 +223,11 @@
|
||||
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
|
||||
"customer_id": "60000000-0000-0000-0000-000000000003",
|
||||
"order_number": "ORD-20250114-002",
|
||||
"order_date": "2025-01-13T14:00:00Z",
|
||||
"delivery_date": "2025-01-14T08:00:00Z",
|
||||
"order_date": "BASE_TS - 2d 8h",
|
||||
"delivery_date": "BASE_TS - 1d 2h",
|
||||
"status": "DELIVERED",
|
||||
"total_amount": 225.75,
|
||||
"created_at": "2025-01-13T14:00:00Z",
|
||||
"created_at": "BASE_TS - 2d 8h",
|
||||
"notes": "Hotel order - large quantity for breakfast service"
|
||||
},
|
||||
{
|
||||
@@ -235,11 +235,11 @@
|
||||
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
|
||||
"customer_id": "60000000-0000-0000-0000-000000000002",
|
||||
"order_number": "ORD-20250113-001",
|
||||
"order_date": "2025-01-12T09:00:00Z",
|
||||
"delivery_date": "2025-01-12T11:00:00Z",
|
||||
"order_date": "BASE_TS - 3d 3h",
|
||||
"delivery_date": "BASE_TS - 3d 5h",
|
||||
"status": "DELIVERED",
|
||||
"total_amount": 55.50,
|
||||
"created_at": "2025-01-12T09:00:00Z",
|
||||
"total_amount": 55.5,
|
||||
"created_at": "BASE_TS - 3d 3h",
|
||||
"notes": "Small retail order - delivered on time"
|
||||
},
|
||||
{
|
||||
@@ -247,11 +247,11 @@
|
||||
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
|
||||
"customer_id": "60000000-0000-0000-0000-000000000004",
|
||||
"order_number": "ORD-20250113-002",
|
||||
"order_date": "2025-01-12T11:00:00Z",
|
||||
"delivery_date": "2025-01-12T14:00:00Z",
|
||||
"order_date": "BASE_TS - 3d 5h",
|
||||
"delivery_date": "BASE_TS - 3d 8h",
|
||||
"status": "DELIVERED",
|
||||
"total_amount": 42.75,
|
||||
"created_at": "2025-01-12T11:00:00Z",
|
||||
"created_at": "BASE_TS - 3d 5h",
|
||||
"notes": "Local bakery order - small quantity"
|
||||
},
|
||||
{
|
||||
@@ -259,11 +259,11 @@
|
||||
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
|
||||
"customer_id": "60000000-0000-0000-0000-000000000005",
|
||||
"order_number": "ORD-20250112-001",
|
||||
"order_date": "2025-01-11T10:00:00Z",
|
||||
"delivery_date": "2025-01-11T16:00:00Z",
|
||||
"order_date": "BASE_TS - 4d 4h",
|
||||
"delivery_date": "BASE_TS - 4d 10h",
|
||||
"status": "DELIVERED",
|
||||
"total_amount": 185.25,
|
||||
"created_at": "2025-01-11T10:00:00Z",
|
||||
"created_at": "BASE_TS - 4d 4h",
|
||||
"notes": "Organic supermarket order - premium products"
|
||||
},
|
||||
{
|
||||
@@ -271,11 +271,11 @@
|
||||
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
|
||||
"customer_id": "60000000-0000-0000-0000-000000000001",
|
||||
"order_number": "ORD-20250111-001",
|
||||
"order_date": "2025-01-10T08:00:00Z",
|
||||
"delivery_date": "2025-01-10T10:00:00Z",
|
||||
"order_date": "BASE_TS - 5d 2h",
|
||||
"delivery_date": "BASE_TS - 5d 4h",
|
||||
"status": "DELIVERED",
|
||||
"total_amount": 135.50,
|
||||
"created_at": "2025-01-10T08:00:00Z",
|
||||
"total_amount": 135.5,
|
||||
"created_at": "BASE_TS - 5d 2h",
|
||||
"notes": "Regular wholesale order - delivered on time"
|
||||
},
|
||||
{
|
||||
@@ -283,11 +283,11 @@
|
||||
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
|
||||
"customer_id": "60000000-0000-0000-0000-000000000003",
|
||||
"order_number": "ORD-20250110-001",
|
||||
"order_date": "2025-01-09T15:00:00Z",
|
||||
"delivery_date": "2025-01-10T07:00:00Z",
|
||||
"order_date": "BASE_TS - 6d 9h",
|
||||
"delivery_date": "BASE_TS - 5d 1h",
|
||||
"status": "DELIVERED",
|
||||
"total_amount": 195.75,
|
||||
"created_at": "2025-01-09T15:00:00Z",
|
||||
"created_at": "BASE_TS - 6d 9h",
|
||||
"notes": "Hotel order - evening delivery for next morning"
|
||||
},
|
||||
{
|
||||
@@ -295,11 +295,11 @@
|
||||
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
|
||||
"customer_id": "60000000-0000-0000-0000-000000000002",
|
||||
"order_number": "ORD-20250109-001",
|
||||
"order_date": "2025-01-08T10:00:00Z",
|
||||
"delivery_date": "2025-01-08T12:00:00Z",
|
||||
"order_date": "BASE_TS - 7d 4h",
|
||||
"delivery_date": "BASE_TS - 7d 6h",
|
||||
"status": "DELIVERED",
|
||||
"total_amount": 48.25,
|
||||
"created_at": "2025-01-08T10:00:00Z",
|
||||
"created_at": "BASE_TS - 7d 4h",
|
||||
"notes": "Small retail order - delivered on time"
|
||||
}
|
||||
]
|
||||
|
||||
@@ -6,10 +6,10 @@
|
||||
"sale_date": "2025-01-14T10:00:00Z",
|
||||
"product_id": "20000000-0000-0000-0000-000000000001",
|
||||
"quantity_sold": 45.0,
|
||||
"unit_price": 2.50,
|
||||
"total_revenue": 112.50,
|
||||
"unit_price": 2.5,
|
||||
"total_revenue": 112.5,
|
||||
"sales_channel": "IN_STORE",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Regular daily sales"
|
||||
},
|
||||
{
|
||||
@@ -19,9 +19,9 @@
|
||||
"product_id": "20000000-0000-0000-0000-000000000002",
|
||||
"quantity_sold": 10.0,
|
||||
"unit_price": 3.75,
|
||||
"total_revenue": 37.50,
|
||||
"total_revenue": 37.5,
|
||||
"sales_channel": "IN_STORE",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Morning croissant sales"
|
||||
},
|
||||
{
|
||||
@@ -31,9 +31,9 @@
|
||||
"product_id": "20000000-0000-0000-0000-000000000003",
|
||||
"quantity_sold": 8.0,
|
||||
"unit_price": 2.25,
|
||||
"total_revenue": 18.00,
|
||||
"total_revenue": 18.0,
|
||||
"sales_channel": "IN_STORE",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Lunch time bread sales"
|
||||
},
|
||||
{
|
||||
@@ -43,9 +43,9 @@
|
||||
"product_id": "20000000-0000-0000-0000-000000000004",
|
||||
"quantity_sold": 12.0,
|
||||
"unit_price": 1.75,
|
||||
"total_revenue": 21.00,
|
||||
"total_revenue": 21.0,
|
||||
"sales_channel": "IN_STORE",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Afternoon pastry sales"
|
||||
},
|
||||
{
|
||||
@@ -54,17 +54,17 @@
|
||||
"sale_date": "2025-01-15T07:30:00Z",
|
||||
"product_id": "20000000-0000-0000-0000-000000000001",
|
||||
"quantity_sold": 25.0,
|
||||
"unit_price": 2.60,
|
||||
"total_revenue": 65.00,
|
||||
"unit_price": 2.6,
|
||||
"total_revenue": 65.0,
|
||||
"sales_channel": "IN_STORE",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Early morning rush - higher price point",
|
||||
"reasoning_data": {
|
||||
"type": "peak_demand",
|
||||
"parameters": {
|
||||
"demand_factor": 1.2,
|
||||
"time_period": "morning_rush",
|
||||
"price_adjustment": 0.10
|
||||
"price_adjustment": 0.1
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,44 +4,44 @@
|
||||
"id": "80000000-0000-0000-0000-000000000001",
|
||||
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
|
||||
"product_id": "20000000-0000-0000-0000-000000000001",
|
||||
"forecast_date": "2025-01-16T00:00:00Z",
|
||||
"forecast_date": "BASE_TS + 18h",
|
||||
"predicted_quantity": 50.0,
|
||||
"confidence_score": 0.92,
|
||||
"forecast_horizon_days": 1,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Regular daily demand forecast"
|
||||
},
|
||||
{
|
||||
"id": "80000000-0000-0000-0000-000000000002",
|
||||
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
|
||||
"product_id": "20000000-0000-0000-0000-000000000002",
|
||||
"forecast_date": "2025-01-16T00:00:00Z",
|
||||
"forecast_date": "BASE_TS + 18h",
|
||||
"predicted_quantity": 15.0,
|
||||
"confidence_score": 0.88,
|
||||
"forecast_horizon_days": 1,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Croissant demand forecast"
|
||||
},
|
||||
{
|
||||
"id": "80000000-0000-0000-0000-000000000003",
|
||||
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
|
||||
"product_id": "20000000-0000-0000-0000-000000000003",
|
||||
"forecast_date": "2025-01-16T00:00:00Z",
|
||||
"forecast_date": "BASE_TS + 18h",
|
||||
"predicted_quantity": 10.0,
|
||||
"confidence_score": 0.85,
|
||||
"forecast_horizon_days": 1,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Country bread demand forecast"
|
||||
},
|
||||
{
|
||||
"id": "80000000-0000-0000-0000-000000000099",
|
||||
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
|
||||
"product_id": "20000000-0000-0000-0000-000000000001",
|
||||
"forecast_date": "2025-01-17T00:00:00Z",
|
||||
"forecast_date": "BASE_TS + 1d 18h",
|
||||
"predicted_quantity": 75.0,
|
||||
"confidence_score": 0.95,
|
||||
"forecast_horizon_days": 2,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Weekend demand spike forecast",
|
||||
"reasoning_data": {
|
||||
"type": "demand_spike",
|
||||
@@ -56,23 +56,23 @@
|
||||
"id": "80000000-0000-0000-0000-000000000100",
|
||||
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
|
||||
"product_id": "20000000-0000-0000-0000-000000000001",
|
||||
"forecast_date": "2025-01-18T00:00:00Z",
|
||||
"forecast_date": "BASE_TS + 2d 18h",
|
||||
"predicted_quantity": 60.0,
|
||||
"confidence_score": 0.92,
|
||||
"forecast_horizon_days": 3,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Sunday demand forecast - slightly lower than Saturday",
|
||||
"historical_accuracy": 0.90
|
||||
"historical_accuracy": 0.9
|
||||
},
|
||||
{
|
||||
"id": "80000000-0000-0000-0000-000000000101",
|
||||
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
|
||||
"product_id": "20000000-0000-0000-0000-000000000002",
|
||||
"forecast_date": "2025-01-16T00:00:00Z",
|
||||
"forecast_date": "BASE_TS + 18h",
|
||||
"predicted_quantity": 15.0,
|
||||
"confidence_score": 0.88,
|
||||
"forecast_horizon_days": 1,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Croissant demand forecast - weekend preparation",
|
||||
"historical_accuracy": 0.89
|
||||
},
|
||||
@@ -80,11 +80,11 @@
|
||||
"id": "80000000-0000-0000-0000-000000000102",
|
||||
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
|
||||
"product_id": "20000000-0000-0000-0000-000000000002",
|
||||
"forecast_date": "2025-01-17T00:00:00Z",
|
||||
"forecast_date": "BASE_TS + 1d 18h",
|
||||
"predicted_quantity": 25.0,
|
||||
"confidence_score": 0.90,
|
||||
"confidence_score": 0.9,
|
||||
"forecast_horizon_days": 2,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Weekend croissant demand - higher than weekdays",
|
||||
"historical_accuracy": 0.91
|
||||
},
|
||||
@@ -92,11 +92,11 @@
|
||||
"id": "80000000-0000-0000-0000-000000000103",
|
||||
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
|
||||
"product_id": "20000000-0000-0000-0000-000000000003",
|
||||
"forecast_date": "2025-01-16T00:00:00Z",
|
||||
"forecast_date": "BASE_TS + 18h",
|
||||
"predicted_quantity": 10.0,
|
||||
"confidence_score": 0.85,
|
||||
"forecast_horizon_days": 1,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Country bread demand forecast",
|
||||
"historical_accuracy": 0.88
|
||||
},
|
||||
@@ -104,23 +104,23 @@
|
||||
"id": "80000000-0000-0000-0000-000000000104",
|
||||
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
|
||||
"product_id": "20000000-0000-0000-0000-000000000003",
|
||||
"forecast_date": "2025-01-17T00:00:00Z",
|
||||
"forecast_date": "BASE_TS + 1d 18h",
|
||||
"predicted_quantity": 12.0,
|
||||
"confidence_score": 0.87,
|
||||
"forecast_horizon_days": 2,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Weekend country bread demand",
|
||||
"historical_accuracy": 0.90
|
||||
"historical_accuracy": 0.9
|
||||
},
|
||||
{
|
||||
"id": "80000000-0000-0000-0000-000000000105",
|
||||
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
|
||||
"product_id": "20000000-0000-0000-0000-000000000001",
|
||||
"forecast_date": "2025-01-19T00:00:00Z",
|
||||
"forecast_date": "BASE_TS + 3d 18h",
|
||||
"predicted_quantity": 45.0,
|
||||
"confidence_score": 0.91,
|
||||
"forecast_horizon_days": 4,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Monday demand - back to normal after weekend",
|
||||
"historical_accuracy": 0.92
|
||||
},
|
||||
@@ -128,23 +128,23 @@
|
||||
"id": "80000000-0000-0000-0000-000000000106",
|
||||
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
|
||||
"product_id": "20000000-0000-0000-0000-000000000001",
|
||||
"forecast_date": "2025-01-20T00:00:00Z",
|
||||
"forecast_date": "BASE_TS + 4d 18h",
|
||||
"predicted_quantity": 48.0,
|
||||
"confidence_score": 0.90,
|
||||
"confidence_score": 0.9,
|
||||
"forecast_horizon_days": 5,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Tuesday demand forecast",
|
||||
"historical_accuracy": 0.90
|
||||
"historical_accuracy": 0.9
|
||||
},
|
||||
{
|
||||
"id": "80000000-0000-0000-0000-000000000107",
|
||||
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
|
||||
"product_id": "20000000-0000-0000-0000-000000000001",
|
||||
"forecast_date": "2025-01-21T00:00:00Z",
|
||||
"forecast_date": "BASE_TS + 5d 18h",
|
||||
"predicted_quantity": 50.0,
|
||||
"confidence_score": 0.89,
|
||||
"forecast_horizon_days": 6,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Wednesday demand forecast",
|
||||
"historical_accuracy": 0.89
|
||||
}
|
||||
@@ -154,10 +154,10 @@
|
||||
"id": "80000000-0000-0000-0000-000000001001",
|
||||
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
|
||||
"batch_id": "20250116-001",
|
||||
"prediction_date": "2025-01-15T06:00:00Z",
|
||||
"prediction_date": "BASE_TS",
|
||||
"status": "COMPLETED",
|
||||
"total_forecasts": 4,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"created_at": "BASE_TS",
|
||||
"notes": "Daily forecasting batch"
|
||||
}
|
||||
]
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
}
|
||||
],
|
||||
"corrective_actions": null,
|
||||
"created_at": "2025-01-08T14:30:00Z",
|
||||
"updated_at": "2025-01-08T14:45:00Z"
|
||||
"created_at": "BASE_TS - 7d 8h 30m",
|
||||
"updated_at": "BASE_TS - 7d 8h 45m"
|
||||
},
|
||||
{
|
||||
"id": "70000000-0000-0000-0000-000000000002",
|
||||
@@ -45,8 +45,8 @@
|
||||
}
|
||||
],
|
||||
"corrective_actions": null,
|
||||
"created_at": "2025-01-08T14:45:00Z",
|
||||
"updated_at": "2025-01-08T15:00:00Z"
|
||||
"created_at": "BASE_TS - 7d 8h 45m",
|
||||
"updated_at": "BASE_TS - 7d 9h"
|
||||
},
|
||||
{
|
||||
"id": "70000000-0000-0000-0000-000000000003",
|
||||
@@ -74,8 +74,8 @@
|
||||
"Programada nueva prueba con muestra diferente"
|
||||
],
|
||||
"batch_status_after_control": "QUARANTINED",
|
||||
"created_at": "2025-01-09T14:30:00Z",
|
||||
"updated_at": "2025-01-09T15:00:00Z"
|
||||
"created_at": "BASE_TS - 6d 8h 30m",
|
||||
"updated_at": "BASE_TS - 6d 9h"
|
||||
},
|
||||
{
|
||||
"id": "70000000-0000-0000-0000-000000000004",
|
||||
@@ -93,8 +93,8 @@
|
||||
"defects_found": null,
|
||||
"corrective_actions": null,
|
||||
"batch_status_after_control": "QUALITY_CHECK",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z"
|
||||
"created_at": "BASE_TS",
|
||||
"updated_at": "BASE_TS"
|
||||
}
|
||||
],
|
||||
"quality_alerts": [
|
||||
@@ -109,7 +109,7 @@
|
||||
"product_id": "20000000-0000-0000-0000-000000000004",
|
||||
"product_name": "Napolitana de Chocolate",
|
||||
"description": "Fallo crítico en control de calidad - Sabor amargo en chocolate",
|
||||
"created_at": "2025-01-09T15:00:00Z",
|
||||
"created_at": "BASE_TS - 6d 9h",
|
||||
"acknowledged_at": "2025-01-09T15:15:00Z",
|
||||
"resolved_at": null,
|
||||
"notes": "Lote en cuarentena, investigación en curso con proveedor"
|
||||
|
||||
Reference in New Issue
Block a user