From bf9b00c85fb008ff93aed96df6e7f2432165946f Mon Sep 17 00:00:00 2001 From: Dillon Ngo Date: Mon, 18 Dec 2023 16:59:48 +0800 Subject: [PATCH] Vue Polling - Code sycn with fixes from Shipping Portal (dillon/51-vue-polling-experimental-1) --- .../Processors/ListBookingJobProcessor.php | 6 ++++-- app/Http/Resources/BookingResource.php | 17 +---------------- app/Http/Resources/CompanyResource.php | 2 +- 3 files changed, 6 insertions(+), 19 deletions(-) diff --git a/app/Classes/Modules/Bookings/Processors/ListBookingJobProcessor.php b/app/Classes/Modules/Bookings/Processors/ListBookingJobProcessor.php index b622ce79..4e6d8d99 100644 --- a/app/Classes/Modules/Bookings/Processors/ListBookingJobProcessor.php +++ b/app/Classes/Modules/Bookings/Processors/ListBookingJobProcessor.php @@ -39,10 +39,12 @@ class ListBookingJobProcessor public function execute(ListGenericJobObject $listGenericJobObject) { $query = $this->listsBookings->execute($this->listsBookings->deserializeFilters($listGenericJobObject->getPayload()['filters']), ['page' => $listGenericJobObject->getPayload()['page']]); + foreach ($query->items() as &$item) { + $item['userInfo'] = $listGenericJobObject->getUserInfo(); + } //cief todo: remove comments - // $result = $this->collectionResponse(BookingResource::collection($query)->userInfo($listGenericJobObject->getuserInfo())); - $result = $this->collectionResponse(BookingResource::customResourceCollection($query, $listGenericJobObject->getuserInfo())); + $result = $this->collectionResponse(BookingResource::collection($query)); // $result = new JobBookingCollectionResponse($query, $listGenericJobObject->getuserInfo()); // $result = $this->collectionResponse(new BookingResourceCollection(BookingResource::collection($query), $listGenericJobObject->getuserInfo())); diff --git a/app/Http/Resources/BookingResource.php b/app/Http/Resources/BookingResource.php index 09a2c237..d07247e7 100644 --- a/app/Http/Resources/BookingResource.php +++ b/app/Http/Resources/BookingResource.php @@ -16,15 +16,6 @@ use Illuminate\Support\Facades\Log; class BookingResource extends JsonResource { - // protected $userInfo; - private static $userInfo; - - public function userInfo($resource, $userInfo = null) - { - parent::__construct($resource); - self::$userInfo = $userInfo; - } - /** * Transform the resource into an array. * @@ -36,7 +27,7 @@ class BookingResource extends JsonResource { return [ 'id' => $this->id, - 'company' => new CompanyResource($this->company, self::$userInfo), + 'company' => new CompanyResource($this->company, $this->userInfo), 'bank' => new BankResource($this->bank), 'service' => new ServiceTypeResource($this->service), 'marking' => $this->marking, @@ -81,10 +72,4 @@ class BookingResource extends JsonResource ]) ]; } - - public static function customResourceCollection($resource, $userInfo): AnonymousResourceCollection - { - self::$userInfo = $userInfo; - return parent::collection($resource); - } } diff --git a/app/Http/Resources/CompanyResource.php b/app/Http/Resources/CompanyResource.php index 2c1e2e9c..df3bcf49 100644 --- a/app/Http/Resources/CompanyResource.php +++ b/app/Http/Resources/CompanyResource.php @@ -19,7 +19,7 @@ use Illuminate\Support\Facades\Log; class CompanyResource extends JsonResource { - protected $userInfo; + private $userInfo; public function __construct($resource, $userInfo = null) {