demo seed change
This commit is contained in:
55
shared/demo/fixtures/enterprise/parent/01-tenant.json
Normal file
55
shared/demo/fixtures/enterprise/parent/01-tenant.json
Normal file
@@ -0,0 +1,55 @@
|
||||
{
|
||||
"tenant": {
|
||||
"id": "80000000-0000-4000-a000-000000000001",
|
||||
"name": "Panadería Central - Demo Enterprise",
|
||||
"subscription_tier": "enterprise",
|
||||
"tenant_type": "parent",
|
||||
"email": "demo.enterprise@panaderiacentral.com",
|
||||
"subdomain": "demo-central",
|
||||
"description": "Enterprise tier demo tenant with multiple locations",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"enterprise_features": [
|
||||
"multi_location_management",
|
||||
"centralized_inventory",
|
||||
"advanced_analytics",
|
||||
"custom_reporting",
|
||||
"api_access",
|
||||
"priority_support"
|
||||
]
|
||||
},
|
||||
"children": [
|
||||
{
|
||||
"id": "A0000000-0000-4000-a000-000000000001",
|
||||
"name": "Madrid Centro",
|
||||
"location": {
|
||||
"city": "Madrid",
|
||||
"zone": "Centro",
|
||||
"latitude": 40.4168,
|
||||
"longitude": -3.7038
|
||||
},
|
||||
"description": "Central Madrid location"
|
||||
},
|
||||
{
|
||||
"id": "B0000000-0000-4000-a000-000000000001",
|
||||
"name": "Barcelona Gràcia",
|
||||
"location": {
|
||||
"city": "Barcelona",
|
||||
"zone": "Gràcia",
|
||||
"latitude": 41.4036,
|
||||
"longitude": 2.1561
|
||||
},
|
||||
"description": "Barcelona Gràcia district location"
|
||||
},
|
||||
{
|
||||
"id": "C0000000-0000-4000-a000-000000000001",
|
||||
"name": "Valencia Ruzafa",
|
||||
"location": {
|
||||
"city": "Valencia",
|
||||
"zone": "Ruzafa",
|
||||
"latitude": 39.4623,
|
||||
"longitude": -0.3645
|
||||
},
|
||||
"description": "Valencia Ruzafa neighborhood location"
|
||||
}
|
||||
]
|
||||
}
|
||||
132
shared/demo/fixtures/enterprise/parent/02-auth.json
Normal file
132
shared/demo/fixtures/enterprise/parent/02-auth.json
Normal file
@@ -0,0 +1,132 @@
|
||||
{
|
||||
"users": [
|
||||
{
|
||||
"id": "d2e3f4a5-b6c7-48d9-e0f1-a2b3c4d5e6f7",
|
||||
"tenant_id": "80000000-0000-4000-a000-000000000001",
|
||||
"name": "Carlos Martínez Ruiz",
|
||||
"email": "carlos.martinez@panaderiacentral.com",
|
||||
"role": "owner",
|
||||
"position": "CEO",
|
||||
"phone": "+34 912 345 678",
|
||||
"status": "ACTIVE",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"last_login": "2025-01-15T06:00:00Z",
|
||||
"permissions": [
|
||||
"all_access",
|
||||
"enterprise_admin",
|
||||
"financial_reports",
|
||||
"multi_location_management"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "50000000-0000-0000-0000-000000000011",
|
||||
"tenant_id": "80000000-0000-4000-a000-000000000001",
|
||||
"name": "Roberto Producción",
|
||||
"email": "roberto.produccion@panaderiacentral.com",
|
||||
"role": "production_manager",
|
||||
"position": "Head of Production",
|
||||
"phone": "+34 913 456 789",
|
||||
"status": "ACTIVE",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"last_login": "2025-01-15T06:00:00Z",
|
||||
"permissions": [
|
||||
"production_management",
|
||||
"inventory_management",
|
||||
"quality_control",
|
||||
"multi_location_view"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "50000000-0000-0000-0000-000000000012",
|
||||
"tenant_id": "80000000-0000-4000-a000-000000000001",
|
||||
"name": "Marta Calidad",
|
||||
"email": "marta.calidad@panaderiacentral.com",
|
||||
"role": "quality_control",
|
||||
"position": "Quality Assurance Manager",
|
||||
"phone": "+34 914 567 890",
|
||||
"status": "ACTIVE",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"last_login": "2025-01-15T06:00:00Z",
|
||||
"permissions": [
|
||||
"quality_control",
|
||||
"compliance_management",
|
||||
"audit_access",
|
||||
"multi_location_view"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "50000000-0000-0000-0000-000000000013",
|
||||
"tenant_id": "80000000-0000-4000-a000-000000000001",
|
||||
"name": "Javier Logística",
|
||||
"email": "javier.logistica@panaderiacentral.com",
|
||||
"role": "logistics",
|
||||
"position": "Logistics Coordinator",
|
||||
"phone": "+34 915 678 901",
|
||||
"status": "ACTIVE",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"last_login": "2025-01-15T06:00:00Z",
|
||||
"permissions": [
|
||||
"logistics_management",
|
||||
"delivery_scheduling",
|
||||
"fleet_management",
|
||||
"multi_location_view"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "50000000-0000-0000-0000-000000000014",
|
||||
"tenant_id": "80000000-0000-4000-a000-000000000001",
|
||||
"name": "Carmen Ventas",
|
||||
"email": "carmen.ventas@panaderiacentral.com",
|
||||
"role": "sales",
|
||||
"position": "Sales Director",
|
||||
"phone": "+34 916 789 012",
|
||||
"status": "ACTIVE",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"last_login": "2025-01-15T06:00:00Z",
|
||||
"permissions": [
|
||||
"sales_management",
|
||||
"customer_relations",
|
||||
"contract_management",
|
||||
"multi_location_view",
|
||||
"enterprise_reports"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "50000000-0000-0000-0000-000000000015",
|
||||
"tenant_id": "80000000-0000-4000-a000-000000000001",
|
||||
"name": "Luis Compras",
|
||||
"email": "luis.compras@panaderiacentral.com",
|
||||
"role": "procurement",
|
||||
"position": "Procurement Manager",
|
||||
"phone": "+34 917 890 123",
|
||||
"status": "ACTIVE",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"last_login": "2025-01-15T06:00:00Z",
|
||||
"permissions": [
|
||||
"procurement_management",
|
||||
"supplier_relations",
|
||||
"inventory_planning",
|
||||
"multi_location_view",
|
||||
"enterprise_reports"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "50000000-0000-0000-0000-000000000016",
|
||||
"tenant_id": "80000000-0000-4000-a000-000000000001",
|
||||
"name": "Miguel Mantenimiento",
|
||||
"email": "miguel.mantenimiento@panaderiacentral.com",
|
||||
"role": "maintenance",
|
||||
"position": "Maintenance Supervisor",
|
||||
"phone": "+34 918 901 234",
|
||||
"status": "ACTIVE",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"last_login": "2025-01-15T06:00:00Z",
|
||||
"permissions": [
|
||||
"equipment_maintenance",
|
||||
"facility_management",
|
||||
"iot_monitoring",
|
||||
"multi_location_view"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
114
shared/demo/fixtures/enterprise/parent/04-recipes.json
Normal file
114
shared/demo/fixtures/enterprise/parent/04-recipes.json
Normal file
@@ -0,0 +1,114 @@
|
||||
{
|
||||
"recipes": [
|
||||
{
|
||||
"id": "30000000-0000-0000-0000-000000000001",
|
||||
"tenant_id": "80000000-0000-4000-a000-000000000001",
|
||||
"name": "Baguette Premium - Enterprise Standard",
|
||||
"recipe_code": "ENT-BAG-STD-001",
|
||||
"version": "2.0",
|
||||
"finished_product_id": "20000000-0000-0000-0000-000000000001",
|
||||
"description": "Receta estándar de baguette premium para todas las ubicaciones enterprise. Optimizada para producción masiva con calidad consistente.",
|
||||
"category": "Panes",
|
||||
"cuisine_type": "Francesa",
|
||||
"difficulty_level": 2,
|
||||
"yield_quantity": 50.0,
|
||||
"yield_unit": "units",
|
||||
"prep_time_minutes": 30,
|
||||
"cook_time_minutes": 25,
|
||||
"total_time_minutes": 180,
|
||||
"rest_time_minutes": 120,
|
||||
"estimated_cost_per_unit": 1.80,
|
||||
"last_calculated_cost": 1.75,
|
||||
"cost_calculation_date": "2025-01-14T00:00:00Z",
|
||||
"target_margin_percentage": 65.0,
|
||||
"suggested_selling_price": 2.95,
|
||||
"status": "APPROVED",
|
||||
"is_active": true,
|
||||
"is_standardized": true,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"updated_at": "2025-01-15T06:00:00Z",
|
||||
"created_by": "50000000-0000-0000-0000-000000000011",
|
||||
"enterprise_standard": true,
|
||||
"applicable_locations": ["Madrid Centro", "Barcelona Gràcia", "Valencia Ruzafa"],
|
||||
"instructions": {
|
||||
"steps": [
|
||||
{
|
||||
"step": 1,
|
||||
"title": "Amasado Estándar",
|
||||
"description": "Mezclar harina, agua, sal y levadura en amasadora espiral durante 20 minutos. Temperatura de masa objetivo: 24°C.",
|
||||
"duration_minutes": 20
|
||||
},
|
||||
{
|
||||
"step": 2,
|
||||
"title": "Fermentación Controlada",
|
||||
"description": "Fermentar en cámara a 26°C con 75% humedad durante 90 minutos.",
|
||||
"duration_minutes": 90
|
||||
},
|
||||
{
|
||||
"step": 3,
|
||||
"title": "División y Formado",
|
||||
"description": "Dividir en piezas de 280g y formar baguettes con equipo automático.",
|
||||
"duration_minutes": 25
|
||||
},
|
||||
{
|
||||
"step": 4,
|
||||
"title": "Fermentación Final",
|
||||
"description": "Fermentación final en cámara a 28°C con 80% humedad durante 60 minutos.",
|
||||
"duration_minutes": 60
|
||||
},
|
||||
{
|
||||
"step": 5,
|
||||
"title": "Cocción",
|
||||
"description": "Hornear a 240°C con vapor durante 25 minutos en horno rotativo.",
|
||||
"duration_minutes": 25
|
||||
}
|
||||
],
|
||||
"quality_checks": [
|
||||
{
|
||||
"check": "Temperatura de masa",
|
||||
"target": "24°C",
|
||||
"tolerance": "±1°C"
|
||||
},
|
||||
{
|
||||
"check": "Peso final",
|
||||
"target": "280g",
|
||||
"tolerance": "±5g"
|
||||
},
|
||||
{
|
||||
"check": "Color de corteza",
|
||||
"target": "Dorado intenso"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
],
|
||||
"recipe_ingredients": [
|
||||
{
|
||||
"id": "30000000-0000-0000-0000-000000001001",
|
||||
"tenant_id": "80000000-0000-4000-a000-000000000001",
|
||||
"recipe_id": "30000000-0000-0000-0000-000000000001",
|
||||
"ingredient_id": "10000000-0000-0000-0000-000000000001",
|
||||
"quantity": 14.0,
|
||||
"unit": "kilograms",
|
||||
"substitution_options": [
|
||||
"10000000-0000-0000-0000-000000000002"
|
||||
],
|
||||
"is_essential": true,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"enterprise_standard": true
|
||||
},
|
||||
{
|
||||
"id": "30000000-0000-0000-0000-000000001002",
|
||||
"tenant_id": "80000000-0000-4000-a000-000000000001",
|
||||
"recipe_id": "30000000-0000-0000-0000-000000000001",
|
||||
"ingredient_id": "10000000-0000-0000-0000-000000000002",
|
||||
"quantity": 0.5,
|
||||
"unit": "kilograms",
|
||||
"substitution_options": [],
|
||||
"is_essential": false,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"enterprise_standard": true,
|
||||
"notes": "Solo para versión premium"
|
||||
}
|
||||
]
|
||||
}
|
||||
63
shared/demo/fixtures/enterprise/parent/05-suppliers.json
Normal file
63
shared/demo/fixtures/enterprise/parent/05-suppliers.json
Normal file
@@ -0,0 +1,63 @@
|
||||
{
|
||||
"suppliers": [
|
||||
{
|
||||
"id": "40000000-0000-0000-0000-000000000001",
|
||||
"tenant_id": "80000000-0000-4000-a000-000000000001",
|
||||
"name": "Molinos San José - Enterprise Division",
|
||||
"supplier_code": "SUP-HARINA-ENT-001",
|
||||
"business_name": "Molinos San José S.A. - Enterprise Division",
|
||||
"tax_id": "A12345678",
|
||||
"contact_person": "José Martínez",
|
||||
"email": "enterprise@molinossanjose.es",
|
||||
"phone": "+34 945 123 456",
|
||||
"address": "Pol. Industrial Norte, Calle 5",
|
||||
"city": "Vitoria-Gasteiz",
|
||||
"postal_code": "01000",
|
||||
"country": "España",
|
||||
"status": "ACTIVE",
|
||||
"rating": 4.8,
|
||||
"payment_terms": "60_DAYS",
|
||||
"minimum_order_amount": 1000.0,
|
||||
"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"],
|
||||
"enterprise_contract": true,
|
||||
"contract_type": "national_supply_agreement",
|
||||
"annual_volume_commitment": 50000.0,
|
||||
"preferred_supplier": true
|
||||
},
|
||||
{
|
||||
"id": "40000000-0000-0000-0000-000000000002",
|
||||
"tenant_id": "80000000-0000-4000-a000-000000000001",
|
||||
"name": "Lescure - Enterprise Division",
|
||||
"supplier_code": "SUP-LACTEO-ENT-001",
|
||||
"business_name": "Lescure S.A. - Enterprise Division",
|
||||
"tax_id": "B87654321",
|
||||
"contact_person": "María López",
|
||||
"email": "enterprise@lescure.com",
|
||||
"phone": "+34 943 234 567",
|
||||
"address": "Calle Urola, 12",
|
||||
"city": "Donostia-San Sebastián",
|
||||
"postal_code": "20001",
|
||||
"country": "España",
|
||||
"status": "ACTIVE",
|
||||
"rating": 4.9,
|
||||
"payment_terms": "30_DAYS",
|
||||
"minimum_order_amount": 500.0,
|
||||
"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"],
|
||||
"enterprise_contract": true,
|
||||
"contract_type": "premium_dairy_supply",
|
||||
"annual_volume_commitment": 12000.0,
|
||||
"preferred_supplier": true,
|
||||
"organic_certified": true
|
||||
}
|
||||
]
|
||||
}
|
||||
87
shared/demo/fixtures/enterprise/parent/06-production.json
Normal file
87
shared/demo/fixtures/enterprise/parent/06-production.json
Normal file
@@ -0,0 +1,87 @@
|
||||
{
|
||||
"equipment": [
|
||||
{
|
||||
"id": "30000000-0000-0000-0000-000000000001",
|
||||
"tenant_id": "80000000-0000-4000-a000-000000000001",
|
||||
"name": "Horno Rotativo Enterprise - Línea 1",
|
||||
"type": "oven",
|
||||
"model": "Sveba Dahlen DC-32 Enterprise",
|
||||
"serial_number": "SD-ENT-2023-001",
|
||||
"location": "Central Production Facility - Madrid",
|
||||
"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",
|
||||
"maintenance_interval_days": 90,
|
||||
"efficiency_percentage": 95.0,
|
||||
"uptime_percentage": 97.0,
|
||||
"energy_usage_kwh": 85.0,
|
||||
"power_kw": 90.0,
|
||||
"capacity": 32.0,
|
||||
"weight_kg": 2500.0,
|
||||
"current_temperature": 230.0,
|
||||
"target_temperature": 230.0,
|
||||
"iot_enabled": true,
|
||||
"iot_protocol": "MQTT",
|
||||
"iot_endpoint": "iot.panaderiacentral.com",
|
||||
"iot_port": 1883,
|
||||
"iot_connection_status": "CONNECTED",
|
||||
"iot_last_connected": "2025-01-15T05:45:00Z",
|
||||
"supports_realtime": true,
|
||||
"poll_interval_seconds": 10,
|
||||
"temperature_zones": 4,
|
||||
"supports_humidity": true,
|
||||
"supports_energy_monitoring": true,
|
||||
"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",
|
||||
"enterprise_asset": true,
|
||||
"shared_locations": ["Madrid Centro", "Barcelona Gràcia", "Valencia Ruzafa"]
|
||||
}
|
||||
],
|
||||
"production_batches": [
|
||||
{
|
||||
"id": "30000000-0000-0000-0000-000000002001",
|
||||
"tenant_id": "80000000-0000-4000-a000-000000000001",
|
||||
"batch_number": "ENT-BAG-20250115-001",
|
||||
"product_id": "20000000-0000-0000-0000-000000000001",
|
||||
"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",
|
||||
"planned_quantity": 250.0,
|
||||
"actual_quantity": 200.0,
|
||||
"waste_quantity": 5.0,
|
||||
"quality_status": "PENDING",
|
||||
"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",
|
||||
"enterprise_batch": true,
|
||||
"production_facility": "Central Production Facility - Madrid",
|
||||
"distribution_plan": [
|
||||
{
|
||||
"location": "Madrid Centro",
|
||||
"quantity": 100.0,
|
||||
"delivery_time": "2025-01-15T12:00:00Z"
|
||||
},
|
||||
{
|
||||
"location": "Barcelona Gràcia",
|
||||
"quantity": 60.0,
|
||||
"delivery_time": "2025-01-15T14:00:00Z"
|
||||
},
|
||||
{
|
||||
"location": "Valencia Ruzafa",
|
||||
"quantity": 40.0,
|
||||
"delivery_time": "2025-01-15T16:00:00Z"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
62
shared/demo/fixtures/enterprise/parent/07-procurement.json
Normal file
62
shared/demo/fixtures/enterprise/parent/07-procurement.json
Normal file
@@ -0,0 +1,62 @@
|
||||
{
|
||||
"procurement_plans": [],
|
||||
"procurement_requirements": [],
|
||||
"purchase_orders": [
|
||||
{
|
||||
"id": "50000000-0000-0000-0000-000000002001",
|
||||
"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",
|
||||
"status": "pending_approval",
|
||||
"total_amount": 650.00,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"notes": "Pedido semanal de harina para producción central",
|
||||
"enterprise_order": true,
|
||||
"contract_reference": "ENT-HARINA-2024-001",
|
||||
"payment_terms": "60_DAYS",
|
||||
"delivery_location": "Central Warehouse - Madrid",
|
||||
"incoterms": "DAP"
|
||||
}
|
||||
],
|
||||
"purchase_order_items": [
|
||||
{
|
||||
"id": "50000000-0000-0000-0000-000000002101",
|
||||
"tenant_id": "80000000-0000-4000-a000-000000000001",
|
||||
"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",
|
||||
"enterprise_item": true,
|
||||
"delivery_schedule": [
|
||||
{
|
||||
"delivery_date": "2025-01-16T10:00:00Z",
|
||||
"quantity": 800.0,
|
||||
"location": "Central Warehouse - Madrid"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "50000000-0000-0000-0000-000000002102",
|
||||
"tenant_id": "80000000-0000-4000-a000-000000000001",
|
||||
"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",
|
||||
"enterprise_item": true,
|
||||
"delivery_schedule": [
|
||||
{
|
||||
"delivery_date": "2025-01-16T10:00:00Z",
|
||||
"quantity": 12.5,
|
||||
"location": "Central Warehouse - Madrid"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"deliveries": []
|
||||
}
|
||||
112
shared/demo/fixtures/enterprise/parent/08-orders.json
Normal file
112
shared/demo/fixtures/enterprise/parent/08-orders.json
Normal file
@@ -0,0 +1,112 @@
|
||||
{
|
||||
"customers": [
|
||||
{
|
||||
"id": "60000000-0000-0000-0000-000000002001",
|
||||
"tenant_id": "80000000-0000-4000-a000-000000000001",
|
||||
"customer_code": "ENT-CUST-001",
|
||||
"name": "Grupo Hotelero Mediterráneo",
|
||||
"customer_type": "ENTERPRISE",
|
||||
"contact_person": "Luis Gómez",
|
||||
"email": "compras@grupohotelmed.com",
|
||||
"phone": "+34 912 345 678",
|
||||
"address": "Calle Gran Vía, 45",
|
||||
"city": "Madrid",
|
||||
"postal_code": "28013",
|
||||
"country": "España",
|
||||
"status": "ACTIVE",
|
||||
"total_orders": 125,
|
||||
"total_spent": 18500.75,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"notes": "Cadena hotelera con 15 ubicaciones en España",
|
||||
"contract_type": "national_supply_agreement",
|
||||
"annual_volume_commitment": 25000.0,
|
||||
"enterprise_customer": true,
|
||||
"delivery_locations": [
|
||||
"Madrid Centro",
|
||||
"Barcelona Gràcia",
|
||||
"Valencia Ruzafa",
|
||||
"Sevilla Santa Cruz",
|
||||
"Málaga Centro"
|
||||
]
|
||||
}
|
||||
],
|
||||
"customer_orders": [
|
||||
{
|
||||
"id": "60000000-0000-0000-0000-000000002001",
|
||||
"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",
|
||||
"status": "DELIVERED",
|
||||
"total_amount": 650.50,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"notes": "Pedido semanal para 5 hoteles",
|
||||
"enterprise_order": true,
|
||||
"contract_reference": "ENT-HOTEL-2024-001",
|
||||
"delivery_locations": [
|
||||
{
|
||||
"location": "Hotel Mediterráneo Madrid",
|
||||
"quantity": 50.0,
|
||||
"delivery_time": "2025-01-15T09:00:00Z"
|
||||
},
|
||||
{
|
||||
"location": "Hotel Mediterráneo Barcelona",
|
||||
"quantity": 30.0,
|
||||
"delivery_time": "2025-01-15T10:00:00Z"
|
||||
},
|
||||
{
|
||||
"location": "Hotel Mediterráneo Valencia",
|
||||
"quantity": 20.0,
|
||||
"delivery_time": "2025-01-15T11:00:00Z"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"order_items": [
|
||||
{
|
||||
"id": "60000000-0000-0000-0000-000000002101",
|
||||
"tenant_id": "80000000-0000-4000-a000-000000000001",
|
||||
"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",
|
||||
"enterprise_item": true
|
||||
},
|
||||
{
|
||||
"id": "60000000-0000-0000-0000-000000002102",
|
||||
"tenant_id": "80000000-0000-4000-a000-000000000001",
|
||||
"order_id": "60000000-0000-0000-0000-000000002001",
|
||||
"product_id": "20000000-0000-0000-0000-000000000002",
|
||||
"quantity": 25.0,
|
||||
"unit_price": 3.75,
|
||||
"total_price": 93.75,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"enterprise_item": true
|
||||
},
|
||||
{
|
||||
"id": "60000000-0000-0000-0000-000000002103",
|
||||
"tenant_id": "80000000-0000-4000-a000-000000000001",
|
||||
"order_id": "60000000-0000-0000-0000-000000002001",
|
||||
"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",
|
||||
"enterprise_item": true
|
||||
},
|
||||
{
|
||||
"id": "60000000-0000-0000-0000-000000002104",
|
||||
"tenant_id": "80000000-0000-4000-a000-000000000001",
|
||||
"order_id": "60000000-0000-0000-0000-000000002001",
|
||||
"product_id": "20000000-0000-0000-0000-000000000004",
|
||||
"quantity": 15.0,
|
||||
"unit_price": 1.75,
|
||||
"total_price": 26.25,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"enterprise_item": true
|
||||
}
|
||||
]
|
||||
}
|
||||
69
shared/demo/fixtures/enterprise/parent/09-sales.json
Normal file
69
shared/demo/fixtures/enterprise/parent/09-sales.json
Normal file
@@ -0,0 +1,69 @@
|
||||
{
|
||||
"sales_data": [
|
||||
{
|
||||
"id": "70000000-0000-0000-0000-000000002001",
|
||||
"tenant_id": "80000000-0000-4000-a000-000000000001",
|
||||
"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,
|
||||
"sales_channel": "ENTERPRISE",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"notes": "Venta a Grupo Hotelero Mediterráneo",
|
||||
"enterprise_sale": true,
|
||||
"customer_id": "60000000-0000-0000-0000-000000002001",
|
||||
"contract_reference": "ENT-HOTEL-2024-001",
|
||||
"delivery_locations": [
|
||||
"Madrid Centro",
|
||||
"Barcelona Gràcia",
|
||||
"Valencia Ruzafa"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "70000000-0000-0000-0000-000000002002",
|
||||
"tenant_id": "80000000-0000-4000-a000-000000000001",
|
||||
"sale_date": "2025-01-14T11:00:00Z",
|
||||
"product_id": "20000000-0000-0000-0000-000000000002",
|
||||
"quantity_sold": 50.0,
|
||||
"unit_price": 3.75,
|
||||
"total_revenue": 187.50,
|
||||
"sales_channel": "ENTERPRISE",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"notes": "Venta a Grupo Hotelero Mediterráneo",
|
||||
"enterprise_sale": true,
|
||||
"customer_id": "60000000-0000-0000-0000-000000002001",
|
||||
"contract_reference": "ENT-HOTEL-2024-001"
|
||||
},
|
||||
{
|
||||
"id": "70000000-0000-0000-0000-000000002003",
|
||||
"tenant_id": "80000000-0000-4000-a000-000000000001",
|
||||
"sale_date": "2025-01-14T12:00:00Z",
|
||||
"product_id": "20000000-0000-0000-0000-000000000003",
|
||||
"quantity_sold": 40.0,
|
||||
"unit_price": 2.25,
|
||||
"total_revenue": 90.00,
|
||||
"sales_channel": "ENTERPRISE",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"notes": "Venta a Grupo Hotelero Mediterráneo",
|
||||
"enterprise_sale": true,
|
||||
"customer_id": "60000000-0000-0000-0000-000000002001",
|
||||
"contract_reference": "ENT-HOTEL-2024-001"
|
||||
},
|
||||
{
|
||||
"id": "70000000-0000-0000-0000-000000002004",
|
||||
"tenant_id": "80000000-0000-4000-a000-000000000001",
|
||||
"sale_date": "2025-01-14T15:00:00Z",
|
||||
"product_id": "20000000-0000-0000-0000-000000000004",
|
||||
"quantity_sold": 30.0,
|
||||
"unit_price": 1.75,
|
||||
"total_revenue": 52.50,
|
||||
"sales_channel": "ENTERPRISE",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"notes": "Venta a Grupo Hotelero Mediterráneo",
|
||||
"enterprise_sale": true,
|
||||
"customer_id": "60000000-0000-0000-0000-000000002001",
|
||||
"contract_reference": "ENT-HOTEL-2024-001"
|
||||
}
|
||||
]
|
||||
}
|
||||
80
shared/demo/fixtures/enterprise/parent/10-forecasting.json
Normal file
80
shared/demo/fixtures/enterprise/parent/10-forecasting.json
Normal file
@@ -0,0 +1,80 @@
|
||||
{
|
||||
"forecasts": [
|
||||
{
|
||||
"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",
|
||||
"predicted_quantity": 300.0,
|
||||
"confidence_score": 0.95,
|
||||
"forecast_horizon_days": 1,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"notes": "Demanda diaria enterprise para 15 hoteles",
|
||||
"enterprise_forecast": true,
|
||||
"forecast_type": "contractual_commitment",
|
||||
"contract_reference": "ENT-HOTEL-2024-001",
|
||||
"customer_id": "60000000-0000-0000-0000-000000002001",
|
||||
"delivery_locations": [
|
||||
"Madrid Centro",
|
||||
"Barcelona Gràcia",
|
||||
"Valencia Ruzafa",
|
||||
"Sevilla Santa Cruz",
|
||||
"Málaga Centro"
|
||||
]
|
||||
},
|
||||
{
|
||||
"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",
|
||||
"predicted_quantity": 60.0,
|
||||
"confidence_score": 0.92,
|
||||
"forecast_horizon_days": 1,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"notes": "Demanda diaria enterprise para desayunos",
|
||||
"enterprise_forecast": true,
|
||||
"forecast_type": "contractual_commitment",
|
||||
"contract_reference": "ENT-HOTEL-2024-001",
|
||||
"customer_id": "60000000-0000-0000-0000-000000002001"
|
||||
},
|
||||
{
|
||||
"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",
|
||||
"predicted_quantity": 450.0,
|
||||
"confidence_score": 0.98,
|
||||
"forecast_horizon_days": 2,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"notes": "Demanda de fin de semana - evento especial",
|
||||
"enterprise_forecast": true,
|
||||
"forecast_type": "special_event",
|
||||
"contract_reference": "ENT-HOTEL-2024-001",
|
||||
"customer_id": "60000000-0000-0000-0000-000000002001",
|
||||
"reasoning_data": {
|
||||
"type": "special_event",
|
||||
"parameters": {
|
||||
"event_type": "conference",
|
||||
"event_name": "Mediterranean Business Conference 2025",
|
||||
"attendees": 500,
|
||||
"demand_increase_factor": 1.8
|
||||
}
|
||||
}
|
||||
}
|
||||
],
|
||||
"prediction_batches": [
|
||||
{
|
||||
"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",
|
||||
"status": "COMPLETED",
|
||||
"total_forecasts": 3,
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"notes": "Predicción diaria para contratos enterprise",
|
||||
"enterprise_batch": true,
|
||||
"forecast_horizon": "48_hours",
|
||||
"model_used": "enterprise_demand_v2"
|
||||
}
|
||||
]
|
||||
}
|
||||
Reference in New Issue
Block a user