demo seed change
This commit is contained in:
82
shared/demo/metadata/cross_refs_map.json
Normal file
82
shared/demo/metadata/cross_refs_map.json
Normal file
@@ -0,0 +1,82 @@
|
||||
{
|
||||
"description": "Map of cross-service references for validation",
|
||||
"references": [
|
||||
{
|
||||
"from_service": "production",
|
||||
"from_entity": "ProductionBatch",
|
||||
"from_field": "product_id",
|
||||
"to_service": "inventory",
|
||||
"to_entity": "Ingredient",
|
||||
"to_filter": {"product_type": "FINISHED_PRODUCT"},
|
||||
"required": true
|
||||
},
|
||||
{
|
||||
"from_service": "production",
|
||||
"from_entity": "ProductionBatch",
|
||||
"from_field": "recipe_id",
|
||||
"to_service": "recipes",
|
||||
"to_entity": "Recipe",
|
||||
"required": false
|
||||
},
|
||||
{
|
||||
"from_service": "recipes",
|
||||
"from_entity": "RecipeIngredient",
|
||||
"from_field": "ingredient_id",
|
||||
"to_service": "inventory",
|
||||
"to_entity": "Ingredient",
|
||||
"to_filter": {"product_type": "INGREDIENT"},
|
||||
"required": true
|
||||
},
|
||||
{
|
||||
"from_service": "inventory",
|
||||
"from_entity": "Stock",
|
||||
"from_field": "supplier_id",
|
||||
"to_service": "suppliers",
|
||||
"to_entity": "Supplier",
|
||||
"required": false
|
||||
},
|
||||
{
|
||||
"from_service": "procurement",
|
||||
"from_entity": "PurchaseOrder",
|
||||
"from_field": "supplier_id",
|
||||
"to_service": "suppliers",
|
||||
"to_entity": "Supplier",
|
||||
"required": true
|
||||
},
|
||||
{
|
||||
"from_service": "procurement",
|
||||
"from_entity": "PurchaseOrderItem",
|
||||
"from_field": "inventory_product_id",
|
||||
"to_service": "inventory",
|
||||
"to_entity": "Ingredient",
|
||||
"required": true
|
||||
},
|
||||
{
|
||||
"from_service": "orders",
|
||||
"from_entity": "OrderItem",
|
||||
"from_field": "product_id",
|
||||
"to_service": "inventory",
|
||||
"to_entity": "Ingredient",
|
||||
"to_filter": {"product_type": "FINISHED_PRODUCT"},
|
||||
"required": true
|
||||
},
|
||||
{
|
||||
"from_service": "sales",
|
||||
"from_entity": "SalesData",
|
||||
"from_field": "product_id",
|
||||
"to_service": "inventory",
|
||||
"to_entity": "Ingredient",
|
||||
"to_filter": {"product_type": "FINISHED_PRODUCT"},
|
||||
"required": true
|
||||
},
|
||||
{
|
||||
"from_service": "forecasting",
|
||||
"from_entity": "Forecast",
|
||||
"from_field": "product_id",
|
||||
"to_service": "inventory",
|
||||
"to_entity": "Ingredient",
|
||||
"to_filter": {"product_type": "FINISHED_PRODUCT"},
|
||||
"required": true
|
||||
}
|
||||
]
|
||||
}
|
||||
108
shared/demo/metadata/demo_users.json
Normal file
108
shared/demo/metadata/demo_users.json
Normal file
@@ -0,0 +1,108 @@
|
||||
{
|
||||
"owners": {
|
||||
"professional": {
|
||||
"id": "c1a2b3c4-d5e6-47a8-b9c0-d1e2f3a4b5c6",
|
||||
"name": "María García López",
|
||||
"email": "maria.garcia@panaderiaartesana.com",
|
||||
"role": "owner",
|
||||
"created_at": "2025-01-15T06:00:00Z"
|
||||
},
|
||||
"enterprise": {
|
||||
"id": "d2e3f4a5-b6c7-48d9-e0f1-a2b3c4d5e6f7",
|
||||
"name": "Carlos Martínez Ruiz",
|
||||
"email": "carlos.martinez@panaderiacentral.com",
|
||||
"role": "owner",
|
||||
"created_at": "2025-01-15T06:00:00Z"
|
||||
}
|
||||
},
|
||||
"staff": {
|
||||
"professional": [
|
||||
{
|
||||
"id": "50000000-0000-0000-0000-000000000001",
|
||||
"name": "Juan Panadero",
|
||||
"role": "baker",
|
||||
"email": "juan.panadero@panaderiaartesana.com",
|
||||
"created_at": "2025-01-15T06:00:00Z"
|
||||
},
|
||||
{
|
||||
"id": "50000000-0000-0000-0000-000000000002",
|
||||
"name": "Ana Ventas",
|
||||
"role": "sales",
|
||||
"email": "ana.ventas@panaderiaartesana.com",
|
||||
"created_at": "2025-01-15T06:00:00Z"
|
||||
},
|
||||
{
|
||||
"id": "50000000-0000-0000-0000-000000000003",
|
||||
"name": "Pedro Calidad",
|
||||
"role": "quality_control",
|
||||
"email": "pedro.calidad@panaderiaartesana.com",
|
||||
"created_at": "2025-01-15T06:00:00Z"
|
||||
},
|
||||
{
|
||||
"id": "50000000-0000-0000-0000-000000000004",
|
||||
"name": "Laura Admin",
|
||||
"role": "admin",
|
||||
"email": "laura.admin@panaderiaartesana.com",
|
||||
"created_at": "2025-01-15T06:00:00Z"
|
||||
},
|
||||
{
|
||||
"id": "50000000-0000-0000-0000-000000000005",
|
||||
"name": "Carlos Almacén",
|
||||
"role": "warehouse",
|
||||
"email": "carlos.almacen@panaderiaartesana.com",
|
||||
"created_at": "2025-01-15T06:00:00Z"
|
||||
},
|
||||
{
|
||||
"id": "50000000-0000-0000-0000-000000000006",
|
||||
"name": "Isabel Producción",
|
||||
"role": "production_manager",
|
||||
"email": "isabel.produccion@panaderiaartesana.com",
|
||||
"created_at": "2025-01-15T06:00:00Z"
|
||||
}
|
||||
],
|
||||
"enterprise": [
|
||||
{
|
||||
"id": "50000000-0000-0000-0000-000000000011",
|
||||
"name": "Roberto Producción",
|
||||
"role": "production_manager",
|
||||
"email": "roberto.produccion@panaderiacentral.com",
|
||||
"created_at": "2025-01-15T06:00:00Z"
|
||||
},
|
||||
{
|
||||
"id": "50000000-0000-0000-0000-000000000012",
|
||||
"name": "Marta Calidad",
|
||||
"role": "quality_control",
|
||||
"email": "marta.calidad@panaderiacentral.com",
|
||||
"created_at": "2025-01-15T06:00:00Z"
|
||||
},
|
||||
{
|
||||
"id": "50000000-0000-0000-0000-000000000013",
|
||||
"name": "Javier Logística",
|
||||
"role": "logistics",
|
||||
"email": "javier.logistica@panaderiacentral.com",
|
||||
"created_at": "2025-01-15T06:00:00Z"
|
||||
},
|
||||
{
|
||||
"id": "50000000-0000-0000-0000-000000000014",
|
||||
"name": "Carmen Ventas",
|
||||
"role": "sales",
|
||||
"email": "carmen.ventas@panaderiacentral.com",
|
||||
"created_at": "2025-01-15T06:00:00Z"
|
||||
},
|
||||
{
|
||||
"id": "50000000-0000-0000-0000-000000000015",
|
||||
"name": "Luis Compras",
|
||||
"role": "procurement",
|
||||
"email": "luis.compras@panaderiacentral.com",
|
||||
"created_at": "2025-01-15T06:00:00Z"
|
||||
},
|
||||
{
|
||||
"id": "50000000-0000-0000-0000-000000000016",
|
||||
"name": "Miguel Mantenimiento",
|
||||
"role": "maintenance",
|
||||
"email": "miguel.mantenimiento@panaderiacentral.com",
|
||||
"created_at": "2025-01-15T06:00:00Z"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
57
shared/demo/metadata/tenant_configs.json
Normal file
57
shared/demo/metadata/tenant_configs.json
Normal file
@@ -0,0 +1,57 @@
|
||||
{
|
||||
"professional": {
|
||||
"base_tenant_id": "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6",
|
||||
"email": "demo.professional@panaderiaartesana.com",
|
||||
"name": "Panadería Artesana Madrid - Demo",
|
||||
"subdomain": "demo-artesana",
|
||||
"subscription_tier": "professional",
|
||||
"tenant_type": "standalone",
|
||||
"description": "Professional tier demo tenant for bakery operations",
|
||||
"created_at": "2025-01-15T06:00:00Z"
|
||||
},
|
||||
"enterprise": {
|
||||
"base_tenant_id": "80000000-0000-4000-a000-000000000001",
|
||||
"email": "demo.enterprise@panaderiacentral.com",
|
||||
"name": "Panadería Central - Demo Enterprise",
|
||||
"subdomain": "demo-central",
|
||||
"subscription_tier": "enterprise",
|
||||
"tenant_type": "parent",
|
||||
"description": "Enterprise tier demo tenant with multiple locations",
|
||||
"created_at": "2025-01-15T06:00:00Z",
|
||||
"children": [
|
||||
{
|
||||
"name": "Madrid Centro",
|
||||
"base_tenant_id": "A0000000-0000-4000-a000-000000000001",
|
||||
"location": {
|
||||
"city": "Madrid",
|
||||
"zone": "Centro",
|
||||
"latitude": 40.4168,
|
||||
"longitude": -3.7038
|
||||
},
|
||||
"description": "Central Madrid location"
|
||||
},
|
||||
{
|
||||
"name": "Barcelona Gràcia",
|
||||
"base_tenant_id": "B0000000-0000-4000-a000-000000000001",
|
||||
"location": {
|
||||
"city": "Barcelona",
|
||||
"zone": "Gràcia",
|
||||
"latitude": 41.4036,
|
||||
"longitude": 2.1561
|
||||
},
|
||||
"description": "Barcelona Gràcia district location"
|
||||
},
|
||||
{
|
||||
"name": "Valencia Ruzafa",
|
||||
"base_tenant_id": "C0000000-0000-4000-a000-000000000001",
|
||||
"location": {
|
||||
"city": "Valencia",
|
||||
"zone": "Ruzafa",
|
||||
"latitude": 39.4623,
|
||||
"longitude": -0.3645
|
||||
},
|
||||
"description": "Valencia Ruzafa neighborhood location"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user