diff --git a/app/Policies/ItemPolicy.php b/app/Policies/ItemPolicy.php index d0f1eabb..a8bf4cfd 100644 --- a/app/Policies/ItemPolicy.php +++ b/app/Policies/ItemPolicy.php @@ -2,6 +2,7 @@ namespace App\Policies; +use App\Constants\StatusTypeEnum; use App\Models\Item; use App\Models\User; @@ -17,11 +18,12 @@ class ItemPolicy { if ($user->hasRole('Admin')) { return true; - } elseif ($user->hasRole('Supervisor')) { - if ($Item->status == 0) { - return true; - } + } elseif ($user->hasRole('Supervisor') && $Item->user()->medical_center_id == $user->medical_center_id) { + return true; + } elseif ($user->hasRole('User') && $Item->user_id == $user->id && $Item->status != StatusTypeEnum::APPROVED) { + return true; } + return false; } public function update(User $user, Item $Item)