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

101 lines
2.3 KiB
JSON

{
"name": "ShiftProposal",
"type": "object",
"properties": {
"event_id": {
"type": "string",
"description": "Event/shift being proposed"
},
"event_name": {
"type": "string",
"description": "Event name"
},
"staff_id": {
"type": "string",
"description": "Worker being proposed to"
},
"staff_name": {
"type": "string",
"description": "Worker name"
},
"vendor_id": {
"type": "string",
"description": "Vendor making the proposal"
},
"proposal_status": {
"type": "string",
"enum": [
"PENDING_WORKER_CONFIRMATION",
"ACCEPTED",
"DECLINED",
"EXPIRED",
"CANCELLED"
],
"default": "PENDING_WORKER_CONFIRMATION",
"description": "Status of the proposal"
},
"shift_date": {
"type": "string",
"format": "date",
"description": "Date of shift"
},
"start_time": {
"type": "string",
"description": "Shift start time"
},
"end_time": {
"type": "string",
"description": "Shift end time"
},
"location": {
"type": "string",
"description": "Shift location"
},
"role": {
"type": "string",
"description": "Role/position"
},
"pay_rate": {
"type": "number",
"description": "Pay rate for shift"
},
"total_pay": {
"type": "number",
"description": "Total estimated pay"
},
"response_deadline": {
"type": "string",
"format": "date-time",
"description": "Deadline for worker response"
},
"proposed_at": {
"type": "string",
"format": "date-time",
"description": "When proposal was sent"
},
"responded_at": {
"type": "string",
"format": "date-time",
"description": "When worker responded"
},
"decline_reason": {
"type": "string",
"description": "Reason for declining"
},
"was_marked_unavailable": {
"type": "boolean",
"default": false,
"description": "Was worker marked unavailable when proposed"
},
"notification_sent": {
"type": "boolean",
"default": false,
"description": "Whether notification was sent"
}
},
"required": [
"event_id",
"staff_id",
"shift_date"
]
}