Permission Management
Permission format
Section titled “Permission format”{resource}.{action}Standard actions
Section titled “Standard actions”| Action | Description |
|---|---|
viewAny | View the list of resources |
view | View a specific resource |
create | Create a new resource |
update | Modify a resource |
delete | Delete a resource |
Complete list of permissions
Section titled “Complete list of permissions”Site management
Section titled “Site management”| Permission | Description |
|---|---|
site.viewAny | View site list |
site.view | View a site |
site.create | Create a site |
site.update | Modify a site |
site.delete | Delete a site |
Zone management
Section titled “Zone management”| Permission | Description |
|---|---|
zone.viewAny | View zone list |
zone.view | View a zone |
zone.create | Create a zone |
zone.update | Modify a zone |
zone.delete | Delete a zone |
Material management
Section titled “Material management”| Permission | Description |
|---|---|
material.viewAny | View material list |
material.view | View a material |
material.create | Create a material |
material.update | Modify a material |
material.delete | Delete a material |
material.generateQrCode | Generate material’s QRCode |
material.scanQrCode | Scan material’s QRCode |
Maintenance management
Section titled “Maintenance management”| Permission | Description |
|---|---|
maintenance.viewAny | View maintenance list |
maintenance.view | View a maintenance |
maintenance.create | Create a maintenance |
maintenance.update | Modify a maintenance |
maintenance.delete | Delete a maintenance |
Incident management
Section titled “Incident management”| Permission | Description |
|---|---|
incident.viewAny | View incident list |
incident.view | View an incident |
incident.create | Report an incident |
incident.update | Modify an incident |
incident.delete | Delete an incident |
Cleaning management
Section titled “Cleaning management”| Permission | Description |
|---|---|
cleaning.viewAny | View cleaning list |
cleaning.view | View a cleaning |
cleaning.create | Create a cleaning |
cleaning.update | Modify a cleaning |
cleaning.delete | Delete a cleaning |
Items management
Section titled “Items management”| Permission | Description |
|---|---|
item.viewAny | View part list |
item.view | View a part |
item.create | Create a part |
item.update | Modify a part |
item.delete | Delete a part |
item.generateQrCode | Generate item’s QRCode |
item.scanQrCode | Scan item’s QRCode |
ItemMovements management
Section titled “ItemMovements management”| Permission | Description |
|---|---|
item-movement.viewAny | View movements |
item-movement.create | Create a movement |
item-movement.update | Update a movement |
item-movement.delete | Delete a movement |
Companies management (HQ)
Section titled “Companies management (HQ)”| Permission | Description |
|---|---|
company.viewAny | View supplier list |
company.view | View a supplier |
company.create | Create a supplier |
company.update | Modify a supplier |
company.delete | Delete a supplier |
User management
Section titled “User management”| Permission | Description |
|---|---|
user.viewAny | View user list |
user.view | View a user |
user.create | Create a user |
user.update | Modify a user |
user.delete | Delete a user |
user.restore | Restore a user |
user.assignDirectPermission | Assign direct permissions to user |
user.assignSite | Assign sites to user |
Check permissions in React
Section titled “Check permissions in React”import { useAuth } from '@/features/Auth/hooks';
function MyComponent() { const { hasPermission, hasAnyPermission, hasRole, hasAnyRole } = useAuth();
return ( <div> {hasPermission('company.create') && ( <button>Create Supplier</button> )}
{hasAnyPermission(['company.update', 'company.delete']) && ( <EditMenu /> )}
{hasRole('admin') && <AdminPanel />}
{hasAnyRole(['admin', 'manager']) && <AdminPanel />} </div> );}