Feature #10395
openEmployees & Payroll module, Role-based access control
100%
Description
Employees & Payroll module
Added loaders to Add Employee and all other action buttons — they were slow to open dialogs, causing double-clicks
Fixed New Payroll Profile validation:
Designation — blocked special characters, URLs, and unlimited length
Basic Salary, Bonus, Allowances, Paid Days, Shift Hours — blocked negative values and fixed the leading 0 that wouldn't clear while typing
Weekly Offs — selected days now display properly with tick marks
Staff Member — made mandatory
Account Number — restricted to digits only, minimum length enforced, blocked letters and special characters
Added matching validation on the backend, since the API had no validation at all
Role-based access control
Fixed accountant not getting access to Employees & Payroll
Fixed accountant sidebar links failing with permission errors — Reports, Expenses, Attendance, Assets, and Disputes were all blocked
Fixed login redirect for roles without Dashboard access — they were landing on an unauthorized page instead of their first accessible page
Fixed pages being accessible by typing the URL directly, even for roles that don't have them in the sidebar
Audited all 51 admin/staff routes so every role can only open what appears in their sidebar
Restricted Dashboard to admin, manager, and cashier only
Mythri customer-facing site
Investigated the transparent logo issue in header and footer — confirmed the upload pipeline preserves PNG transparency correctly
Subtasks
Related issues