⚝
One Hat Cyber Team
⚝
Your IP:
216.73.216.19
Server IP:
178.33.27.10
Server:
Linux cpanel.dev-unit.com 3.10.0-1160.108.1.el7.x86_64 #1 SMP Thu Jan 25 16:17:31 UTC 2024 x86_64
Server Software:
Apache/2.4.57 (Unix) OpenSSL/1.0.2k-fips
PHP Version:
8.2.11
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
home
/
id
/
hospital.dev-unit.com
/
app
/
Repositories
/
View File Name :
AmbulanceRepository.php
<?php namespace App\Repositories; use App\Models\Ambulance; use App\Models\CaseHandler; use App\Models\Notification; use App\Models\Receptionist; use App\Models\User; use Exception; use Symfony\Component\HttpKernel\Exception\UnprocessableEntityHttpException; /** * Class AmbulanceRepository * * @version March 26, 2020, 5:23 am UTC */ class AmbulanceRepository extends BaseRepository { /** * @var array */ protected $fieldSearchable = [ 'vehicle_number', 'vehicle_model', 'year_made', 'driver_name', 'driver_license', 'driver_contact', 'note', ]; /** * Return searchable fields */ public function getFieldsSearchable(): array { return $this->fieldSearchable; } /** * Configure the Model **/ public function model() { return Ambulance::class; } public function getAmbulances() { /** @var Ambulance $ambulances */ $ambulances = Ambulance::where('tenant_id', getLoggedInUser()->tenant_id)->whereIsAvailable(1)->pluck('vehicle_model', 'id')->sort(); return $ambulances; } public function createNotification(): bool { try { $ownerType = [Receptionist::class, CaseHandler::class]; $userIds = User::whereIn('owner_type', $ownerType)->pluck('owner_type', 'id')->toArray(); $adminUser = User::role('Admin')->first(); $allUsers = $userIds + [$adminUser->id => Notification::NOTIFICATION_FOR[Notification::ADMIN]]; $users = getAllNotificationUser($allUsers); foreach ($users as $id => $ownerType) { addNotification([ Notification::NOTIFICATION_TYPE['Ambulance'], $id, Notification::NOTIFICATION_FOR[User::getOwnerType($ownerType)], 'New ambulance has been added.', ]); } return true; } catch (Exception $e) { throw new UnprocessableEntityHttpException($e->getMessage()); } } }