wages/frontend/src/types.ts
jtricerolph 3e1851fa6d Add department budget % allocation
- Budgets page: new dept split section with % inputs, equal-split button, save
- Weekly/Monthly: per-dept budget column using dept pcts from actuals response
- Backend: dept_budget_pcts in ALLOWED_KEYS; actuals returns dept_pcts map;
  budgets route adds GET /dept-config + PUT /dept-pcts endpoints

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-07-23 09:43:39 +00:00

55 lines
1 KiB
TypeScript

export interface User {
email: string
name: string
is_admin: boolean
caps: string[]
}
export function can(user: User, cap: string): boolean {
return user.is_admin || user.caps.includes(cap)
}
export interface DeptActuals {
department_id: string
department_name: string
days: Record<string, { base_cost: number; total_cost: number; cost: number; shift_count: number }>
}
export interface DeptScheduled {
department_id: string
department_name: string
days: Record<string, { cost: number; shift_count: number }>
}
export interface NetSalesDay {
date: string
net_sales: number
py_sales: number
accom: number
dry: number
wet: number
is_past: boolean
}
export interface WageBudget {
month: string // 'YYYY-MM-DD' (first of month)
budget_amount: number
}
export interface Department {
id: string
name: string
enabled?: boolean
}
export interface AppSetting {
key: string
value: string
updated_at: string
}
export interface DeptPct {
id: string
name: string
pct: number
}