Employee Roles (/admin/employee-roles) is the HR library of role names. The page title matches the sidebar and the legacy heading; the breadcrumb is Manage Employee Roles. Each row is a Description and a Status. This is not the employee library and not the HR record screen.
Permissions: FunctionId EMPLOYEE_ROLE (37), menu HR → Libraries → Employee Roles (function.url = employee_role). View opens the page; Add controls New; Edit and Delete control row actions and bulk delete.
Screen layout
Figure: FoodHub list — New, Search employee roles…, Export, sortable Description and Status, row ⋮, and pagination.
| Region | What you see |
|---|---|
| Page toolbar | Title Employee Roles, subtitle Manage Employee Roles, New (Add), and the ? icon (this article). |
| Data card | Search, Export, column headers, row checkboxes (Delete permission), bulk bar, mobile Sort by, pagination. There is no Filter popover. |
| Modal | Surface B on the list URL (?create=1). Cancel and Save sit in the header. |
Default sort: Description ascending.
List behavior
- Search matches Description when the term is empty or at least 3 characters.
- Export covers the current page.
- Status is Active or Inactive.
Modal
- New Employee Role: — Name is required and is stored as the description. Status starts Active.
- Update Employee Role:
`{description}`— same fields. - An empty name shows This field is required.
- A repeated name on create shows The employee role description is in use, please try entering another one.
- A repeated name on edit shows The employee role name is in use, please try entering another one.
- Save toast: The operation was successful. The API writes an ApplicationLog in category Employee Role.
Delete
A role linked to an employee cannot be deleted. The single-row message is The employee role could not be deleted, because it is related to a employee. Bulk delete that removes nothing uses The employee rolees could not be deleted, because they are associated with a employee. A partial bulk delete keeps the rows still in use and reports the legacy partial-success sentence. Prevailing-rate rows that point at the role are removed by the database when the role itself is deleted.