Employee Roles (/admin/employee-roles) es la librería de HR de nombres de rol. El título de la página coincide con el menú y con el encabezado legado; el breadcrumb es Manage Employee Roles. Cada fila es una Description y un Status. No es la librería de empleados ni la ficha de RRHH.
Permisos: FunctionId EMPLOYEE_ROLE (37), menú HR → Libraries → Employee Roles (function.url = employee_role). View abre la página; Add controla New; Edit y Delete controlan las acciones de fila y el borrado masivo.
Diseño de la pantalla
Figura: listado FoodHub — New, Search employee roles…, Export, Description y Status ordenables, ⋮ de fila y paginación.
| Región | Qué se ve |
|---|---|
| Barra de página | Título Employee Roles, subtítulo Manage Employee Roles, New (Add) y el icono ? (este artículo). |
| Tarjeta de datos | Búsqueda, Export, encabezados, checkboxes (permiso Delete), barra bulk, Sort by en móvil y paginación. No hay popover Filter. |
| Modal | Superficie B sobre el listado (?create=1). Cancel y Save van en el header. |
Orden por defecto: Description ascendente.
Comportamiento del listado
- La búsqueda coincide con Description cuando el término está vacío o tiene al menos 3 caracteres.
- Export cubre la página actual.
- Status es Active o Inactive.
Modal
- New Employee Role: — Name es obligatorio y se guarda como description. Status arranca en Active.
- Update Employee Role:
`{description}`— los mismos campos. - Un nombre vacío muestra This field is required.
- Un nombre repetido en el alta muestra The employee role description is in use, please try entering another one.
- Un nombre repetido en la edición muestra The employee role name is in use, please try entering another one.
- Toast de guardado: The operation was successful. La API escribe un ApplicationLog en la categoría Employee Role.
Delete
Un rol vinculado a un empleado no se puede borrar. El mensaje de una fila es The employee role could not be deleted, because it is related to a employee. El bulk que no borra nada usa The employee rolees could not be deleted, because they are associated with a employee. Un bulk parcial deja las filas en uso y reporta la frase legado. Las filas de prevailing rate que apuntan al rol las elimina la base cuando el rol sí se borra.