Files
cssd-back/app/Policies/TestResultPolicy.php
T
2024-11-07 16:41:50 +03:30

39 lines
1.0 KiB
PHP

<?php
namespace App\Policies;
use App\Models\TestResult;
use App\Models\User;
class TestResultPolicy
{
public function delete(User $user, TestResult $TestResult)
{
if ($user->hasRole('Admin') ||
($user->hasRole('Supervisor') && $TestResult->verified == 'NotVerified') ||
($user->hasRole('User') && $TestResult->verified == 'NotVerified' && $TestResult->user_id == $user->id)
)
return true;
}
public function update(User $user, TestResult $TestResult)
{
if ($user->hasRole('Admin') || $TestResult->user_id == $user->id)
return true;
}
public function store(User $user)
{
return true;
}
public function verifyTestResult(User $user, TestResult $TestResult)
{
$TR_MID = $TestResult->user->medical_center_id;
$user_MID = $user->medical_center_id;
if ($user->hasRole('Admin') || ($user->hasRole('Supervisor') && $TR_MID == $user_MID && $TestResult->verified == 'None'))
return true;
}
}