Files
krowworkforce_controltower/base44/entities/Event.jsonc
2026-08-17 19:45:29 +05:30

322 lines
7.3 KiB
JSON

{
"name": "Event",
"type": "object",
"properties": {
"event_name": {
"type": "string",
"description": "Name of the event"
},
"is_rapid": {
"type": "boolean",
"default": false,
"description": "Is this a RAPID/urgent order"
},
"is_recurring": {
"type": "boolean",
"default": false,
"description": "Is this a recurring event"
},
"is_multi_day": {
"type": "boolean",
"default": false,
"description": "Is this a multi-day event"
},
"recurrence_type": {
"type": "string",
"enum": [
"single",
"date_range",
"scatter"
],
"description": "Type of recurrence: single, date_range, or scatter"
},
"recurrence_start_date": {
"type": "string",
"format": "date",
"description": "Start date for recurring events"
},
"recurrence_end_date": {
"type": "string",
"format": "date",
"description": "End date for recurring events"
},
"scatter_dates": {
"type": "array",
"description": "Array of specific dates for scatter recurring",
"items": {
"type": "string",
"format": "date"
}
},
"multi_day_start_date": {
"type": "string",
"format": "date",
"description": "Start date for multi-day events"
},
"multi_day_end_date": {
"type": "string",
"format": "date",
"description": "End date for multi-day events"
},
"buffer_time_before": {
"type": "number",
"default": 0,
"description": "Buffer time in minutes before event"
},
"buffer_time_after": {
"type": "number",
"default": 0,
"description": "Buffer time in minutes after event"
},
"conflict_detection_enabled": {
"type": "boolean",
"default": true,
"description": "Whether to check for conflicts"
},
"detected_conflicts": {
"type": "array",
"description": "Array of detected conflicts",
"items": {
"type": "object",
"properties": {
"conflict_type": {
"type": "string",
"enum": [
"staff_overlap",
"venue_overlap",
"time_buffer"
]
},
"severity": {
"type": "string",
"enum": [
"low",
"medium",
"high",
"critical"
]
},
"description": {
"type": "string"
},
"conflicting_event_id": {
"type": "string"
},
"staff_id": {
"type": "string"
},
"detected_at": {
"type": "string",
"format": "date-time"
}
}
}
},
"business_id": {
"type": "string",
"description": "Associated business ID"
},
"business_name": {
"type": "string",
"description": "Business name"
},
"vendor_id": {
"type": "string",
"description": "Vendor ID if created by vendor"
},
"vendor_name": {
"type": "string",
"description": "Vendor name if created by vendor"
},
"hub": {
"type": "string",
"description": "Hub location for the event"
},
"event_location": {
"type": "string",
"description": "Event location address"
},
"contract_type": {
"type": "string",
"enum": [
"W2",
"1099",
"Temp",
"Contract"
],
"description": "Type of contract"
},
"po_reference": {
"type": "string",
"description": "Purchase order reference number"
},
"status": {
"type": "string",
"enum": [
"Draft",
"Active",
"Pending",
"Assigned",
"Confirmed",
"Completed",
"Canceled"
],
"default": "Draft"
},
"date": {
"type": "string",
"format": "date",
"description": "Event date (for single events)"
},
"requested": {
"type": "number",
"description": "Total number of staff requested for this event",
"default": 0
},
"assigned_staff": {
"type": "array",
"description": "Array of assigned staff members",
"items": {
"type": "object",
"properties": {
"staff_id": {
"type": "string"
},
"staff_name": {
"type": "string"
},
"email": {
"type": "string"
},
"role": {
"type": "string"
}
}
}
},
"shifts": {
"type": "array",
"description": "Array of shifts for this event",
"items": {
"type": "object",
"properties": {
"shift_name": {
"type": "string"
},
"shift_contact": {
"type": "string"
},
"location": {
"type": "string"
},
"location_address": {
"type": "string"
},
"roles": {
"type": "array",
"items": {
"type": "object",
"properties": {
"role": {
"type": "string"
},
"department": {
"type": "string"
},
"count": {
"type": "number"
},
"start_time": {
"type": "string"
},
"end_time": {
"type": "string"
},
"hours": {
"type": "number"
},
"uniform": {
"type": "string"
},
"break_minutes": {
"type": "number"
},
"cost_per_hour": {
"type": "number"
},
"total_value": {
"type": "number"
},
"vendor_name": {
"type": "string"
},
"vendor_id": {
"type": "string"
}
}
}
}
}
}
},
"addons": {
"type": "object",
"properties": {
"goal": {
"type": "object",
"properties": {
"enabled": {
"type": "boolean"
},
"text": {
"type": "string"
}
}
},
"portal_access": {
"type": "boolean"
},
"meal_provided": {
"type": "boolean"
},
"travel_time": {
"type": "boolean"
},
"tips": {
"type": "object",
"properties": {
"enabled": {
"type": "boolean"
},
"amount": {
"type": "string"
}
}
}
}
},
"total": {
"type": "number",
"description": "Total cost"
},
"client_name": {
"type": "string"
},
"client_email": {
"type": "string"
},
"client_phone": {
"type": "string"
},
"invoice_id": {
"type": "string",
"description": "Associated invoice ID"
},
"notes": {
"type": "string"
}
},
"required": [
"event_name"
]
}