worker

-1 rows


Columns

Column Type Size Nulls Auto Default Children Parents Comments
worker_id uuid 2147483647 null
task.worker_id fk_task_worker_company R
worker_document.worker_id fk_worker_document_worker R
company_id uuid 2147483647 null
task.company_id fk_task_worker_company R
worker_document.company_id fk_worker_document_worker R
company.company_id fk_worker_company R
display_name varchar 120 null
nationality_code varchar 10 null
preferred_language varchar 20 null
work_status varchar 20 null
stay_expiry_date date 13 null
contract_start_date date 13 null
contract_end_date date 13 null
created_at timestamptz 35,6 CURRENT_TIMESTAMP
updated_at timestamptz 35,6 CURRENT_TIMESTAMP
version int8 19 0

Indexes

Constraint Name Type Sort Column(s)
pk_worker Primary key Asc worker_id
idx_worker_company Performance Asc company_id
uq_worker_id_company Must be unique Asc/Asc worker_id + company_id

Check Constraints

Constraint Name Constraint
ck_worker_version (version >= 0)
ck_worker_display_name_not_blank (char_length(TRIM(BOTH FROM display_name)) > 0)
ck_worker_work_status ((work_status)::text = ANY ((ARRAY['ACTIVE'::character varying, 'ON_LEAVE'::character varying, 'RESIGNED'::character varying, 'TERMINATED'::character varying])::text[]))
ck_worker_contract_period ((contract_start_date IS NULL) OR (contract_end_date IS NULL) OR (contract_end_date >= contract_start_date))
ck_worker_updated_at (updated_at >= created_at)

Relationships