Files
cssd-back/app/Policies/TransferPolicy.php
T
2024-02-13 10:41:41 +03:30

53 lines
1.3 KiB
PHP

<?php
namespace App\Policies;
use App\Package;
use App\Transfer;
use App\User;
use App\Item;
class TransferPolicy
{
public function changeStatus( User $User , Transfer $transfer )
{
if ( $User->hasRole( 'Admin|Supervisor' ) || $transfer->user_id == $User->id )
return true;
}
public function transferItem( User $User , Item $Item )
{
if ( $User->hasRole( 'Admin' ) ) {
return true;
} else {
if ( $User->hasRole( 'Supervisor' ) ) {
if ( $Item->user->medical_center_id == $User->medical_center_id ) {
return true;
}
} else {
if ( $Item->user_id == $User->id ) {
return true;
}
}
}
}
public function transferPackage( User $User , Package $Package )
{
if ( $User->hasRole( 'Admin' ) ) {
return true;
} else {
if ( $User->hasRole( 'Supervisor' ) ) {
if ( $Package->user->medical_center_id == $User->medical_center_id) {
return true;
}
} else {
if ( $Package->user_id == $User->id) {
return true;
}
}
}
}
}