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

244 lines
5.2 KiB
JSON

{
"name": "Workforce",
"type": "object",
"properties": {
"workforce_number": {
"type": "string",
"description": "Worker Number format WF-#### (auto-generated)",
"pattern": "^WF-[0-9]{4,6}$"
},
"vendor_id": {
"type": "string",
"description": "Vendor who manages this worker"
},
"vendor_name": {
"type": "string",
"description": "Vendor name"
},
"first_name": {
"type": "string",
"description": "Worker first name"
},
"last_name": {
"type": "string",
"description": "Worker last name"
},
"email": {
"type": "string",
"format": "email",
"description": "Worker email"
},
"phone": {
"type": "string",
"description": "Worker phone"
},
"address": {
"type": "string",
"description": "Worker address"
},
"city": {
"type": "string",
"description": "City"
},
"state": {
"type": "string",
"description": "State"
},
"zip_code": {
"type": "string",
"description": "ZIP code"
},
"date_of_birth": {
"type": "string",
"format": "date",
"description": "Date of birth"
},
"ssn_last_four": {
"type": "string",
"description": "Last 4 digits of SSN",
"pattern": "^[0-9]{4}$"
},
"employment_type": {
"type": "string",
"enum": [
"W2",
"1099",
"Temporary",
"Contract"
],
"description": "Employment classification"
},
"skills": {
"type": "array",
"description": "Worker skills",
"items": {
"type": "string"
}
},
"roles_qualified": {
"type": "array",
"description": "Roles worker is qualified for",
"items": {
"type": "string"
}
},
"certifications": {
"type": "array",
"description": "Certifications",
"items": {
"type": "object",
"properties": {
"cert_name": {
"type": "string"
},
"cert_number": {
"type": "string"
},
"issued_date": {
"type": "string",
"format": "date"
},
"expiry_date": {
"type": "string",
"format": "date"
},
"issuer": {
"type": "string"
},
"document_url": {
"type": "string"
}
}
}
},
"background_check_status": {
"type": "string",
"enum": [
"Pending",
"Cleared",
"Failed",
"Expired"
],
"description": "Background check status"
},
"background_check_date": {
"type": "string",
"format": "date",
"description": "Background check completion date"
},
"drug_test_status": {
"type": "string",
"enum": [
"Pending",
"Passed",
"Failed",
"Expired"
],
"description": "Drug test status"
},
"drug_test_date": {
"type": "string",
"format": "date",
"description": "Drug test date"
},
"reliability_index": {
"type": "number",
"minimum": 0,
"maximum": 100,
"description": "Reliability score (0-100)"
},
"total_assignments": {
"type": "number",
"default": 0,
"description": "Total assignments completed"
},
"cancelled_assignments": {
"type": "number",
"default": 0,
"description": "Cancelled assignments"
},
"no_shows": {
"type": "number",
"default": 0,
"description": "No-show count"
},
"average_rating": {
"type": "number",
"minimum": 0,
"maximum": 5,
"description": "Average performance rating"
},
"languages": {
"type": "array",
"description": "Languages spoken",
"items": {
"type": "string"
}
},
"availability": {
"type": "object",
"description": "Worker availability",
"properties": {
"monday": {
"type": "boolean"
},
"tuesday": {
"type": "boolean"
},
"wednesday": {
"type": "boolean"
},
"thursday": {
"type": "boolean"
},
"friday": {
"type": "boolean"
},
"saturday": {
"type": "boolean"
},
"sunday": {
"type": "boolean"
},
"shift_preferences": {
"type": "array",
"items": {
"type": "string",
"enum": [
"Morning",
"Day",
"Evening",
"Night",
"Overnight"
]
}
}
}
},
"is_active": {
"type": "boolean",
"default": true,
"description": "Is worker active"
},
"hire_date": {
"type": "string",
"format": "date",
"description": "Date worker was hired"
},
"termination_date": {
"type": "string",
"format": "date",
"description": "Termination date if applicable"
},
"notes": {
"type": "string",
"description": "Internal notes"
}
},
"required": [
"vendor_id",
"first_name",
"last_name",
"workforce_number"
]
}