---
tags: [companyuser, service]
module: CompanyUser
---

# RoleServices

## Connections
[[_CompanyUser]] · [[[Model]RoleAndPermission]] · [[[Repo]Repositories]] · [[[Controller]RolesController]]

## Source
`Modules/CompanyUser/Services/` (role/permission-related)

## Services
| Service | Responsibility |
|---|---|
| `StoringRoleService` | Creates role with its permission assignments |
| `UpdatingRoleService` | Updates role name + syncs permissions |
| `DeletingRoleService` | Deletes role if no users are assigned to it |
| `RetrievingRolesService` | Fetches all roles with eager-loaded permissions |
| `RetrievingRoleItemService` | Single role fetch |
| `CreatingRolesPermissionsService` | Prepares the full permission tree for create/edit forms — grouped by module |
