= cac5f4905b WIP: implement ticketing system with support for notifications and attachments
- Added database migrations for tickets, statuses, roles, users, and related associations.
- Introduced models and enums for ticket status, permissions, and notifications.
- Implemented `TicketService` for ticket management and notification handling.
- Created Livewire form and UI for raising tickets with file attachments and routing options.
- Added tests covering ticket creation, validation, notifications, and file uploads.
2026-05-25 13:04:43 +00:00
..

Permissions Enums

This directory contains all the permissions enums. Spatie/laravel-permission uses these enums to check permissions. Any Permission enum added here will be automatically added to the database, when the PermissionSeeder is run, no need to add it manually. This is done via Reflection API.

Only string backed are supported.

Value format of Enum

We are following the convention of scope:resource:action .

File name of the enum should be same as the scope name, and Enum value should be in the format of resource:action.

Example: UserPermissionEnum.php

    namespace App\Enums\Permissions;
    enum UserPermissionEnum:string 
    {
        case Create = 'user:create';
        case Read = 'user:read';
        case Update = 'user:update';
        case Delete = 'user:delete';
    }
    
    // using the enum makes straight forward permission check
    $user->can(UserPermissionEnum::Create);
    @can(UserPermissionEnum::Create);