Files
bakery-ia/shared/demo/fixtures/professional/06-production.json

1735 lines
59 KiB
JSON
Raw Normal View History

2025-12-13 23:57:54 +01:00
{
"equipment": [
{
"id": "30000000-0000-0000-0000-000000000001",
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
"name": "Horno Rotativo Principal",
"type": "oven",
"model": "Sveba Dahlen DC-16",
"serial_number": "SD-2023-1547",
"location": "Área de Producción - Zona A",
"manufacturer": null,
"firmware_version": null,
"status": "OPERATIONAL",
2025-12-14 11:58:14 +01:00
"install_date": "BASE_TS",
"last_maintenance_date": "BASE_TS",
"next_maintenance_date": "BASE_TS + 90d",
2025-12-13 23:57:54 +01:00
"maintenance_interval_days": 90,
"efficiency_percentage": 92.0,
"uptime_percentage": 90.0,
"energy_usage_kwh": null,
"power_kw": 45.0,
"capacity": 16.0,
"weight_kg": null,
"current_temperature": 220.0,
"target_temperature": 220.0,
"iot_enabled": false,
"iot_protocol": null,
"iot_endpoint": null,
"iot_port": null,
"iot_connection_status": null,
"iot_last_connected": null,
"supports_realtime": false,
"poll_interval_seconds": null,
"temperature_zones": null,
"supports_humidity": false,
"supports_energy_monitoring": false,
"supports_remote_control": false,
"is_active": true,
"notes": null,
2025-12-14 11:58:14 +01:00
"created_at": "BASE_TS",
"updated_at": "BASE_TS"
2025-12-13 23:57:54 +01:00
},
{
"id": "30000000-0000-0000-0000-000000000002",
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
"name": "Amasadora Espiral Grande",
"type": "mixer",
"model": "Diosna SP 120",
"serial_number": "DI-2022-0892",
"location": "Área de Amasado",
"manufacturer": null,
"firmware_version": null,
"status": "OPERATIONAL",
2025-12-14 11:58:14 +01:00
"install_date": "BASE_TS",
"last_maintenance_date": "BASE_TS",
"next_maintenance_date": "BASE_TS + 90d",
2025-12-13 23:57:54 +01:00
"maintenance_interval_days": 60,
"efficiency_percentage": 95.0,
"uptime_percentage": 90.0,
"energy_usage_kwh": null,
"power_kw": 12.0,
"capacity": 120.0,
"weight_kg": null,
"current_temperature": null,
"target_temperature": null,
"iot_enabled": false,
"iot_protocol": null,
"iot_endpoint": null,
"iot_port": null,
"iot_connection_status": null,
"iot_last_connected": null,
"supports_realtime": false,
"poll_interval_seconds": null,
"temperature_zones": null,
"supports_humidity": false,
"supports_energy_monitoring": false,
"supports_remote_control": false,
"is_active": true,
"notes": null,
2025-12-14 11:58:14 +01:00
"created_at": "BASE_TS",
"updated_at": "BASE_TS"
2025-12-13 23:57:54 +01:00
},
{
"id": "30000000-0000-0000-0000-000000000003",
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
"name": "Cámara de Fermentación 1",
"type": "proofer",
"model": "Mondial Forni PF-2000",
"serial_number": "MF-2023-0445",
"location": "Área de Fermentación",
"manufacturer": null,
"firmware_version": null,
"status": "OPERATIONAL",
2025-12-14 11:58:14 +01:00
"install_date": "BASE_TS",
"last_maintenance_date": "BASE_TS",
"next_maintenance_date": "BASE_TS + 90d",
2025-12-13 23:57:54 +01:00
"maintenance_interval_days": 90,
"efficiency_percentage": 88.0,
"uptime_percentage": 90.0,
"energy_usage_kwh": null,
"power_kw": 8.0,
"capacity": 40.0,
"weight_kg": null,
"current_temperature": 28.0,
"target_temperature": 28.0,
"iot_enabled": false,
"iot_protocol": null,
"iot_endpoint": null,
"iot_port": null,
"iot_connection_status": null,
"iot_last_connected": null,
"supports_realtime": false,
"poll_interval_seconds": null,
"temperature_zones": null,
"supports_humidity": false,
"supports_energy_monitoring": false,
"supports_remote_control": false,
"is_active": true,
"notes": null,
2025-12-14 11:58:14 +01:00
"created_at": "BASE_TS",
"updated_at": "BASE_TS"
2025-12-13 23:57:54 +01:00
},
{
"id": "30000000-0000-0000-0000-000000000004",
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
"name": "Congelador Rápido",
"type": "freezer",
"model": "Irinox MF 70.2",
"serial_number": "IR-2021-1234",
"location": "Área de Conservación",
"manufacturer": null,
"firmware_version": null,
"status": "OPERATIONAL",
2025-12-14 11:58:14 +01:00
"install_date": "BASE_TS",
"last_maintenance_date": "BASE_TS",
"next_maintenance_date": "BASE_TS + 90d",
2025-12-13 23:57:54 +01:00
"maintenance_interval_days": 120,
"efficiency_percentage": 90.0,
"uptime_percentage": 90.0,
"energy_usage_kwh": null,
"power_kw": 15.0,
"capacity": 70.0,
"weight_kg": null,
"current_temperature": -40.0,
"target_temperature": -40.0,
"iot_enabled": false,
"iot_protocol": null,
"iot_endpoint": null,
"iot_port": null,
"iot_connection_status": null,
"iot_last_connected": null,
"supports_realtime": false,
"poll_interval_seconds": null,
"temperature_zones": null,
"supports_humidity": false,
"supports_energy_monitoring": false,
"supports_remote_control": false,
"is_active": true,
"notes": null,
2025-12-14 11:58:14 +01:00
"created_at": "BASE_TS",
"updated_at": "BASE_TS"
2025-12-13 23:57:54 +01:00
},
{
"id": "30000000-0000-0000-0000-000000000005",
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
"name": "Amasadora Pequeña",
"type": "mixer",
"model": "Diosna SP 60",
"serial_number": "DI-2020-0334",
"location": "Área de Amasado",
"manufacturer": null,
"firmware_version": null,
"status": "WARNING",
2025-12-14 11:58:14 +01:00
"install_date": "BASE_TS",
"last_maintenance_date": "BASE_TS",
"next_maintenance_date": "BASE_TS + 90d",
2025-12-13 23:57:54 +01:00
"maintenance_interval_days": 60,
"efficiency_percentage": 78.0,
"uptime_percentage": 90.0,
"energy_usage_kwh": null,
"power_kw": 6.0,
"capacity": 60.0,
"weight_kg": null,
"current_temperature": null,
"target_temperature": null,
"iot_enabled": false,
"iot_protocol": null,
"iot_endpoint": null,
"iot_port": null,
"iot_connection_status": null,
"iot_last_connected": null,
"supports_realtime": false,
"poll_interval_seconds": null,
"temperature_zones": null,
"supports_humidity": false,
"supports_energy_monitoring": false,
"supports_remote_control": false,
"is_active": true,
"notes": "Eficiencia reducida. Programar inspección preventiva.",
2025-12-14 11:58:14 +01:00
"created_at": "BASE_TS",
"updated_at": "BASE_TS"
2025-12-13 23:57:54 +01:00
},
{
"id": "30000000-0000-0000-0000-000000000006",
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
"name": "Horno de Convección Auxiliar",
"type": "oven",
"model": "Unox XBC 1065",
"serial_number": "UN-2019-0667",
"location": "Área de Producción - Zona B",
"manufacturer": null,
"firmware_version": null,
"status": "OPERATIONAL",
2025-12-14 11:58:14 +01:00
"install_date": "BASE_TS",
"last_maintenance_date": "BASE_TS",
"next_maintenance_date": "BASE_TS + 90d",
2025-12-13 23:57:54 +01:00
"maintenance_interval_days": 90,
"efficiency_percentage": 85.0,
"uptime_percentage": 90.0,
"energy_usage_kwh": null,
"power_kw": 28.0,
"capacity": 10.0,
"weight_kg": null,
"current_temperature": 180.0,
"target_temperature": 180.0,
"iot_enabled": false,
"iot_protocol": null,
"iot_endpoint": null,
"iot_port": null,
"iot_connection_status": null,
"iot_last_connected": null,
"supports_realtime": false,
"poll_interval_seconds": null,
"temperature_zones": null,
"supports_humidity": false,
"supports_energy_monitoring": false,
"supports_remote_control": false,
"is_active": true,
"notes": null,
2025-12-14 11:58:14 +01:00
"created_at": "BASE_TS",
"updated_at": "BASE_TS"
2025-12-13 23:57:54 +01:00
}
],
"batches": [
{
"id": "40000000-0000-0000-0000-0000000000b1",
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
"batch_number": "BATCH-LATE-0001",
"product_id": "20000000-0000-0000-0000-000000000001",
"product_name": "Baguette Francesa Tradicional",
"recipe_id": "30000000-0000-0000-0000-000000000001",
"planned_start_time": "BASE_TS - 2h",
"planned_end_time": "BASE_TS - 0h",
"planned_quantity": 100.0,
"planned_duration_minutes": 120,
"actual_start_time": null,
"actual_end_time": null,
"actual_quantity": null,
"actual_duration_minutes": null,
"status": "PENDING",
"priority": "HIGH",
"current_process_stage": null,
"process_stage_history": null,
2025-12-14 16:04:16 +01:00
"pending_quality_checks": [
{
"id": "70000000-0000-0000-0000-000000000004",
"check_type": "visual_inspection",
"status": "pending"
}
],
2025-12-13 23:57:54 +01:00
"completed_quality_checks": null,
"estimated_cost": 150.0,
"actual_cost": null,
"labor_cost": null,
"material_cost": null,
"overhead_cost": null,
"yield_percentage": null,
"quality_score": null,
"waste_quantity": null,
"defect_quantity": null,
"waste_defect_type": null,
"equipment_used": [
"30000000-0000-0000-0000-000000000001"
],
"staff_assigned": [],
"station_id": "STATION-01",
"order_id": null,
"forecast_id": null,
"is_rush_order": true,
"is_special_recipe": false,
"is_ai_assisted": false,
"production_notes": "⚠️ EDGE CASE: Production should have started 2 hours ago - will trigger OVERDUE_BATCH alert",
"quality_notes": null,
"delay_reason": null,
"cancellation_reason": null,
"reasoning_data": null,
2025-12-14 11:58:14 +01:00
"created_at": "BASE_TS",
"updated_at": "BASE_TS",
2025-12-13 23:57:54 +01:00
"completed_at": null
},
{
"id": "40000000-0000-0000-0000-0000000000b2",
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
"batch_number": "BATCH-INPROGRESS-0001",
"product_id": "20000000-0000-0000-0000-000000000002",
"product_name": "Croissant de Mantequilla Artesanal",
"recipe_id": "30000000-0000-0000-0000-000000000002",
"planned_start_time": "BASE_TS - 1h",
"planned_end_time": "BASE_TS + 1h",
"planned_quantity": 80.0,
"planned_duration_minutes": 120,
"actual_start_time": "BASE_TS - 1h45m",
"actual_end_time": null,
"actual_quantity": null,
"actual_duration_minutes": null,
"status": "IN_PROGRESS",
"priority": "MEDIUM",
"current_process_stage": "baking",
"process_stage_history": [
{
"stage": "preparation",
"start_time": "BASE_TS - 2h",
"end_time": "BASE_TS - 1h45m",
"status": "completed"
}
],
"pending_quality_checks": null,
"completed_quality_checks": null,
"estimated_cost": 120.0,
"actual_cost": null,
"labor_cost": null,
"material_cost": null,
"overhead_cost": null,
"yield_percentage": null,
"quality_score": null,
"waste_quantity": null,
"defect_quantity": null,
"waste_defect_type": null,
"equipment_used": [
"30000000-0000-0000-0000-000000000002"
],
"staff_assigned": [],
"station_id": "STATION-02",
"order_id": null,
"forecast_id": null,
"is_rush_order": false,
"is_special_recipe": false,
"is_ai_assisted": true,
"production_notes": "⚠️ EDGE CASE: Batch started 15 minutes late but now in progress - will show active production status",
"quality_notes": null,
"delay_reason": "Equipment setup delay",
"cancellation_reason": null,
"reasoning_data": null,
2025-12-14 11:58:14 +01:00
"created_at": "BASE_TS",
"updated_at": "BASE_TS",
2025-12-13 23:57:54 +01:00
"completed_at": null
},
{
"id": "40000000-0000-0000-0000-0000000000b3",
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
"batch_number": "BATCH-UPCOMING-0001",
"product_id": "20000000-0000-0000-0000-000000000003",
"product_name": "Pan Integral",
"recipe_id": "30000000-0000-0000-0000-000000000003",
"planned_start_time": "BASE_TS + 1h30m",
"planned_end_time": "BASE_TS + 4h30m",
"planned_quantity": 60.0,
"planned_duration_minutes": 180,
"actual_start_time": null,
"actual_end_time": null,
"actual_quantity": null,
"actual_duration_minutes": null,
"status": "PENDING",
"priority": "MEDIUM",
"current_process_stage": null,
"process_stage_history": null,
"pending_quality_checks": null,
"completed_quality_checks": null,
"estimated_cost": 90.0,
"actual_cost": null,
"labor_cost": null,
"material_cost": null,
"overhead_cost": null,
"yield_percentage": null,
"quality_score": null,
"waste_quantity": null,
"defect_quantity": null,
"waste_defect_type": null,
"equipment_used": [
"30000000-0000-0000-0000-000000000003"
],
"staff_assigned": [],
"station_id": "STATION-03",
"order_id": null,
"forecast_id": null,
"is_rush_order": false,
"is_special_recipe": false,
"is_ai_assisted": true,
"production_notes": "⚠️ EDGE CASE: Upcoming batch scheduled to start in 1.5 hours - will show in planning view",
"quality_notes": null,
"delay_reason": null,
"cancellation_reason": null,
"reasoning_data": null,
2025-12-14 11:58:14 +01:00
"created_at": "BASE_TS",
"updated_at": "BASE_TS",
2025-12-13 23:57:54 +01:00
"completed_at": null
},
{
"id": "40000000-0000-0000-0000-000000000001",
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
"batch_number": "BATCH-20250115-001",
"product_id": "20000000-0000-0000-0000-000000000001",
"product_name": "Baguette Francesa Tradicional",
"recipe_id": "30000000-0000-0000-0000-000000000001",
2025-12-14 11:58:14 +01:00
"planned_start_time": "BASE_TS - 7d 6h",
"planned_end_time": "BASE_TS - 7d 8h 45m",
2025-12-13 23:57:54 +01:00
"planned_quantity": 100.0,
"planned_duration_minutes": 165,
2025-12-14 11:58:14 +01:00
"actual_start_time": "BASE_TS - 7d 6h",
"actual_end_time": "BASE_TS - 7d 8h 45m",
2025-12-13 23:57:54 +01:00
"actual_quantity": 98.0,
"actual_duration_minutes": null,
"status": "COMPLETED",
"priority": "MEDIUM",
"current_process_stage": "packaging",
"process_stage_history": null,
"pending_quality_checks": null,
2025-12-14 16:04:16 +01:00
"completed_quality_checks": [
{
"id": "70000000-0000-0000-0000-000000000001",
"check_type": "visual_inspection",
"status": "completed",
"result": "passed",
"quality_score": 9.5
}
],
2025-12-13 23:57:54 +01:00
"estimated_cost": 150.0,
"actual_cost": 148.5,
"labor_cost": 80.0,
"material_cost": 55.0,
"overhead_cost": 13.5,
"yield_percentage": 98.0,
2025-12-14 16:04:16 +01:00
"quality_score": 9.5,
2025-12-13 23:57:54 +01:00
"waste_quantity": 2.0,
2025-12-14 16:04:16 +01:00
"defect_quantity": 2.0,
2025-12-13 23:57:54 +01:00
"waste_defect_type": "burnt",
"equipment_used": [
"30000000-0000-0000-0000-000000000001"
],
"staff_assigned": [],
"station_id": "STATION-01",
"order_id": null,
"forecast_id": null,
"is_rush_order": false,
"is_special_recipe": false,
"is_ai_assisted": true,
"production_notes": "Producción estándar, sin incidencias",
"quality_notes": "2 baguettes quemadas por exceso de temperatura",
"delay_reason": null,
"cancellation_reason": null,
"reasoning_data": null,
2025-12-14 11:58:14 +01:00
"created_at": "BASE_TS",
"updated_at": "BASE_TS",
2025-12-13 23:57:54 +01:00
"completed_at": null
},
{
"id": "40000000-0000-0000-0000-000000000002",
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
"batch_number": "BATCH-20250115-002",
"product_id": "20000000-0000-0000-0000-000000000002",
"product_name": "Croissant de Mantequilla Artesanal",
"recipe_id": "30000000-0000-0000-0000-000000000002",
2025-12-14 11:58:14 +01:00
"planned_start_time": "BASE_TS - 7d 5h",
"planned_end_time": "BASE_TS - 7d 9h",
2025-12-13 23:57:54 +01:00
"planned_quantity": 120.0,
"planned_duration_minutes": 240,
2025-12-14 11:58:14 +01:00
"actual_start_time": "BASE_TS - 7d 5h",
"actual_end_time": "BASE_TS - 7d 9h",
2025-12-13 23:57:54 +01:00
"actual_quantity": 115.0,
"actual_duration_minutes": null,
"status": "COMPLETED",
"priority": "HIGH",
"current_process_stage": "packaging",
"process_stage_history": null,
"pending_quality_checks": null,
2025-12-14 16:04:16 +01:00
"completed_quality_checks": [
{
"id": "70000000-0000-0000-0000-000000000002",
"check_type": "dimensional_check",
"status": "completed",
"result": "passed",
"quality_score": 9.2
}
],
2025-12-13 23:57:54 +01:00
"estimated_cost": 280.0,
"actual_cost": 275.0,
"labor_cost": 120.0,
"material_cost": 125.0,
"overhead_cost": 30.0,
"yield_percentage": 95.8,
2025-12-14 16:04:16 +01:00
"quality_score": 9.2,
2025-12-13 23:57:54 +01:00
"waste_quantity": 3.0,
2025-12-14 16:04:16 +01:00
"defect_quantity": 3.0,
2025-12-13 23:57:54 +01:00
"waste_defect_type": "misshapen",
"equipment_used": [
"30000000-0000-0000-0000-000000000002",
"30000000-0000-0000-0000-000000000001"
],
"staff_assigned": [],
"station_id": "STATION-02",
"order_id": null,
"forecast_id": null,
"is_rush_order": false,
"is_special_recipe": false,
"is_ai_assisted": true,
"production_notes": "Laminado perfecto, buen desarrollo",
"quality_notes": "3 croissants con forma irregular por laminado desigual, 2 descartados",
"delay_reason": null,
"cancellation_reason": null,
"reasoning_data": null,
2025-12-14 11:58:14 +01:00
"created_at": "BASE_TS",
"updated_at": "BASE_TS",
2025-12-13 23:57:54 +01:00
"completed_at": null
},
{
"id": "40000000-0000-0000-0000-000000000003",
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
"batch_number": "BATCH-20250116-001",
"product_id": "20000000-0000-0000-0000-000000000003",
"product_name": "Pan de Pueblo con Masa Madre",
"recipe_id": "30000000-0000-0000-0000-000000000003",
2025-12-14 11:58:14 +01:00
"planned_start_time": "BASE_TS - 6d 7h 30m",
"planned_end_time": "BASE_TS - 6d 12h 30m",
2025-12-13 23:57:54 +01:00
"planned_quantity": 80.0,
"planned_duration_minutes": 300,
2025-12-14 11:58:14 +01:00
"actual_start_time": "BASE_TS - 6d 7h 30m",
"actual_end_time": "BASE_TS - 6d 12h 30m",
2025-12-13 23:57:54 +01:00
"actual_quantity": 80.0,
"actual_duration_minutes": null,
"status": "COMPLETED",
"priority": "MEDIUM",
"current_process_stage": "packaging",
"process_stage_history": null,
"pending_quality_checks": null,
"completed_quality_checks": null,
"estimated_cost": 200.0,
"actual_cost": 195.0,
"labor_cost": 90.0,
"material_cost": 80.0,
"overhead_cost": 25.0,
"yield_percentage": 100.0,
"quality_score": 98.0,
"waste_quantity": 0.0,
"defect_quantity": 0.0,
"waste_defect_type": null,
"equipment_used": [
"30000000-0000-0000-0000-000000000001"
],
"staff_assigned": [],
"station_id": "STATION-01",
"order_id": null,
"forecast_id": null,
"is_rush_order": false,
"is_special_recipe": true,
"is_ai_assisted": true,
"production_notes": "Excelente fermentación de la masa madre",
"quality_notes": "Batch perfecto, sin desperdicio",
"delay_reason": null,
"cancellation_reason": null,
"reasoning_data": null,
2025-12-14 11:58:14 +01:00
"created_at": "BASE_TS",
"updated_at": "BASE_TS",
2025-12-13 23:57:54 +01:00
"completed_at": null
},
{
"id": "40000000-0000-0000-0000-000000000004",
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
"batch_number": "BATCH-20250116-002",
"product_id": "20000000-0000-0000-0000-000000000004",
"product_name": "Napolitana de Chocolate",
"recipe_id": "30000000-0000-0000-0000-000000000004",
2025-12-14 11:58:14 +01:00
"planned_start_time": "BASE_TS - 6d 6h",
"planned_end_time": "BASE_TS - 6d 9h",
2025-12-13 23:57:54 +01:00
"planned_quantity": 90.0,
"planned_duration_minutes": 180,
2025-12-14 11:58:14 +01:00
"actual_start_time": "BASE_TS - 6d 6h",
"actual_end_time": "BASE_TS - 6d 9h",
2025-12-13 23:57:54 +01:00
"actual_quantity": 88.0,
"actual_duration_minutes": null,
"status": "QUARANTINED",
"priority": "MEDIUM",
"current_process_stage": "quality_check",
"process_stage_history": null,
"pending_quality_checks": null,
"completed_quality_checks": [
{
2025-12-14 16:04:16 +01:00
"id": "70000000-0000-0000-0000-000000000003",
"check_type": "taste_test",
"status": "completed",
"result": "failed",
"quality_score": 6.5
2025-12-13 23:57:54 +01:00
}
],
"estimated_cost": 220.0,
"actual_cost": 218.0,
"labor_cost": 95.0,
"material_cost": 98.0,
"overhead_cost": 25.0,
"yield_percentage": 97.8,
2025-12-14 16:04:16 +01:00
"quality_score": 6.5,
2025-12-13 23:57:54 +01:00
"waste_quantity": 1.0,
2025-12-14 16:04:16 +01:00
"defect_quantity": 10.0,
2025-12-13 23:57:54 +01:00
"waste_defect_type": "off_taste",
"equipment_used": [
"30000000-0000-0000-0000-000000000001",
"30000000-0000-0000-0000-000000000002"
],
"staff_assigned": [],
"station_id": "STATION-02",
"order_id": null,
"forecast_id": null,
"is_rush_order": false,
"is_special_recipe": false,
"is_ai_assisted": false,
"production_notes": "⚠️ CRITICAL: Lote en cuarentena por fallo en control de calidad",
"quality_notes": "Sabor amargo en chocolate - Investigación en curso con proveedor",
"delay_reason": null,
"cancellation_reason": null,
"reasoning_data": null,
2025-12-14 11:58:14 +01:00
"created_at": "BASE_TS",
"updated_at": "BASE_TS",
2025-12-13 23:57:54 +01:00
"completed_at": null
},
{
"id": "40000000-0000-0000-0000-000000000005",
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
"batch_number": "BATCH-20250117-001",
"product_id": "20000000-0000-0000-0000-000000000001",
"product_name": "Baguette Francesa Tradicional",
"recipe_id": "30000000-0000-0000-0000-000000000001",
2025-12-14 11:58:14 +01:00
"planned_start_time": "BASE_TS - 5d 6h",
"planned_end_time": "BASE_TS - 5d 8h 45m",
2025-12-13 23:57:54 +01:00
"planned_quantity": 120.0,
"planned_duration_minutes": 165,
2025-12-14 11:58:14 +01:00
"actual_start_time": "BASE_TS - 5d 6h",
"actual_end_time": "BASE_TS - 5d 8h 45m",
2025-12-13 23:57:54 +01:00
"actual_quantity": 118.0,
"actual_duration_minutes": null,
"status": "COMPLETED",
"priority": "HIGH",
"current_process_stage": "packaging",
"process_stage_history": null,
"pending_quality_checks": null,
"completed_quality_checks": null,
"estimated_cost": 180.0,
"actual_cost": 177.0,
"labor_cost": 95.0,
"material_cost": 65.0,
"overhead_cost": 17.0,
"yield_percentage": 98.3,
"quality_score": 96.0,
"waste_quantity": 1.5,
"defect_quantity": 0.5,
"waste_defect_type": "underproofed",
"equipment_used": [
"30000000-0000-0000-0000-000000000001"
],
"staff_assigned": [],
"station_id": "STATION-01",
"order_id": null,
"forecast_id": null,
"is_rush_order": false,
"is_special_recipe": false,
"is_ai_assisted": true,
"production_notes": "Lote grande para pedido especial",
"quality_notes": "1.5kg por fermentación insuficiente",
"delay_reason": null,
"cancellation_reason": null,
"reasoning_data": null,
2025-12-14 11:58:14 +01:00
"created_at": "BASE_TS",
"updated_at": "BASE_TS",
2025-12-13 23:57:54 +01:00
"completed_at": null
},
{
"id": "40000000-0000-0000-0000-000000000006",
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
"batch_number": "BATCH-20250117-002",
"product_id": "20000000-0000-0000-0000-000000000002",
"product_name": "Croissant de Mantequilla Artesanal",
"recipe_id": "30000000-0000-0000-0000-000000000002",
2025-12-14 11:58:14 +01:00
"planned_start_time": "BASE_TS - 5d 5h",
"planned_end_time": "BASE_TS - 5d 9h",
2025-12-13 23:57:54 +01:00
"planned_quantity": 100.0,
"planned_duration_minutes": 240,
2025-12-14 11:58:14 +01:00
"actual_start_time": "BASE_TS - 5d 5h",
"actual_end_time": "BASE_TS - 5d 9h",
2025-12-13 23:57:54 +01:00
"actual_quantity": 96.0,
"actual_duration_minutes": null,
"status": "COMPLETED",
"priority": "MEDIUM",
"current_process_stage": "packaging",
"process_stage_history": null,
"pending_quality_checks": null,
"completed_quality_checks": null,
"estimated_cost": 240.0,
"actual_cost": 238.0,
"labor_cost": 105.0,
"material_cost": 105.0,
"overhead_cost": 28.0,
"yield_percentage": 96.0,
"quality_score": 90.0,
"waste_quantity": 2.0,
"defect_quantity": 2.0,
"waste_defect_type": "temperature_issues",
"equipment_used": [
"30000000-0000-0000-0000-000000000002",
"30000000-0000-0000-0000-000000000001"
],
"staff_assigned": [],
"station_id": "STATION-02",
"order_id": null,
"forecast_id": null,
"is_rush_order": false,
"is_special_recipe": false,
"is_ai_assisted": false,
"production_notes": "Algunos croissants con desarrollo irregular",
"quality_notes": "2kg descartados por problemas de temperatura en fermentación",
"delay_reason": null,
"cancellation_reason": null,
"reasoning_data": null,
2025-12-14 11:58:14 +01:00
"created_at": "BASE_TS",
"updated_at": "BASE_TS",
2025-12-13 23:57:54 +01:00
"completed_at": null
},
{
"id": "40000000-0000-0000-0000-000000000007",
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
"batch_number": "BATCH-20250118-001",
"product_id": "20000000-0000-0000-0000-000000000001",
"product_name": "Baguette Francesa Tradicional",
"recipe_id": "30000000-0000-0000-0000-000000000001",
2025-12-14 11:58:14 +01:00
"planned_start_time": "BASE_TS - 4d 6h",
"planned_end_time": "BASE_TS - 4d 8h 45m",
2025-12-13 23:57:54 +01:00
"planned_quantity": 100.0,
"planned_duration_minutes": 165,
2025-12-14 11:58:14 +01:00
"actual_start_time": "BASE_TS - 4d 6h",
"actual_end_time": "BASE_TS - 4d 8h 45m",
2025-12-13 23:57:54 +01:00
"actual_quantity": 99.0,
"actual_duration_minutes": null,
"status": "COMPLETED",
"priority": "MEDIUM",
"current_process_stage": "packaging",
"process_stage_history": null,
"pending_quality_checks": null,
"completed_quality_checks": null,
"estimated_cost": 150.0,
"actual_cost": 149.0,
"labor_cost": 80.0,
"material_cost": 55.0,
"overhead_cost": 14.0,
"yield_percentage": 99.0,
"quality_score": 97.0,
"waste_quantity": 1.0,
"defect_quantity": 0.0,
"waste_defect_type": "burnt",
"equipment_used": [
"30000000-0000-0000-0000-000000000001"
],
"staff_assigned": [],
"station_id": "STATION-01",
"order_id": null,
"forecast_id": null,
"is_rush_order": false,
"is_special_recipe": false,
"is_ai_assisted": true,
"production_notes": "Excelente resultado",
"quality_notes": "1kg quemado por ajuste de horno",
"delay_reason": null,
"cancellation_reason": null,
"reasoning_data": null,
2025-12-14 11:58:14 +01:00
"created_at": "BASE_TS",
"updated_at": "BASE_TS",
2025-12-13 23:57:54 +01:00
"completed_at": null
},
{
"id": "40000000-0000-0000-0000-000000000008",
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
"batch_number": "BATCH-20250118-002",
"product_id": "20000000-0000-0000-0000-000000000003",
"product_name": "Pan de Pueblo con Masa Madre",
"recipe_id": "30000000-0000-0000-0000-000000000003",
2025-12-14 11:58:14 +01:00
"planned_start_time": "BASE_TS - 4d 7h",
"planned_end_time": "BASE_TS - 4d 12h",
2025-12-13 23:57:54 +01:00
"planned_quantity": 60.0,
"planned_duration_minutes": 300,
2025-12-14 11:58:14 +01:00
"actual_start_time": "BASE_TS - 4d 7h",
"actual_end_time": "BASE_TS - 4d 12h",
2025-12-13 23:57:54 +01:00
"actual_quantity": 60.0,
"actual_duration_minutes": null,
"status": "COMPLETED",
"priority": "LOW",
"current_process_stage": "packaging",
"process_stage_history": null,
"pending_quality_checks": null,
"completed_quality_checks": null,
"estimated_cost": 155.0,
"actual_cost": 152.0,
"labor_cost": 70.0,
"material_cost": 65.0,
"overhead_cost": 17.0,
"yield_percentage": 100.0,
"quality_score": 99.0,
"waste_quantity": 0.0,
"defect_quantity": 0.0,
"waste_defect_type": null,
"equipment_used": [
"30000000-0000-0000-0000-000000000001"
],
"staff_assigned": [],
"station_id": "STATION-01",
"order_id": null,
"forecast_id": null,
"is_rush_order": false,
"is_special_recipe": true,
"is_ai_assisted": true,
"production_notes": "Masa madre en punto óptimo",
"quality_notes": "Batch perfecto, sin desperdicios",
"delay_reason": null,
"cancellation_reason": null,
"reasoning_data": null,
2025-12-14 11:58:14 +01:00
"created_at": "BASE_TS",
"updated_at": "BASE_TS",
2025-12-13 23:57:54 +01:00
"completed_at": null
},
{
"id": "40000000-0000-0000-0000-000000000009",
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
"batch_number": "BATCH-20250119-001",
"product_id": "20000000-0000-0000-0000-000000000002",
"product_name": "Croissant de Mantequilla Artesanal",
"recipe_id": "30000000-0000-0000-0000-000000000002",
2025-12-14 11:58:14 +01:00
"planned_start_time": "BASE_TS - 3d 5h",
"planned_end_time": "BASE_TS - 3d 9h",
2025-12-13 23:57:54 +01:00
"planned_quantity": 150.0,
"planned_duration_minutes": 240,
2025-12-14 11:58:14 +01:00
"actual_start_time": "BASE_TS - 3d 5h",
"actual_end_time": "BASE_TS - 3d 9h",
2025-12-13 23:57:54 +01:00
"actual_quantity": 145.0,
"actual_duration_minutes": null,
"status": "COMPLETED",
"priority": "URGENT",
"current_process_stage": "packaging",
"process_stage_history": null,
"pending_quality_checks": null,
"completed_quality_checks": null,
"estimated_cost": 350.0,
"actual_cost": 345.0,
"labor_cost": 150.0,
"material_cost": 155.0,
"overhead_cost": 40.0,
"yield_percentage": 96.7,
"quality_score": 93.0,
"waste_quantity": 3.0,
"defect_quantity": 2.0,
"waste_defect_type": "burnt",
"equipment_used": [
"30000000-0000-0000-0000-000000000002",
"30000000-0000-0000-0000-000000000001"
],
"staff_assigned": [],
"station_id": "STATION-02",
"order_id": null,
"forecast_id": null,
"is_rush_order": true,
"is_special_recipe": false,
"is_ai_assisted": true,
"production_notes": "Pedido urgente de evento corporativo",
"quality_notes": "3kg quemados por presión de tiempo, 2kg descartados",
"delay_reason": null,
"cancellation_reason": null,
"reasoning_data": null,
2025-12-14 11:58:14 +01:00
"created_at": "BASE_TS",
"updated_at": "BASE_TS",
2025-12-13 23:57:54 +01:00
"completed_at": null
},
{
"id": "40000000-0000-0000-0000-000000000010",
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
"batch_number": "BATCH-20250119-002",
"product_id": "20000000-0000-0000-0000-000000000004",
"product_name": "Napolitana de Chocolate",
"recipe_id": "30000000-0000-0000-0000-000000000004",
2025-12-14 11:58:14 +01:00
"planned_start_time": "BASE_TS - 3d 6h 30m",
"planned_end_time": "BASE_TS - 3d 9h 30m",
2025-12-13 23:57:54 +01:00
"planned_quantity": 80.0,
"planned_duration_minutes": 180,
2025-12-14 11:58:14 +01:00
"actual_start_time": "BASE_TS - 3d 6h 30m",
"actual_end_time": "BASE_TS - 3d 9h 30m",
2025-12-13 23:57:54 +01:00
"actual_quantity": 79.0,
"actual_duration_minutes": null,
"status": "COMPLETED",
"priority": "MEDIUM",
"current_process_stage": "packaging",
"process_stage_history": null,
"pending_quality_checks": null,
"completed_quality_checks": null,
"estimated_cost": 195.0,
"actual_cost": 192.0,
"labor_cost": 85.0,
"material_cost": 85.0,
"overhead_cost": 22.0,
"yield_percentage": 98.8,
"quality_score": 95.0,
"waste_quantity": 0.5,
"defect_quantity": 0.5,
"waste_defect_type": "misshapen",
"equipment_used": [
"30000000-0000-0000-0000-000000000001"
],
"staff_assigned": [],
"station_id": "STATION-02",
"order_id": null,
"forecast_id": null,
"is_rush_order": false,
"is_special_recipe": false,
"is_ai_assisted": true,
"production_notes": "Buen resultado general",
"quality_notes": "0.5kg con forma irregular, descartados",
"delay_reason": null,
"cancellation_reason": null,
"reasoning_data": null,
2025-12-14 11:58:14 +01:00
"created_at": "BASE_TS",
"updated_at": "BASE_TS",
2025-12-13 23:57:54 +01:00
"completed_at": null
},
{
"id": "40000000-0000-0000-0000-000000000011",
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
"batch_number": "BATCH-20250120-001",
"product_id": "20000000-0000-0000-0000-000000000001",
"product_name": "Baguette Francesa Tradicional",
"recipe_id": "30000000-0000-0000-0000-000000000001",
2025-12-14 11:58:14 +01:00
"planned_start_time": "BASE_TS - 2d 6h",
"planned_end_time": "BASE_TS - 2d 8h 45m",
2025-12-13 23:57:54 +01:00
"planned_quantity": 110.0,
"planned_duration_minutes": 165,
2025-12-14 11:58:14 +01:00
"actual_start_time": "BASE_TS - 2d 6h",
"actual_end_time": "BASE_TS - 2d 8h 45m",
2025-12-13 23:57:54 +01:00
"actual_quantity": 108.0,
"actual_duration_minutes": null,
"status": "COMPLETED",
"priority": "MEDIUM",
"current_process_stage": "packaging",
"process_stage_history": null,
"pending_quality_checks": null,
"completed_quality_checks": null,
"estimated_cost": 165.0,
"actual_cost": 162.0,
"labor_cost": 88.0,
"material_cost": 60.0,
"overhead_cost": 14.0,
"yield_percentage": 98.2,
"quality_score": 96.0,
"waste_quantity": 1.5,
"defect_quantity": 0.5,
"waste_defect_type": "underproofed",
"equipment_used": [
"30000000-0000-0000-0000-000000000001"
],
"staff_assigned": [],
"station_id": "STATION-01",
"order_id": null,
"forecast_id": null,
"is_rush_order": false,
"is_special_recipe": false,
"is_ai_assisted": true,
"production_notes": "Producción estándar",
"quality_notes": "1.5kg con fermentación insuficiente, 0.5kg descartados",
"delay_reason": null,
"cancellation_reason": null,
"reasoning_data": null,
2025-12-14 11:58:14 +01:00
"created_at": "BASE_TS",
"updated_at": "BASE_TS",
2025-12-13 23:57:54 +01:00
"completed_at": null
},
{
"id": "40000000-0000-0000-0000-000000000012",
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
"batch_number": "BATCH-20250120-002",
"product_id": "20000000-0000-0000-0000-000000000003",
"product_name": "Pan de Pueblo con Masa Madre",
"recipe_id": "30000000-0000-0000-0000-000000000003",
2025-12-14 11:58:14 +01:00
"planned_start_time": "BASE_TS - 2d 7h 30m",
"planned_end_time": "BASE_TS - 2d 12h 30m",
2025-12-13 23:57:54 +01:00
"planned_quantity": 70.0,
"planned_duration_minutes": 300,
2025-12-14 11:58:14 +01:00
"actual_start_time": "BASE_TS - 2d 7h 30m",
"actual_end_time": "BASE_TS - 2d 12h 30m",
2025-12-13 23:57:54 +01:00
"actual_quantity": 70.0,
"actual_duration_minutes": null,
"status": "COMPLETED",
"priority": "MEDIUM",
"current_process_stage": "packaging",
"process_stage_history": null,
"pending_quality_checks": null,
"completed_quality_checks": null,
"estimated_cost": 175.0,
"actual_cost": 172.0,
"labor_cost": 80.0,
"material_cost": 72.0,
"overhead_cost": 20.0,
"yield_percentage": 100.0,
"quality_score": 98.0,
"waste_quantity": 0.0,
"defect_quantity": 0.0,
"waste_defect_type": null,
"equipment_used": [
"30000000-0000-0000-0000-000000000001"
],
"staff_assigned": [],
"station_id": "STATION-01",
"order_id": null,
"forecast_id": null,
"is_rush_order": false,
"is_special_recipe": true,
"is_ai_assisted": true,
"production_notes": "Fermentación perfecta",
"quality_notes": "Batch perfecto, optimizado por IA",
"delay_reason": null,
"cancellation_reason": null,
"reasoning_data": null,
2025-12-14 11:58:14 +01:00
"created_at": "BASE_TS",
"updated_at": "BASE_TS",
2025-12-13 23:57:54 +01:00
"completed_at": null
},
{
"id": "40000000-0000-0000-0000-000000000013",
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
"batch_number": "BATCH-20250121-001",
"product_id": "20000000-0000-0000-0000-000000000002",
"product_name": "Croissant de Mantequilla Artesanal",
"recipe_id": "30000000-0000-0000-0000-000000000002",
2025-12-14 11:58:14 +01:00
"planned_start_time": "BASE_TS - 1d 5h",
"planned_end_time": "BASE_TS - 1d 9h",
2025-12-13 23:57:54 +01:00
"planned_quantity": 130.0,
"planned_duration_minutes": 240,
2025-12-14 11:58:14 +01:00
"actual_start_time": "BASE_TS - 1d 5h",
"actual_end_time": "BASE_TS - 1d 9h",
2025-12-13 23:57:54 +01:00
"actual_quantity": 125.0,
"actual_duration_minutes": null,
"status": "COMPLETED",
"priority": "HIGH",
"current_process_stage": "packaging",
"process_stage_history": null,
"pending_quality_checks": null,
"completed_quality_checks": null,
"estimated_cost": 310.0,
"actual_cost": 305.0,
"labor_cost": 135.0,
"material_cost": 138.0,
"overhead_cost": 32.0,
"yield_percentage": 96.2,
"quality_score": 94.0,
"waste_quantity": 3.0,
"defect_quantity": 2.0,
"waste_defect_type": "burnt",
"equipment_used": [
"30000000-0000-0000-0000-000000000002",
"30000000-0000-0000-0000-000000000001"
],
"staff_assigned": [],
"station_id": "STATION-02",
"order_id": null,
"forecast_id": null,
"is_rush_order": false,
"is_special_recipe": false,
"is_ai_assisted": false,
"production_notes": "Demanda elevada del fin de semana",
"quality_notes": "3kg quemados por sobrecarga de horno, 2kg descartados",
"delay_reason": null,
"cancellation_reason": null,
"reasoning_data": null,
2025-12-14 11:58:14 +01:00
"created_at": "BASE_TS",
"updated_at": "BASE_TS",
2025-12-13 23:57:54 +01:00
"completed_at": null
},
{
"id": "40000000-0000-0000-0000-000000000014",
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
"batch_number": "BATCH-20250121-002",
"product_id": "20000000-0000-0000-0000-000000000001",
"product_name": "Baguette Francesa Tradicional",
"recipe_id": "30000000-0000-0000-0000-000000000001",
2025-12-14 11:58:14 +01:00
"planned_start_time": "BASE_TS - 1d 6h 30m",
"planned_end_time": "BASE_TS - 1d 9h 15m",
2025-12-13 23:57:54 +01:00
"planned_quantity": 120.0,
"planned_duration_minutes": 165,
2025-12-14 11:58:14 +01:00
"actual_start_time": "BASE_TS - 1d 6h 30m",
"actual_end_time": "BASE_TS - 1d 9h 15m",
2025-12-13 23:57:54 +01:00
"actual_quantity": 118.0,
"actual_duration_minutes": null,
"status": "COMPLETED",
"priority": "HIGH",
"current_process_stage": "packaging",
"process_stage_history": null,
"pending_quality_checks": null,
"completed_quality_checks": null,
"estimated_cost": 180.0,
"actual_cost": 178.0,
"labor_cost": 95.0,
"material_cost": 66.0,
"overhead_cost": 17.0,
"yield_percentage": 98.3,
"quality_score": 97.0,
"waste_quantity": 1.5,
"defect_quantity": 0.5,
"waste_defect_type": "burnt",
"equipment_used": [
"30000000-0000-0000-0000-000000000001"
],
"staff_assigned": [],
"station_id": "STATION-01",
"order_id": null,
"forecast_id": null,
"is_rush_order": false,
"is_special_recipe": false,
"is_ai_assisted": true,
"production_notes": "Alta demanda de fin de semana",
"quality_notes": "1.5kg ligeramente quemados, 0.5kg descartados",
"delay_reason": null,
"cancellation_reason": null,
"reasoning_data": null,
2025-12-14 11:58:14 +01:00
"created_at": "BASE_TS",
"updated_at": "BASE_TS",
2025-12-13 23:57:54 +01:00
"completed_at": null
},
{
"id": "40000000-0000-0000-0000-000000000015",
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
"batch_number": "BATCH-20250122-001",
"product_id": "20000000-0000-0000-0000-000000000001",
"product_name": "Baguette Francesa Tradicional",
"recipe_id": "30000000-0000-0000-0000-000000000001",
2025-12-14 11:58:14 +01:00
"planned_start_time": "BASE_TS + 6h",
"planned_end_time": "BASE_TS + 8h 45m",
2025-12-13 23:57:54 +01:00
"planned_quantity": 100.0,
"planned_duration_minutes": 165,
2025-12-14 11:58:14 +01:00
"actual_start_time": "BASE_TS + 6h",
2025-12-13 23:57:54 +01:00
"actual_end_time": null,
"actual_quantity": null,
"actual_duration_minutes": null,
"status": "IN_PROGRESS",
"priority": "MEDIUM",
"current_process_stage": "baking",
"process_stage_history": null,
2025-12-14 16:04:16 +01:00
"pending_quality_checks": [
{
"id": "70000000-0000-0000-0000-000000000004",
"check_type": "visual_inspection",
"status": "pending"
}
],
2025-12-13 23:57:54 +01:00
"completed_quality_checks": null,
"estimated_cost": 150.0,
"actual_cost": null,
"labor_cost": null,
"material_cost": null,
"overhead_cost": null,
"yield_percentage": null,
"quality_score": null,
"waste_quantity": null,
"defect_quantity": null,
"waste_defect_type": null,
"equipment_used": [
"30000000-0000-0000-0000-000000000001"
],
"staff_assigned": [],
"station_id": "STATION-01",
"order_id": null,
"forecast_id": null,
"is_rush_order": false,
"is_special_recipe": false,
"is_ai_assisted": true,
"production_notes": "Producción en curso con predicción de IA",
"quality_notes": null,
"delay_reason": null,
"cancellation_reason": null,
"reasoning_data": null,
2025-12-14 11:58:14 +01:00
"created_at": "BASE_TS",
"updated_at": "BASE_TS",
2025-12-13 23:57:54 +01:00
"completed_at": null
},
{
"id": "40000000-0000-0000-0000-000000000016",
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
"batch_number": "BATCH-20250122-002",
"product_id": "20000000-0000-0000-0000-000000000002",
"product_name": "Croissant de Mantequilla Artesanal",
"recipe_id": "30000000-0000-0000-0000-000000000002",
2025-12-14 11:58:14 +01:00
"planned_start_time": "BASE_TS + 8h",
"planned_end_time": "BASE_TS + 12h",
2025-12-13 23:57:54 +01:00
"planned_quantity": 100.0,
"planned_duration_minutes": 240,
"actual_start_time": null,
"actual_end_time": null,
"actual_quantity": null,
"actual_duration_minutes": null,
"status": "PENDING",
"priority": "MEDIUM",
"current_process_stage": null,
"process_stage_history": null,
"pending_quality_checks": null,
"completed_quality_checks": null,
"estimated_cost": 240.0,
"actual_cost": null,
"labor_cost": null,
"material_cost": null,
"overhead_cost": null,
"yield_percentage": null,
"quality_score": null,
"waste_quantity": null,
"defect_quantity": null,
"waste_defect_type": null,
"equipment_used": [
"30000000-0000-0000-0000-000000000002",
"30000000-0000-0000-0000-000000000001"
],
"staff_assigned": [],
"station_id": "STATION-02",
"order_id": null,
"forecast_id": null,
"is_rush_order": false,
"is_special_recipe": false,
"is_ai_assisted": true,
"production_notes": "Pendiente de inicio - cantidad optimizada por IA",
"quality_notes": null,
"delay_reason": null,
"cancellation_reason": null,
"reasoning_data": null,
2025-12-14 11:58:14 +01:00
"created_at": "BASE_TS",
"updated_at": "BASE_TS",
2025-12-13 23:57:54 +01:00
"completed_at": null
},
{
"id": "40000000-0000-0000-0000-000000000017",
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
"batch_number": "BATCH-20250123-001",
"product_id": "20000000-0000-0000-0000-000000000003",
"product_name": "Pan de Pueblo con Masa Madre",
"recipe_id": "30000000-0000-0000-0000-000000000003",
2025-12-14 11:58:14 +01:00
"planned_start_time": "BASE_TS + 1d 7h",
"planned_end_time": "BASE_TS + 1d 12h",
2025-12-13 23:57:54 +01:00
"planned_quantity": 75.0,
"planned_duration_minutes": 300,
"actual_start_time": null,
"actual_end_time": null,
"actual_quantity": null,
"actual_duration_minutes": null,
"status": "PENDING",
"priority": "MEDIUM",
"current_process_stage": null,
"process_stage_history": null,
"pending_quality_checks": null,
"completed_quality_checks": null,
"estimated_cost": 185.0,
"actual_cost": null,
"labor_cost": null,
"material_cost": null,
"overhead_cost": null,
"yield_percentage": null,
"quality_score": null,
"waste_quantity": null,
"defect_quantity": null,
"waste_defect_type": null,
"equipment_used": [
"30000000-0000-0000-0000-000000000001"
],
"staff_assigned": [],
"station_id": "STATION-01",
"order_id": null,
"forecast_id": null,
"is_rush_order": false,
"is_special_recipe": true,
"is_ai_assisted": true,
"production_notes": "Planificado para mañana con predicción de demanda IA",
"quality_notes": null,
"delay_reason": null,
"cancellation_reason": null,
"reasoning_data": null,
2025-12-14 11:58:14 +01:00
"created_at": "BASE_TS",
"updated_at": "BASE_TS",
2025-12-13 23:57:54 +01:00
"completed_at": null
},
{
"id": "40000000-0000-0000-0000-000000000018",
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
"batch_number": "BATCH-20250123-002",
"product_id": "20000000-0000-0000-0000-000000000004",
"product_name": "Napolitana de Chocolate",
"recipe_id": "30000000-0000-0000-0000-000000000004",
2025-12-14 11:58:14 +01:00
"planned_start_time": "BASE_TS + 1d 6h",
"planned_end_time": "BASE_TS + 1d 9h",
2025-12-13 23:57:54 +01:00
"planned_quantity": 85.0,
"planned_duration_minutes": 180,
"actual_start_time": null,
"actual_end_time": null,
"actual_quantity": null,
"actual_duration_minutes": null,
"status": "PENDING",
"priority": "LOW",
"current_process_stage": null,
"process_stage_history": null,
"pending_quality_checks": null,
"completed_quality_checks": null,
"estimated_cost": 210.0,
"actual_cost": null,
"labor_cost": null,
"material_cost": null,
"overhead_cost": null,
"yield_percentage": null,
"quality_score": null,
"waste_quantity": null,
"defect_quantity": null,
"waste_defect_type": null,
"equipment_used": [
"30000000-0000-0000-0000-000000000001"
],
"staff_assigned": [],
"station_id": "STATION-02",
"order_id": null,
"forecast_id": null,
"is_rush_order": false,
"is_special_recipe": false,
"is_ai_assisted": false,
"production_notes": "Planificado para mañana",
"quality_notes": null,
"delay_reason": null,
"cancellation_reason": null,
"reasoning_data": null,
2025-12-14 11:58:14 +01:00
"created_at": "BASE_TS",
"updated_at": "BASE_TS",
2025-12-13 23:57:54 +01:00
"completed_at": null
},
{
"id": "40000000-0000-0000-0000-999999999001",
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
"batch_number": "BATCH-TODAY-001",
"product_id": "20000000-0000-0000-0000-000000000002",
"product_name": "Croissant de Mantequilla Artesanal",
"recipe_id": "30000000-0000-0000-0000-000000000002",
2025-12-14 11:58:14 +01:00
"planned_start_time": "BASE_TS + 6h",
"planned_end_time": "BASE_TS + 10h",
2025-12-13 23:57:54 +01:00
"planned_quantity": 120.0,
"planned_duration_minutes": 240,
"actual_start_time": null,
"actual_end_time": null,
"actual_quantity": null,
"actual_duration_minutes": null,
"status": "PENDING",
"priority": "HIGH",
"current_process_stage": null,
"process_stage_history": null,
"pending_quality_checks": null,
"completed_quality_checks": null,
"estimated_cost": 280.0,
"actual_cost": null,
"labor_cost": null,
"material_cost": null,
"overhead_cost": null,
"yield_percentage": null,
"quality_score": null,
"waste_quantity": null,
"defect_quantity": null,
"waste_defect_type": null,
"equipment_used": [
"30000000-0000-0000-0000-000000000002",
"30000000-0000-0000-0000-000000000001"
],
"staff_assigned": [],
"station_id": "STATION-02",
"order_id": null,
"forecast_id": null,
"is_rush_order": false,
"is_special_recipe": false,
"is_ai_assisted": true,
"production_notes": "Lote programado para hoy - Demanda prevista alta",
"quality_notes": null,
"delay_reason": null,
"cancellation_reason": null,
"reasoning_data": null,
2025-12-14 11:58:14 +01:00
"created_at": "BASE_TS",
"updated_at": "BASE_TS",
2025-12-13 23:57:54 +01:00
"completed_at": null
},
{
"id": "40000000-0000-0000-0000-999999999002",
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
"batch_number": "BATCH-TODAY-002",
"product_id": "20000000-0000-0000-0000-000000000001",
"product_name": "Baguette Francesa Tradicional",
"recipe_id": "30000000-0000-0000-0000-000000000001",
2025-12-14 11:58:14 +01:00
"planned_start_time": "BASE_TS + 8h 30m",
"planned_end_time": "BASE_TS + 11h 15m",
2025-12-13 23:57:54 +01:00
"planned_quantity": 100.0,
"planned_duration_minutes": 165,
"actual_start_time": null,
"actual_end_time": null,
"actual_quantity": null,
"actual_duration_minutes": null,
"status": "PENDING",
"priority": "MEDIUM",
"current_process_stage": null,
"process_stage_history": null,
"pending_quality_checks": null,
"completed_quality_checks": null,
"estimated_cost": 150.0,
"actual_cost": null,
"labor_cost": null,
"material_cost": null,
"overhead_cost": null,
"yield_percentage": null,
"quality_score": null,
"waste_quantity": null,
"defect_quantity": null,
"waste_defect_type": null,
"equipment_used": [
"30000000-0000-0000-0000-000000000001"
],
"staff_assigned": [],
"station_id": "STATION-01",
"order_id": null,
"forecast_id": null,
"is_rush_order": false,
"is_special_recipe": false,
"is_ai_assisted": true,
"production_notes": "Producción diaria programada",
"quality_notes": null,
"delay_reason": null,
"cancellation_reason": null,
"reasoning_data": null,
2025-12-14 11:58:14 +01:00
"created_at": "BASE_TS",
"updated_at": "BASE_TS",
2025-12-13 23:57:54 +01:00
"completed_at": null
},
{
"id": "40000000-0000-0000-0000-999999999003",
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
"batch_number": "BATCH-TODAY-003",
"product_id": "20000000-0000-0000-0000-000000000003",
"product_name": "Pan de Pueblo con Masa Madre",
"recipe_id": "30000000-0000-0000-0000-000000000003",
2025-12-14 11:58:14 +01:00
"planned_start_time": "BASE_TS + 10h",
"planned_end_time": "BASE_TS + 15h",
2025-12-13 23:57:54 +01:00
"planned_quantity": 60.0,
"planned_duration_minutes": 300,
"actual_start_time": null,
"actual_end_time": null,
"actual_quantity": null,
"actual_duration_minutes": null,
"status": "PENDING",
"priority": "MEDIUM",
"current_process_stage": null,
"process_stage_history": null,
"pending_quality_checks": null,
"completed_quality_checks": null,
"estimated_cost": 180.0,
"actual_cost": null,
"labor_cost": null,
"material_cost": null,
"overhead_cost": null,
"yield_percentage": null,
"quality_score": null,
"waste_quantity": null,
"defect_quantity": null,
"waste_defect_type": null,
"equipment_used": [
"30000000-0000-0000-0000-000000000001"
],
"staff_assigned": [],
"station_id": "STATION-01",
"order_id": null,
"forecast_id": null,
"is_rush_order": false,
"is_special_recipe": true,
"is_ai_assisted": true,
"production_notes": "Masa madre preparada ayer - Listo para horneado",
"quality_notes": null,
"delay_reason": null,
"cancellation_reason": null,
"reasoning_data": null,
2025-12-14 11:58:14 +01:00
"created_at": "BASE_TS",
"updated_at": "BASE_TS",
2025-12-13 23:57:54 +01:00
"completed_at": null
},
{
"id": "40000000-0000-0000-0000-0000000000a1",
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
"batch_number": "BATCH-CHOCOLATE-CAKE-EVENING",
"product_id": "20000000-0000-0000-0000-000000000004",
"product_name": "Tarta de Chocolate Premium",
"recipe_id": "30000000-0000-0000-0000-000000000004",
2025-12-14 11:58:14 +01:00
"planned_start_time": "BASE_TS + 17h",
"planned_end_time": "BASE_TS + 20h",
2025-12-13 23:57:54 +01:00
"planned_quantity": 5.0,
"planned_duration_minutes": 180,
"actual_start_time": null,
"actual_end_time": null,
"actual_quantity": null,
"actual_duration_minutes": null,
"status": "PENDING",
"priority": "HIGH",
"current_process_stage": null,
"process_stage_history": null,
"pending_quality_checks": null,
"completed_quality_checks": null,
"estimated_cost": 380.0,
"actual_cost": null,
"labor_cost": null,
"material_cost": null,
"overhead_cost": null,
"yield_percentage": null,
"quality_score": null,
"waste_quantity": null,
"defect_quantity": null,
"waste_defect_type": null,
"equipment_used": [
"30000000-0000-0000-0000-000000000001"
],
"staff_assigned": [],
"station_id": "STATION-03",
"order_id": null,
"forecast_id": null,
"is_rush_order": false,
"is_special_recipe": true,
"is_ai_assisted": true,
"production_notes": "⚠️ DASHBOARD: Scheduled in 5 hours but missing 3kg dark chocolate (CHO-NEG-001) - Will trigger BATCH_AT_RISK alert",
"quality_notes": null,
"delay_reason": null,
"cancellation_reason": null,
"reasoning_data": null,
2025-12-14 11:58:14 +01:00
"created_at": "BASE_TS",
"updated_at": "BASE_TS",
2025-12-13 23:57:54 +01:00
"completed_at": null
},
{
"id": "40000000-0000-0000-0000-0000000000a2",
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
"batch_number": "BATCH-CROISSANTS-TOMORROW",
"product_id": "20000000-0000-0000-0000-000000000002",
"product_name": "Croissant de Mantequilla Artesanal",
"recipe_id": "30000000-0000-0000-0000-000000000002",
2025-12-14 11:58:14 +01:00
"planned_start_time": "BASE_TS + 1d 5h",
"planned_end_time": "BASE_TS + 1d 9h",
2025-12-13 23:57:54 +01:00
"planned_quantity": 150.0,
"planned_duration_minutes": 240,
"actual_start_time": null,
"actual_end_time": null,
"actual_quantity": null,
"actual_duration_minutes": null,
"status": "PENDING",
"priority": "HIGH",
"current_process_stage": null,
"process_stage_history": null,
"pending_quality_checks": null,
"completed_quality_checks": null,
"estimated_cost": 420.0,
"actual_cost": null,
"labor_cost": null,
"material_cost": null,
"overhead_cost": null,
"yield_percentage": null,
"quality_score": null,
"waste_quantity": null,
"defect_quantity": null,
"waste_defect_type": null,
"equipment_used": [
"30000000-0000-0000-0000-000000000002",
"30000000-0000-0000-0000-000000000001"
],
"staff_assigned": [],
"station_id": "STATION-02",
"order_id": null,
"forecast_id": null,
"is_rush_order": false,
"is_special_recipe": false,
"is_ai_assisted": true,
"production_notes": "⚠️ DASHBOARD: Tomorrow morning batch - Depends on yeast (LEV-SEC-001) and butter (MAN-SAL-001) - Coordinates with PO approval escalation scenario",
"quality_notes": null,
"delay_reason": null,
"cancellation_reason": null,
"reasoning_data": null,
2025-12-14 11:58:14 +01:00
"created_at": "BASE_TS",
"updated_at": "BASE_TS",
2025-12-13 23:57:54 +01:00
"completed_at": null
},
{
"id": "40000000-0000-0000-0000-0000000000a3",
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
"batch_number": "BATCH-BAGUETTES-001",
"product_id": "20000000-0000-0000-0000-000000000001",
"product_name": "Baguette Francesa Tradicional",
"recipe_id": "30000000-0000-0000-0000-000000000001",
2025-12-14 11:58:14 +01:00
"planned_start_time": "BASE_TS + 14h",
"planned_end_time": "BASE_TS + 16h 45m",
2025-12-13 23:57:54 +01:00
"planned_quantity": 80.0,
"planned_duration_minutes": 165,
"actual_start_time": null,
"actual_end_time": null,
"actual_quantity": null,
"actual_duration_minutes": null,
"status": "PENDING",
"priority": "MEDIUM",
"current_process_stage": null,
"process_stage_history": null,
"pending_quality_checks": null,
"completed_quality_checks": null,
"estimated_cost": 120.0,
"actual_cost": null,
"labor_cost": null,
"material_cost": null,
"overhead_cost": null,
"yield_percentage": null,
"quality_score": null,
"waste_quantity": null,
"defect_quantity": null,
"waste_defect_type": null,
"equipment_used": [
"30000000-0000-0000-0000-000000000001"
],
"staff_assigned": [],
"station_id": "STATION-01",
"order_id": null,
"forecast_id": null,
"is_rush_order": false,
"is_special_recipe": false,
"is_ai_assisted": true,
"production_notes": "⚠️ DASHBOARD: At risk due to flour (HAR-T55-001) running low - Will be affected if delivery is late",
"quality_notes": null,
"delay_reason": null,
"cancellation_reason": null,
"reasoning_data": null,
2025-12-14 11:58:14 +01:00
"created_at": "BASE_TS",
"updated_at": "BASE_TS",
2025-12-13 23:57:54 +01:00
"completed_at": null
}
2025-12-14 16:04:16 +01:00
],
"quality_checks": [
{
"id": "70000000-0000-0000-0000-000000000001",
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
"batch_id": "40000000-0000-0000-0000-000000000001",
"check_type": "visual_inspection",
"check_time": "2025-01-08T14:30:00Z",
"checker_id": "50000000-0000-0000-0000-000000000007",
"quality_score": 9.5,
"pass_fail": true,
"defect_count": 2,
"defect_types": [
{
"defect_type": "burnt",
"quantity": 2.0,
"severity": "minor"
}
],
"check_notes": "Excelente aspecto y textura, 2 unidades con quemaduras leves (dentro de tolerancia)",
"corrective_actions": null,
"created_at": "BASE_TS - 7d 8h 30m",
"updated_at": "BASE_TS - 7d 8h 45m"
},
{
"id": "70000000-0000-0000-0000-000000000002",
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
"batch_id": "40000000-0000-0000-0000-000000000002",
"check_type": "dimensional_check",
"check_time": "2025-01-08T14:45:00Z",
"checker_id": "50000000-0000-0000-0000-000000000007",
"quality_score": 9.2,
"pass_fail": true,
"defect_count": 3,
"defect_types": [
{
"defect_type": "misshapen",
"quantity": 3.0,
"severity": "minor"
}
],
"check_notes": "Buen desarrollo y laminado, 3 unidades con forma irregular (dentro de tolerancia)",
"corrective_actions": null,
"created_at": "BASE_TS - 7d 8h 45m",
"updated_at": "BASE_TS - 7d 9h"
},
{
"id": "70000000-0000-0000-0000-000000000003",
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
"batch_id": "40000000-0000-0000-0000-000000000004",
"check_type": "taste_test",
"check_time": "2025-01-09T14:30:00Z",
"checker_id": "50000000-0000-0000-0000-000000000007",
"quality_score": 6.5,
"pass_fail": false,
"defect_count": 10,
"defect_types": [
{
"defect_type": "off_taste",
"quantity": 10.0,
"severity": "major"
}
],
"check_notes": "⚠️ CRITICAL: Sabor amargo en el chocolate, posible problema con proveedor de cacao",
"corrective_actions": [
"Lote puesto en cuarentena",
"Notificado proveedor de chocolate",
"Programada nueva prueba con muestra diferente"
],
"created_at": "BASE_TS - 6d 8h 30m",
"updated_at": "BASE_TS - 6d 9h"
},
{
"id": "70000000-0000-0000-0000-000000000004",
"tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
"batch_id": "40000000-0000-0000-0000-000000000015",
"check_type": "visual_inspection",
"check_time": "BASE_TS + 0h",
"checker_id": null,
"quality_score": 0.0,
"pass_fail": false,
"defect_count": 0,
"defect_types": null,
"check_notes": "⚠️ PENDING: Control de calidad programado para lote en producción",
"corrective_actions": null,
"created_at": "BASE_TS",
"updated_at": "BASE_TS"
}
2025-12-13 23:57:54 +01:00
]
}