# Conflicts:
#	routes/web.php
This commit is contained in:
edmondlang
2022-09-07 21:50:48 +08:00
7 changed files with 27 additions and 33 deletions
@@ -37,9 +37,7 @@ class ExportsArrivedParcel implements WithHeadings, WithHeadingRow, WithMapping,
*/
public function query()
{
return PackingList::where('type', '=', 1)->where('status', '=', 2)->where('owner_type', Order::class)->whereHas('transports', function($query){
return $query->where('drop_date', '>=',Carbon::now()->subMonth());
});
return PackingList::where('type', '=', 1)->where('status', '=', 2)->where('owner_type', Order::class);
}
/**
@@ -145,7 +145,6 @@ class FetchLoadedContainersFromVTPortalProcessor
$containersRequest = $this->fetchesDataFRomVTPortal->clientRequest('http://portal.vtnation.com.my/Services/DataControllerService.asmx/GetPage', 'POST', json_decode('{"controller":"VCustomercontainer","view":"grid1","request":{"PageIndex":-1,"PageSize":10000,"SortExpression":"LoadedTime asc","Filter":'.$filter.'}}'), '');
$containers = $this->fetchesDataFRomVTPortal->getResponseBody($containersRequest);
foreach ($containers->Rows as $container){
$filter = '["ContainerID:=%js%'.$container[12].'"]';
$containerDetailRequest = $this->fetchesDataFRomVTPortal->clientRequest('http://portal.vtnation.com.my/Services/DataControllerService.asmx/GetPage', 'POST', json_decode('{"controller":"ParcelInContainer","view":"grid1","request":{"PageIndex":-1,"PageSize":10000,"SortExpression":null,"Filter":'.$filter.'}}'), '');
@@ -155,7 +154,6 @@ class FetchLoadedContainersFromVTPortalProcessor
$containerObject = new ContainerObject($container[0], str_replace(' ', '', $container[24]), str_replace(' ', '', $container[16]), ContainerTypes::FORTY_FEET_DRY_CONTAINER, Carbon::parse($container[6]), ApprovalStatus::PENDING_VERIFICATION);
$containerInfo = $container;
try {
$container = $this->fetchesContainer->execute(['reference' => $containerObject->getReference()]);
} catch (ResourceNotFoundException $exception){
@@ -163,9 +161,9 @@ class FetchLoadedContainersFromVTPortalProcessor
$originWarehouse = $this->fetchesCompanyModule->execute(['id' => $warehouseId === 11 ? 3 : 4]);
$container = $this->createContainerProcessor->execute($containerObject, $originWarehouse);
}
$eta = Carbon::parse($containerInfo[4]);
$etd = Carbon::parse($eta)->subDays(5);
$eta = Carbon::parse($containerInfo[4])->addDays(2);
$etd = Carbon::parse($eta)->subDays(7);
$delayDate = $containerInfo[7];
@@ -175,7 +173,9 @@ class FetchLoadedContainersFromVTPortalProcessor
$transport = $container->transports()->first();
if(!$transport){
if(!$transport || $eta !== $transport->eta){
$container->transports()->delete();
$transportObject = new TransportObject(TransportType::SEA, null, null, $etd, null, ApprovalStatus::APPROVED);
/** @var Transport $transport */
$transport = $this->createsTransport->execute($transportObject, $container);
@@ -183,8 +183,7 @@ class FetchLoadedContainersFromVTPortalProcessor
}
if($delayDate){
$delayDate = Carbon::parse($delayDate);
$delayDate = Carbon::parse($delayDate)->addDays(2);
$transport = $container->transports()->first();
if(!$transport->schedules()->where('eta', '=', $delayDate)->first()) {
@@ -184,7 +184,7 @@ class FetchOrderListsFromYdPortalProcessor
$containerReference = explode('预计到港时间', $tracking[1])[0];
$loadingDate = Carbon::parse($trackingRow->trackingtime);
$etd = Carbon::parse($tracking[2])->subDays(5);
$eta = Carbon::parse($tracking[2]);
$eta = Carbon::parse($tracking[2])->addDays(2);
}
$rescheduleETD = strpos($trackingRow->remark, '开') || strpos($trackingRow->remark, '到港');
@@ -351,7 +351,7 @@ class FetchOrderListsFromYdPortalProcessor
if($order instanceof Order){
$marking = $order->companyModule->inviters()->withPivot('invitee_reference')->first()->pivot->invitee_reference;
if(!in_array($marking, ['2192KAA', '2353GFE', '6866DTR', '153DSR', '1291NSC', '8288MIB'])){
if(!in_array($marking, ['2192KAA', '2353GFE', '6866DTR', '153DSR', '1291NSC', '8288MIB', '1152AAT', '962LOW', '3992WHE', '1290CSW', '9493TYS', '3397GSH'])){
$this->fetchesDataFRomYDPortal->clientRequest('http://www.yd-wl.com/api/confirmsendorder.ashx', 'GET', [
'expressno' => $row->expressno
]);
@@ -393,7 +393,7 @@ class FetchOrderListsFromYdPortalProcessor
}
if($delayDate){
$delayDate = $delayDate->addDays(2);
$transport = $container->transports()->first();
if(!$transport->schedules()->whereDate('eta', '>=', $delayDate)->first()) {
@@ -43,7 +43,9 @@ final class WarehouseReferences {
public const YD_DESTINATION_WAREHOUSE = self::YD_KLANG;
public const YD_EXEMPT_LIST = [230, 294, 320, 652, 1248, 1726, 2349, 2574];
public const YD_EXEMPT_LIST = [230, 294, 320, 652, 1248, 1726, 2349, 2574, 652];
public const MIN_CBM_EXEMPT_LIST = [230, 294, 320, 652, 1248, 1726, 2349, 2574];
public const REPLICA_WHITE_LIST = [502];
@@ -27,8 +27,7 @@
</div>
</div>
<div class="col col-md-3 p-l-5">
<!--@click="parameters.warehouse_id = 4"-->
<div class="b-a b-thick p-t-15 p-b-15 p-l-35 p-r-35 bg-master-light" style="cursor: not-allowed" :class="{ 'b-primary': parameters.warehouse_id === 4, 'b-grey': parameters.warehouse_id !== 4 }">
<div class="b-a b-thick p-t-15 p-b-15 p-l-35 p-r-35 pointer" @click="parameters.warehouse_id = 4" :class="{ 'b-primary': parameters.warehouse_id === 4, 'b-grey': parameters.warehouse_id !== 4 }">
<div class="row m-b-15 justify-content-center">
<div class="col-8">
<img src="/images/yiwu-map.png" class="w-100">
@@ -40,7 +39,6 @@
</div>
</div>
</div>
<p class="m-b-0 text-danger m-t-15" v-if="!parameters.warehouse_id">Due to pandemic prevention, we have decided to temporarily disable our Yiwu warehouse.</p>
</div>
</div>
<div class="row justify-content-center m-t-15 align-items-center" v-if="parameters.warehouse_id">
+2 -1
View File
@@ -38,7 +38,8 @@
<tr>
<td>
<p style="font-size: 25px; margin-bottom: 0 !important; margin-top: 10px !important;">仓库地址:</p>
<p style="margin-top: 5px !important; margin-bottom: 5px !important; word-wrap: break-word; font-size: 25px;">{{$warehouse_address->state->name.' '.$warehouse_address->district->name.' '.$warehouse_address->street_one.' '.$warehouse_address->street_two.' 邮编:'.$warehouse_address->postcode}}</p>
<p style="margin-top: 5px !important; margin-bottom: 5px !important; word-wrap: break-word; font-size: 25px;">{{$warehouse_address->state->name.' '.$warehouse_address->district->name.' '.$warehouse_address->street_one.' '.$warehouse_address->street_two}}</p>
<p style="font-size: 25px;">邮编:{{$warehouse_address->postcode}}</p>
<p style="margin-top: 5px !important; margin-bottom: 0px !important; font-size: 25px;">联系:@foreach($warehouse_contacts as $contact){{ $loop->first ? '' : ' / ' }}{{ $contact->phone.' '.$contact->reference }}@endforeach</p>
<p style="font-style: italic; font-weight: bold; margin-top: 5px !important; margin-bottom: 0px !important; font-size: 25px;">{!! $remark !!}</p>
</td>
+11 -15
View File
@@ -202,9 +202,7 @@ Route::group(['prefix' => 'template', 'as' => 'template.'], function () {
Route::get('/yiwu', function () {
$orders = \App\Models\Order::whereHas('OrderRoles', function($query){
return $query->where('role_id', \App\Classes\ValueObjects\Constants\OrderRoleTypes::ORIGIN_WAREHOUSE)->where('company_module_id', 4);
})->whereHas('addresses', function($query){
return $query->where('status', \App\Classes\ValueObjects\Constants\ApprovalStatus::APPROVED)->whereIn('state_id', [5, 13, 14]);
return $query->where('role_id', \App\Classes\ValueObjects\Constants\OrderRoleTypes::ORIGIN_WAREHOUSE)->where('company_module_id', 2358);
})->get();
foreach ($orders as $order){
@@ -256,22 +254,20 @@ Route::get('/container/{reference}/refresh/', function (string $reference){
$container = Container::where('reference', $reference)->first();
$supplier = in_array($container->owner_id, [3, 4]) ? 'VT' : 'YD';
$arrivalDates = \App\Models\PackingList::whereIn('reference', $container->packingLists->pluck('reference'))->where('type', \App\Classes\ValueObjects\Constants\PackingListType::WAREHOUSE_RECEIVE_LIST)->get()->map(function($packingList){
return $packingList->transports()->first()->drop_date;
})->sortBy(function($date){
return $date;
});
$startDate = $arrivalDates->first()->subDay()->format('d-m-Y');
$endDate = $arrivalDates->last()->addDay()->format('d-m-Y');
if($supplier === 'VT'){
$startDate = $container->loading_date->subDays(3);
$endDate = $container->loading_date->addDay();
(App()->make(\App\Classes\Modules\PackingLists\Processors\FetchLoadedContainersFromVTPortalProcessor::class))->execute($startDate, $endDate);
return (App()->make(\App\Classes\Modules\PackingLists\Processors\FetchLoadedContainersFromVTPortalProcessor::class))->execute(\Carbon\Carbon::parse($endDate), \Carbon\Carbon::parse($endDate)->addDays(5));
}
if($supplier === 'YD'){
$arrivalDates = \App\Models\PackingList::whereIn('reference', $container->packingLists->pluck('reference'))->where('type', \App\Classes\ValueObjects\Constants\PackingListType::WAREHOUSE_RECEIVE_LIST)->get()->map(function($packingList){
return $packingList->transports()->first()->drop_date;
})->sortBy(function($date){
return $date;
});
$startDate = $arrivalDates->first()->subDay()->format('d-m-Y');
$endDate = $arrivalDates->last()->addDay()->format('d-m-Y');
return redirect(route('yd.refresh').'?start_date='.$startDate.'&end_date='.$endDate);
}