diff --git a/app/Classes/Modules/PackingLists/Processors/CreatePackageProcessor.php b/app/Classes/Modules/PackingLists/Processors/CreatePackageProcessor.php index 500a4550..fcd9bf52 100644 --- a/app/Classes/Modules/PackingLists/Processors/CreatePackageProcessor.php +++ b/app/Classes/Modules/PackingLists/Processors/CreatePackageProcessor.php @@ -33,7 +33,7 @@ class CreatePackageProcessor /** * @param PackageObject $object * @param PackingList $packingList - * @return \Illuminate\Database\Eloquent\Model + * @return void * @throws \App\Classes\Exceptions\AccessForbiddenException * @throws \App\Classes\Exceptions\RequestValidationException */ @@ -41,7 +41,17 @@ class CreatePackageProcessor $this->canCreatePackage->passes($object); - return $this->createsPackage->execute($object, $packingList); + $this->createsPackage->execute($object, $packingList); + + $replica = $packingList->packingList()->first(); + + if($replica) { + $modificationValue = 1; + $packageObject = new PackageObject($object->getType(), $object->getDescription(), $object->getWidth() + $modificationValue, $object->getHeight() + $modificationValue, $object->getLength() + $modificationValue, $object->getWeight(), $object->getQuantity(), $object->getStatus()); + $this->createsPackage->execute($packageObject, $replica); + } + + return ; } diff --git a/app/Classes/Modules/PackingLists/Processors/CreatePackingListProcessor.php b/app/Classes/Modules/PackingLists/Processors/CreatePackingListProcessor.php index 982b7307..0a546546 100644 --- a/app/Classes/Modules/PackingLists/Processors/CreatePackingListProcessor.php +++ b/app/Classes/Modules/PackingLists/Processors/CreatePackingListProcessor.php @@ -7,6 +7,10 @@ use App\Classes\General\Interfaces\Packable; use App\Classes\Modules\PackingLists\DataTransferObjects\PackingListObject; use App\Classes\Modules\PackingLists\Services\CreatesPackingList; use App\Classes\Modules\PackingLists\Standards\Rules\CanCreatePackingList; +use App\Classes\ValueObjects\Constants\ApprovalStatus; +use App\Classes\ValueObjects\Constants\OrderRoleTypes; +use App\Classes\ValueObjects\Constants\PackingListType; +use App\Models\PackingList; class CreatePackingListProcessor { @@ -41,7 +45,14 @@ class CreatePackingListProcessor public function execute(PackingListObject $object, Packable $packable){ $this->canCreatePackingList->passes($object); - return $this->createsPackingList->execute($object, $packable); + /** @var PackingList $packingList */ + $packingList = $this->createsPackingList->execute($object, $packable); + + /** create packing list replica */ + $object = new PackingListObject($object->getReference().'_01', $packingList->owner->orderRoles()->where('role_id', '=', OrderRoleTypes::ORIGIN_FREIGHT_FORWARDER)->first()->appointee->id, $object->getType() === PackingListType::SHIPPING_PACKING_LIST ? $object->getType() === PackingListType::SHIPPING_PACKING_LIST_REPLICA : $object->getType() === PackingListType::WAREHOUSE_RECEIVE_LIST_REPLICA, ApprovalStatus::PENDING_SUBMISSION); + $this->createsPackingList->execute($object, $packingList); + + return $packingList; } } \ No newline at end of file diff --git a/app/Classes/Modules/PackingLists/Processors/FetchLoadedContainersFromVTPortalProcessor.php b/app/Classes/Modules/PackingLists/Processors/FetchLoadedContainersFromVTPortalProcessor.php index 330c3200..f77c9fe2 100644 --- a/app/Classes/Modules/PackingLists/Processors/FetchLoadedContainersFromVTPortalProcessor.php +++ b/app/Classes/Modules/PackingLists/Processors/FetchLoadedContainersFromVTPortalProcessor.php @@ -213,11 +213,6 @@ class FetchLoadedContainersFromVTPortalProcessor $this->createsStep->execute($packingList, $stepObject); } - //Duplicate a copy for internal reference - $packingListObject = new PackingListObject($packingListReference.'_01', $order->orderRoles()->where('role_id', '=', OrderRoleTypes::SUPERVISOR)->first()->appointee->id, PackingListType::SHIPPING_PACKING_LIST_REPLICA, ApprovalStatus::PENDING_SUBMISSION); - $this->createPackingListProcessor->execute($packingListObject, $packingList); - - } } diff --git a/app/Classes/Modules/PackingLists/Processors/FetchPackingListFromVTPortalProcessor.php b/app/Classes/Modules/PackingLists/Processors/FetchPackingListFromVTPortalProcessor.php index 9a47ed50..53dbbab1 100644 --- a/app/Classes/Modules/PackingLists/Processors/FetchPackingListFromVTPortalProcessor.php +++ b/app/Classes/Modules/PackingLists/Processors/FetchPackingListFromVTPortalProcessor.php @@ -73,12 +73,6 @@ class FetchPackingListFromVTPortalProcessor $packageObject = new PackageObject(PackageType::CARTON, $shippingPackingList[19], $shippingPackingList[31], $shippingPackingList[30], $shippingPackingList[29], 0, $shippingPackingList[22], ApprovalStatus::APPROVED); $this->createPackageProcessor->execute($packageObject, $packingList); - - if($replica) { - $modificationValue = 1; - $packageObject = new PackageObject(PackageType::CARTON, $shippingPackingList[19], $shippingPackingList[31] + $modificationValue, $shippingPackingList[30] + $modificationValue, $shippingPackingList[29] + $modificationValue, 0, $shippingPackingList[22], ApprovalStatus::APPROVED); - $this->createPackageProcessor->execute($packageObject, $replica); - } } DB::commit(); diff --git a/app/Classes/Modules/PackingLists/Processors/FetchWarehouseReceiveListFromVTPortalProcessor.php b/app/Classes/Modules/PackingLists/Processors/FetchWarehouseReceiveListFromVTPortalProcessor.php index 397dacce..a4b846cf 100644 --- a/app/Classes/Modules/PackingLists/Processors/FetchWarehouseReceiveListFromVTPortalProcessor.php +++ b/app/Classes/Modules/PackingLists/Processors/FetchWarehouseReceiveListFromVTPortalProcessor.php @@ -206,13 +206,7 @@ class FetchWarehouseReceiveListFromVTPortalProcessor if(!$packingList) { $packingList = $this->createPackingListProcessor->execute($packingListObject, $order); - - $packingListObject = new PackingListObject($packingListReference.'_01', $order->orderRoles()->where('role_id', '=', OrderRoleTypes::SUPERVISOR)->first()->appointee->id, PackingListType::WAREHOUSE_RECEIVE_LIST_REPLICA, ApprovalStatus::APPROVED); - $this->createPackingListProcessor->execute($packingListObject, $packingList); - $transportObject = new TransportObject(TransportType::LAND, null, $tracking, Carbon::parse($receiveDate), Carbon::parse($receiveDate), ApprovalStatus::APPROVED); - - $this->createsTransport->execute($transportObject, $packingList); } @@ -226,24 +220,12 @@ class FetchWarehouseReceiveListFromVTPortalProcessor /** @var PackingList $replica */ $replica = $packingList->packingLists()->where('type', PackingListType::WAREHOUSE_RECEIVE_LIST_REPLICA)->first(); $packingList->packages()->delete(); - + if($replica) $replica->packages()->delete(); $packageObject = new PackageObject(PackageType::CARTON, $description, $measurement, $measurement, $measurement, 0, $quantity, ApprovalStatus::APPROVED); $this->createPackageProcessor->execute($packageObject, $packingList); - - if($replica){ - $replica->packages()->delete(); - $modificationValue = 1; - $packageObject = new PackageObject(PackageType::CARTON, $description, $measurement + $modificationValue, $measurement + $modificationValue, $measurement + $modificationValue, 0, $quantity, ApprovalStatus::APPROVED); - $this->createPackageProcessor->execute($packageObject, $replica); - - } - } - - } catch (\Exception $exception){ - dd($exception); Log::error($exception->getMessage()); }