mirror of
https://git.meshkee.com/cssd/cssd-back.git
synced 2026-10-10 19:51:07 +03:30
38 lines
1.0 KiB
PHP
38 lines
1.0 KiB
PHP
<?php
|
|
|
|
namespace App\Policies;
|
|
|
|
use App\User;
|
|
use App\TestResult;
|
|
|
|
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;
|
|
}
|
|
}
|