mirror of
https://git.meshkee.com/cssd/cssd-back.git
synced 2026-10-11 02:21:07 +03:30
39 lines
1.0 KiB
PHP
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;
|
|
}
|
|
}
|