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

185 lines
4.1 KiB
JSON

{
"name": "User",
"type": "object",
"properties": {
"full_name": {
"type": "string",
"description": "Full name of the user"
},
"user_role": {
"type": "string",
"enum": [
"admin",
"procurement",
"operator",
"sector",
"client",
"vendor",
"workforce"
],
"description": "User's role in the system"
},
"company_name": {
"type": "string",
"description": "Company or organization name"
},
"profile_picture": {
"type": "string",
"description": "URL to profile picture"
},
"phone": {
"type": "string",
"description": "Phone number"
},
"address": {
"type": "string",
"description": "Address"
},
"preferred_vendor_id": {
"type": "string",
"description": "ID of the client's preferred/default vendor"
},
"preferred_vendor_name": {
"type": "string",
"description": "Name of the client's preferred vendor"
},
"backup_vendor_ids": {
"type": "array",
"description": "List of backup vendor IDs",
"items": {
"type": "string"
}
},
"dashboard_layout": {
"type": "object",
"description": "User's customized dashboard layout preferences (legacy, kept for backward compatibility)",
"properties": {
"widgets": {
"type": "array",
"description": "Ordered list of visible widgets",
"items": {
"type": "string"
}
},
"hidden_widgets": {
"type": "array",
"description": "List of hidden widgets",
"items": {
"type": "string"
}
},
"layout_version": {
"type": "string",
"description": "Layout version for migration"
}
}
},
"dashboard_layout_client": {
"type": "object",
"description": "Client dashboard layout",
"properties": {
"widgets": {
"type": "array",
"items": {
"type": "string"
}
},
"hidden_widgets": {
"type": "array",
"items": {
"type": "string"
}
},
"layout_version": {
"type": "string"
}
}
},
"dashboard_layout_vendor": {
"type": "object",
"description": "Vendor dashboard layout",
"properties": {
"widgets": {
"type": "array",
"items": {
"type": "string"
}
},
"hidden_widgets": {
"type": "array",
"items": {
"type": "string"
}
},
"layout_version": {
"type": "string"
}
}
},
"dashboard_layout_operator": {
"type": "object",
"description": "Operator dashboard layout",
"properties": {
"widgets": {
"type": "array",
"items": {
"type": "string"
}
},
"hidden_widgets": {
"type": "array",
"items": {
"type": "string"
}
},
"layout_version": {
"type": "string"
}
}
},
"dashboard_layout_workforce": {
"type": "object",
"description": "Workforce dashboard layout",
"properties": {
"widgets": {
"type": "array",
"items": {
"type": "string"
}
},
"hidden_widgets": {
"type": "array",
"items": {
"type": "string"
}
},
"layout_version": {
"type": "string"
}
}
},
"preferences": {
"type": "object",
"description": "User preferences and settings",
"properties": {
"theme": {
"type": "string",
"enum": [
"light",
"dark"
],
"default": "light"
},
"notifications_enabled": {
"type": "boolean",
"default": true
},
"email_notifications": {
"type": "boolean",
"default": true
}
}
}
},
"required": []
}