mirror of
https://gitlab.com/CIEFWorldwideSdnBhd/shipping-portal.git
synced 2026-08-19 04:24:12 +00:00
Laravel Vapor - YD API integration code rewrite to fix eta/etd
This commit is contained in:
+23
-2
@@ -141,7 +141,7 @@ class FetchContainersUpdatesYdPortalV3Processor
|
||||
}
|
||||
|
||||
if($delayETADate){
|
||||
Log::info('YDContainerUpdates delayDate ' . $delayETADate);
|
||||
Log::info('YDContainerUpdates delayETADate ' . $delayETADate);
|
||||
$transport = $container->transports()->first();
|
||||
Log::info('YDContainerUpdates transport ' . json_encode($transport));
|
||||
if(!$transport->schedules()->whereDate('eta', '>=', $delayETADate)->first()) { //If no record
|
||||
@@ -162,7 +162,28 @@ class FetchContainersUpdatesYdPortalV3Processor
|
||||
}
|
||||
}
|
||||
else{
|
||||
Log::info('YDContainerUpdates NO DELAY');
|
||||
Log::info('YDContainerUpdates NO DELAY (ETA)');
|
||||
}
|
||||
}
|
||||
else if($delayETDDate){
|
||||
//Runs when delayETDDate is available but NOT delayETADate
|
||||
Log::info('YDContainerUpdates delayETDDate ' . $delayETDDate);
|
||||
$transport = $container->transports()->first();
|
||||
Log::info('YDContainerUpdates transport ' . json_encode($transport));
|
||||
if(!$transport->schedules()->whereDate('etd', '>=', $delayETDDate)->first()) { //If no record
|
||||
$eta = $delayETDDate->copy()->addDays(5);
|
||||
$transport->schedules()->update(['status' => ApprovalStatus::EXPIRED]);
|
||||
$this->createsSchedule->execute($transport, new ScheduleObject($delayETDDate, $eta, ApprovalStatus::APPROVED));
|
||||
foreach ($container->packingLists as $packingList){
|
||||
if(!($packingList->owner instanceof Order)) continue;
|
||||
$user = $packingList->owner->companyModule->employees()->first();
|
||||
if(app()->environment(['production'])) {
|
||||
$user->notify(new ShipmentRescheduleEmail($user, $packingList));
|
||||
}
|
||||
}
|
||||
}
|
||||
else{
|
||||
Log::info('YDContainerUpdates NO DELAY (ETD)');
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user