Data model
"PAYROLL_CALENDAR" {
shape: sql_table
"id": UUID {constraint: primary_key}
"admin_rules_config": JSONB
"company_id": VARCHAR(36)
"country": VARCHAR(2)
"current_start_date": DATE
"entries": JSONB
"marmot_rules_config": JSONB
"recurring_rule": JSONB
"upcoming_cutoff_date": DATE
}
"SNAPSHOT_ENTRY" {
shape: sql_table
"id": UUID {constraint: primary_key}
"beneficiary_user_id": VARCHAR(36)
"company_id": VARCHAR(36)
"country": VARCHAR(2)
"end_date": DATE
"enrollment_type": VARCHAR(255)
"entry_data": JSONB
"entry_type": VARCHAR(255)
"link_id": VARCHAR(36)
"primary_user_id": VARCHAR(36)
"product_type": VARCHAR(255)
"snapshot_date": DATE
"start_date": DATE
}
"PAYROLL_EVENT" {
shape: sql_table
"id": UUID {constraint: primary_key}
"after_snapshot_entry_id": UUID
"after_values": JSONB
"before_snapshot_entry_id": UUID
"before_values": JSONB
"beneficiary_user_id": VARCHAR(36)
"company_id": VARCHAR(36)
"country": VARCHAR(2)
"effective_date": DATE
"event_date": DATE
"event_type": VARCHAR(255)
"period_type": VARCHAR(255)
"primary_user_id": VARCHAR(36)
"product_type": VARCHAR(255)
}
"PAYROLL_CHANGE" {
shape: sql_table
"id": UUID {constraint: primary_key}
"acknowledged_at": DATETIME
"acknowledged_by_user_id": VARCHAR(36)
"beneficiary_user_id": VARCHAR(36)
"categories": ARRAY
"change_source": VARCHAR(255)
"company_id": VARCHAR(36)
"cost_breakdown": JSONB
"country": VARCHAR(2)
"effective_end_date": DATE
"effective_start_date": DATE
"enrollment_type": VARCHAR(255)
"link_id": VARCHAR(36)
"month": DATE
"monthly_rate_total_after": INTEGER
"monthly_rate_total_before": INTEGER
"num_days": INTEGER
"primary_user_id": VARCHAR(36)
"product_type": VARCHAR(255)
"regularization_month": DATE
"source_event_id": UUID
}
"PAYROLL_TEMPLATE" {
shape: sql_table
"id": UUID {constraint: primary_key}
"account_id": VARCHAR(36)
"admin_user_id": VARCHAR(36)
"country": VARCHAR(2)
"display_name": VARCHAR(255)
"filtering": JSONB
"granularity": VARCHAR(50)
"key": VARCHAR(255)
"sector": VARCHAR(50)
"sorting": JSONB
}
"PAYROLL_COLUMN_DEFINITION" {
shape: sql_table
"id": UUID {constraint: primary_key}
"aggregation": VARCHAR(50)
"data_field": VARCHAR(255)
"display_name": VARCHAR(255)
"enforced": BOOLEAN
"formatting": JSONB
"key": VARCHAR(255)
"position": INTEGER
"template_id": UUID
"visible": BOOLEAN
}
"SNAPSHOT_ENTRY"."id" -> "PAYROLL_EVENT"."before_snapshot_entry_id": {
source-arrowhead.shape: cf-one
target-arrowhead.shape: cf-many
}
"SNAPSHOT_ENTRY"."id" -> "PAYROLL_EVENT"."after_snapshot_entry_id": {
source-arrowhead.shape: cf-one
target-arrowhead.shape: cf-many
}
"PAYROLL_EVENT"."id" -> "PAYROLL_CHANGE"."source_event_id": {
source-arrowhead.shape: cf-one
target-arrowhead.shape: cf-many
}
"PAYROLL_TEMPLATE"."id" -> "PAYROLL_COLUMN_DEFINITION"."template_id": {
source-arrowhead.shape: cf-one-required
target-arrowhead.shape: cf-many
}
Hold "Alt" / "Option" to enable pan & zoom