Columns
| Column | Type | Size | Nulls | Auto | Default | Children | Parents | Comments | |||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| worker_id | uuid | 2147483647 | null |
|
|
||||||||||||||||||||||||||||||
| company_id | uuid | 2147483647 | null |
|
|
||||||||||||||||||||||||||||||
| 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 |
|
|
||||||||||||||||||||||||||||||
| visa_type | varchar | 20 | √ | null |
|
|
|||||||||||||||||||||||||||||
| employment_permit_end_date | date | 13 | √ | null |
|
|
|||||||||||||||||||||||||||||
| employment_activity_end_date | date | 13 | √ | null |
|
|
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_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_display_name_not_blank | ((char_length(TRIM(BOTH FROM display_name)) > 0)) |
| ck_worker_version | ((version >= 0)) |
| ck_worker_updated_at | ((updated_at >= created_at)) |



