mirror of
https://gitlab.com/CIEFWorldwideSdnBhd/shipping-portal.git
synced 2026-08-19 04:24:12 +00:00
Merge branch 'dillon/34.8b-yd-api-bug-fix' into vapor/development
This commit is contained in:
+29
-15
@@ -70,40 +70,50 @@ class FetchContainersUpdatesYdPortalV3Processor
|
||||
Log::info('YDContainerUpdates order ' . json_encode($packingList->owner));
|
||||
|
||||
$unstuffingDate = null;
|
||||
$delayDate = null;
|
||||
$delayETADate = null;
|
||||
$delayETDDate = null;
|
||||
$checkShipSailDate = null;
|
||||
$checkShipArrivalDate = null;
|
||||
|
||||
foreach ($trackingRows as $trackingRow) {
|
||||
if($trackingRow->eta){
|
||||
if(!$delayDate){
|
||||
$delayDate = Carbon::parse($trackingRow->eta);
|
||||
if(!$delayETADate){
|
||||
$delayETADate = Carbon::parse($trackingRow->eta);
|
||||
}
|
||||
if(Carbon::parse($trackingRow->eta) > $delayDate){
|
||||
$delayDate = Carbon::parse($trackingRow->eta);
|
||||
if(Carbon::parse($trackingRow->eta) > $delayETADate){
|
||||
$delayETADate = Carbon::parse($trackingRow->eta);
|
||||
}
|
||||
}
|
||||
|
||||
if($trackingRow->etd){
|
||||
if(!$delayETDDate){
|
||||
$delayETDDate = Carbon::parse($trackingRow->etd);
|
||||
}
|
||||
if(Carbon::parse($trackingRow->etd) > $delayETDDate){
|
||||
$delayETDDate = Carbon::parse($trackingRow->etd);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
foreach ($trackingRows as $trackingRow) {
|
||||
if ($trackingRow->tracking === '到港') {
|
||||
Log::info('YDContainerUpdates - 到港 delayDate ' . $delayDate);
|
||||
Log::info('YDContainerUpdates - 到港 delayDate ' . $delayETADate);
|
||||
Log::info('YDContainerUpdates - 到港 $trackingRow->tracking_time ' . $trackingRow->tracking_time);
|
||||
$delayDate = Carbon::parse($trackingRow->tracking_time);
|
||||
$delayETADate = Carbon::parse($trackingRow->tracking_time);
|
||||
$checkShipArrivalDate = Carbon::parse($trackingRow->tracking_time);
|
||||
}
|
||||
|
||||
if ($trackingRow->tracking === '已开船') {
|
||||
Log::info('YDContainerUpdates - 已开船 delayDate ' . $delayDate);
|
||||
if(!$delayDate){
|
||||
Log::info('YDContainerUpdates - 已开船 delayDate ' . $delayETADate);
|
||||
if(!$delayETADate){
|
||||
Log::info('YDContainerUpdates - 已开船 $trackingRow->tracking_time add 5 days ' . $trackingRow->tracking_time);
|
||||
$delayDate = Carbon::parse($trackingRow->tracking_time)->addDays('5');
|
||||
$delayETADate = Carbon::parse($trackingRow->tracking_time)->addDays('5');
|
||||
}
|
||||
$checkShipSailDate = Carbon::parse($trackingRow->tracking_time);
|
||||
}
|
||||
|
||||
if ($trackingRow->tracking === '货物已进目的港仓库') {
|
||||
Log::info('YDContainerUpdates - 货物已进目的港仓库 delayDate ' . $delayDate);
|
||||
Log::info('YDContainerUpdates - 货物已进目的港仓库 delayDate ' . $delayETADate);
|
||||
$unstuffingDate = Carbon::parse($trackingRow->tracking_time);
|
||||
}
|
||||
}
|
||||
@@ -130,15 +140,19 @@ class FetchContainersUpdatesYdPortalV3Processor
|
||||
}
|
||||
}
|
||||
|
||||
if($delayDate){
|
||||
Log::info('YDContainerUpdates delayDate ' . $delayDate);
|
||||
if($delayETADate){
|
||||
Log::info('YDContainerUpdates delayDate ' . $delayETADate);
|
||||
$transport = $container->transports()->first();
|
||||
Log::info('YDContainerUpdates transport ' . json_encode($transport));
|
||||
if(!$transport->schedules()->whereDate('eta', '>=', $delayDate)->first()) { //If no record
|
||||
if(!$transport->schedules()->whereDate('eta', '>=', $delayETADate)->first()) { //If no record
|
||||
$etd = $transport->schedules()->where('status', '=', ApprovalStatus::APPROVED)->first()->etd;
|
||||
if($delayETDDate > Carbon::parse($etd)){
|
||||
$etd = $delayETDDate;
|
||||
Log::info('YDContainerUpdates new etd');
|
||||
}
|
||||
Log::info('YDContainerUpdates etd ' . json_encode($etd));
|
||||
$transport->schedules()->update(['status' => ApprovalStatus::EXPIRED]);
|
||||
$this->createsSchedule->execute($transport, new ScheduleObject($etd, $delayDate, ApprovalStatus::APPROVED));
|
||||
$this->createsSchedule->execute($transport, new ScheduleObject($etd, $delayETADate, ApprovalStatus::APPROVED));
|
||||
foreach ($container->packingLists as $packingList){
|
||||
if(!($packingList->owner instanceof Order)) continue;
|
||||
$user = $packingList->owner->companyModule->employees()->first();
|
||||
|
||||
Reference in New Issue
Block a user