From 402556d51b66ac1f81cb2d195094012298d255ff Mon Sep 17 00:00:00 2001 From: omair saleh Date: Thu, 27 Jan 2022 13:01:25 +0800 Subject: [PATCH] fix yd delivery address update api --- .../ApproveChangeOrderAddressProcessor.php | 2 +- .../Processors/UpdateDoFromYDPortalProcessor.php | 14 ++++++++++++-- .../UpdatePackingListStatusLogic.php | 14 ++++++++++++-- 3 files changed, 25 insertions(+), 5 deletions(-) diff --git a/app/Classes/Modules/Orders/Processors/ApproveChangeOrderAddressProcessor.php b/app/Classes/Modules/Orders/Processors/ApproveChangeOrderAddressProcessor.php index f7ce2c41..28f9a116 100644 --- a/app/Classes/Modules/Orders/Processors/ApproveChangeOrderAddressProcessor.php +++ b/app/Classes/Modules/Orders/Processors/ApproveChangeOrderAddressProcessor.php @@ -67,7 +67,7 @@ class ApproveChangeOrderAddressProcessor $address->owner->addresses()->update(['status' => ApprovalStatus::EXPIRED]); $appointee = $address->owner->orderRoles()->where('role_id', '=', OrderRoleTypes::ORIGIN_FREIGHT_FORWARDER)->first()->appointee->id; - $appointee == 2 ? $this->updateDoFromVTPortalProcessor->execute($address) : $this->updateDoFromYDPortalProcessor->execute($address); + $appointee === 2 ? $this->updateDoFromVTPortalProcessor->execute($address) : $this->updateDoFromYDPortalProcessor->execute($address); } diff --git a/app/Classes/Modules/Orders/Processors/UpdateDoFromYDPortalProcessor.php b/app/Classes/Modules/Orders/Processors/UpdateDoFromYDPortalProcessor.php index 5cd67e4f..5694ff40 100644 --- a/app/Classes/Modules/Orders/Processors/UpdateDoFromYDPortalProcessor.php +++ b/app/Classes/Modules/Orders/Processors/UpdateDoFromYDPortalProcessor.php @@ -44,6 +44,17 @@ class UpdateDoFromYDPortalProcessor foreach ($packing_list as $key => $row) { if ($packing_list->status === ApprovalStatus::SUSPENDED) { + $this->fetchesDataFRomYDPortal->clientRequest( + 'http://www.yd-wl.com/api/UpdateOrderAddress.ashx', + 'POST', + [ + 'expressno' => $row->reference, + 'customers_name' => '', + 'cellphone' => '', + 'postcode' => '', + 'streetAddress' => '' + ]); + continue; } @@ -52,7 +63,7 @@ class UpdateDoFromYDPortalProcessor $phone = $contact ? $contact->phone : null; $reference = $contact ? $contact->reference : null; - $yd_do_update = $this->fetchesDataFRomYDPortal->clientRequest( + $this->fetchesDataFRomYDPortal->clientRequest( 'http://www.yd-wl.com/api/UpdateOrderAddress.ashx', 'POST', [ @@ -64,7 +75,6 @@ class UpdateDoFromYDPortalProcessor ]); - $this->fetchesDataFRomYDPortal->getResponseBody($yd_do_update); } } catch (\Exception $exception){ diff --git a/app/Classes/Modules/PackingLists/ControllersLogic/UpdatePackingListStatusLogic.php b/app/Classes/Modules/PackingLists/ControllersLogic/UpdatePackingListStatusLogic.php index 9bf1735a..b533dc22 100644 --- a/app/Classes/Modules/PackingLists/ControllersLogic/UpdatePackingListStatusLogic.php +++ b/app/Classes/Modules/PackingLists/ControllersLogic/UpdatePackingListStatusLogic.php @@ -4,12 +4,14 @@ namespace App\Classes\Modules\PackingLists\ControllersLogic; use App\Classes\General\Abstracts\AbstractControllerLogic; +use App\Classes\Modules\Orders\Processors\UpdateDoFromYDPortalProcessor; use App\Classes\Modules\PackingLists\Services\UpdatesPackingList; use App\Classes\Modules\PackingLists\Services\FetchesPackingList; use App\Classes\Modules\PackingLists\Services\UpdatesPackingListStatus; use App\Classes\Modules\PackingLists\Standards\Rules\CanUpdatePackingList; use App\Classes\Modules\PackingLists\DataTransferObjects\PackingListObject; use App\Classes\Modules\Orders\Processors\UpdateDoFromVTPortalProcessor; +use App\Classes\ValueObjects\Constants\OrderRoleTypes; use App\Http\Resources\PackingListResource; use ErrorException; use Illuminate\Http\JsonResponse; @@ -38,16 +40,22 @@ class UpdatePackingListStatusLogic extends AbstractControllerLogic /** @var UpdateDoFromVTPortalProcessor */ private $updateDoFromVTPortalProcessor; + /** @var UpdateDoFromYDPortalProcessor */ + private $updateDoFromYDPortalProcessor ; + /** * UpdatePackingListStatusLogic constructor. * @param FetchesPackingList $fetchesPackingList * @param UpdatesPackingListStatus $updatesPackingListStatus + * @param UpdateDoFromVTPortalProcessor $updateDoFromVTPortalProcessor + * @param UpdateDoFromYDPortalProcessor $updateDoFromYDPortalProcessor */ - public function __construct(FetchesPackingList $fetchesPackingList, UpdatesPackingListStatus $updatesPackingListStatus, UpdateDoFromVTPortalProcessor $updateDoFromVTPortalProcessor) + public function __construct(FetchesPackingList $fetchesPackingList, UpdatesPackingListStatus $updatesPackingListStatus, UpdateDoFromVTPortalProcessor $updateDoFromVTPortalProcessor, UpdateDoFromYDPortalProcessor $updateDoFromYDPortalProcessor) { $this->fetchesPackingList = $fetchesPackingList; $this->updatesPackingListStatus = $updatesPackingListStatus; $this->updateDoFromVTPortalProcessor = $updateDoFromVTPortalProcessor; + $this->updateDoFromYDPortalProcessor = $updateDoFromYDPortalProcessor; } /** @@ -64,7 +72,9 @@ class UpdatePackingListStatusLogic extends AbstractControllerLogic $packing_list = $this->updatesPackingListStatus->execute($packingList, $request->route('status')); $address = $packing_list->owner()->first()->addresses()->first(); - $this->updateDoFromVTPortalProcessor->execute($address); + $appointee = $address->owner->orderRoles()->where('role_id', '=', OrderRoleTypes::ORIGIN_FREIGHT_FORWARDER)->first()->appointee->id; + + $appointee === 2 ? $this->updateDoFromVTPortalProcessor->execute($address) : $this->updateDoFromYDPortalProcessor->execute($address); return $this->resourceResponse(new PackingListResource($packing_list)); }