update container reschedule for yd

This commit is contained in:
omair saleh
2022-03-17 16:33:00 +08:00
parent 33a75eca7d
commit b0a65f870c
@@ -181,14 +181,28 @@ class FetchOrderListsFromYdPortalProcessor
$eta = Carbon::parse($tracking[2]);
}
if (strpos($trackingRow->tracking, '预计船时间为') !== false) {
$tracking = explode('预计船时间为', $trackingRow->tracking);
$delayDate = Carbon::parse(explode('日', $tracking[1])[0]);
}
$rescheduleETD = strpos($trackingRow->tracking, '开');
$rescheduleETA = strpos($trackingRow->tracking, '到港');
if (strpos($trackingRow->tracking, '预计开船为') !== false) {
$tracking = explode('预计开船为', $trackingRow->tracking);
$delayDate = Carbon::parse(explode('日', $tracking[1])[0]);
if ($rescheduleETD !== false || $rescheduleETA !== false) {
preg_match_all('/([0-9]+.{3})/', $trackingRow->tracking, $matches);
$dates = collect();
foreach($matches[0] as $date){
try {
$dates->push(Carbon::parse(str_replace('.', '/', $date).Carbon::now()->format('Y')));
} catch (\Exception $exception) {
continue;
}
}
/** @var Carbon $delayDate */
$delayDate = $dates->sortDesc()->first();
if($rescheduleETA === false) {
$delayDate = $delayDate->addDays('5');
}
}
if ($trackingRow->tracking === '货物已进目的港仓库') {