mirror of
https://gitlab.com/CIEFWorldwideSdnBhd/portal.git
synced 2026-08-21 05:24:09 +00:00
Merge branch 'task/EXC-317' into 'master'
Updates on Packing List & Package See merge request CIEFWorldwideSdnBhd/shipping-portal!46
This commit is contained in:
@@ -5,6 +5,7 @@ namespace App\Classes\Modules\PackingLists\ControllersLogic;
|
||||
use App\Classes\Modules\Companies\Services\FetchesCompany;
|
||||
use App\Classes\Modules\PackingLists\DataTransferObjects\PackageObject;
|
||||
use App\Classes\Modules\PackingLists\Processors\CreatePackingListProcessor;
|
||||
use App\Classes\Modules\Orders\Services\FetchesOrder;
|
||||
use App\Classes\Modules\PackingLists\Services\Packages\FetchesPackage;
|
||||
use App\Classes\ValueObjects\Constants\ApprovalStatus;
|
||||
use App\Classes\General\Abstracts\AbstractControllerLogic;
|
||||
@@ -13,6 +14,9 @@ use App\Classes\Modules\PackingLists\Services\CreatesPackingListPackage;
|
||||
use App\Classes\Modules\PackingLists\Standards\Rules\CanCreatePackingList;
|
||||
use App\Classes\Modules\PackingLists\Standards\Rules\CanCreatePackingListPackage;
|
||||
use App\Classes\Modules\PackingLists\DataTransferObjects\PackingListObject;
|
||||
use App\Classes\ValueObjects\Constants\OrderRoleTypes;
|
||||
use App\Classes\ValueObjects\Constants\PackingListType;
|
||||
|
||||
use App\Http\Resources\PackingListResource;
|
||||
use Illuminate\Http\JsonResponse;
|
||||
use Illuminate\Http\Request;
|
||||
@@ -34,13 +38,18 @@ class CreatePackingListLogic extends AbstractControllerLogic
|
||||
/** @var CreatePackingListProcessor */
|
||||
private $createPackingListProcessor;
|
||||
|
||||
/** @var FetchesOrder */
|
||||
private $fetchesOrder;
|
||||
|
||||
/**
|
||||
* CreatePackingListLogic constructor.
|
||||
* @param CreatePackingListProcessor $createPackingListProcessor
|
||||
* @param FetchesOrder $fetchesOrder
|
||||
*/
|
||||
public function __construct(CreatePackingListProcessor $createPackingListProcessor)
|
||||
public function __construct(CreatePackingListProcessor $createPackingListProcessor, FetchesOrder $fetchesOrder)
|
||||
{
|
||||
$this->createPackingListProcessor = $createPackingListProcessor;
|
||||
$this->fetchesOrder = $fetchesOrder;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -50,11 +59,13 @@ class CreatePackingListLogic extends AbstractControllerLogic
|
||||
public function logic(Request $request) : JsonResponse
|
||||
{
|
||||
|
||||
$object = new PackingListObject($request->input('reference_number'), ApprovalStatus::PENDING_SUBMISSION);
|
||||
$order = $this->fetchesOrder->execute(['reference' => $request->input('reference_number')]);
|
||||
|
||||
$query = $this->createPackingListProcessor->execute($object);
|
||||
$packingListObject = new PackingListObject($request->input('reference_number'), $order->orderRoles()->where('role_id', '=', OrderRoleTypes::ORIGIN_WAREHOUSE)->first()->appointee->id, PackingListType::WAREHOUSE_RECEIVE_LIST, ApprovalStatus::PENDING_SUBMISSION);
|
||||
|
||||
return $this->resourceResponse(new PackingListResource($query));
|
||||
$packingList = $this->createPackingListProcessor->execute($packingListObject, $order);
|
||||
|
||||
return $this->resourceResponse(new PackingListResource($packingList));
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -12,6 +12,7 @@ use App\Classes\Modules\Companies\Services\FetchesCompany;
|
||||
use App\Http\Resources\PackageResource;
|
||||
use Illuminate\Http\JsonResponse;
|
||||
use Illuminate\Http\Request;
|
||||
use App\Classes\ValueObjects\Constants\PackageType;
|
||||
|
||||
class CreatePackageLogic extends AbstractControllerLogic
|
||||
{
|
||||
@@ -65,19 +66,19 @@ class CreatePackageLogic extends AbstractControllerLogic
|
||||
$order = $this->fetchesOrder->execute(['id' => $request->input('order_id')]);
|
||||
|
||||
$object = new PackageObject(
|
||||
null,
|
||||
$request->input('type'),
|
||||
$request->input('description'),
|
||||
$request->input('width'),
|
||||
$request->input('height'),
|
||||
$request->input('length'),
|
||||
$request->input('weight'),
|
||||
0,
|
||||
$request->input('quantity'),
|
||||
ApprovalStatus::PENDING_VERIFICATION);
|
||||
|
||||
$this->canCreatePackage->passes($object);
|
||||
|
||||
$query = $this->createsPackage->execute($object);
|
||||
$query = $this->createsPackage->execute($object, $order->packingLists()->first());
|
||||
|
||||
return $this->resourceResponse(new PackageResource($query));
|
||||
|
||||
|
||||
@@ -4,8 +4,8 @@ namespace App\Classes\Modules\PackingLists\ControllersLogic\Packages;
|
||||
|
||||
|
||||
use App\Classes\General\Abstracts\AbstractControllerLogic;
|
||||
use App\Classes\Modules\Packages\Services\FetchesPackage;
|
||||
use App\Classes\Modules\Packages\Standards\Rules\CanFetchPackage;
|
||||
use App\Classes\Modules\PackingLists\Services\Packages\FetchesPackage;
|
||||
use App\Classes\Modules\PackingLists\Standards\Rules\Packages\CanFetchPackage;
|
||||
use App\Http\Resources\PackageResource;
|
||||
use ErrorException;
|
||||
use Illuminate\Http\JsonResponse;
|
||||
|
||||
@@ -4,8 +4,8 @@ namespace App\Classes\Modules\PackingLists\ControllersLogic\Packages;
|
||||
|
||||
|
||||
use App\Classes\General\Abstracts\AbstractControllerLogic;
|
||||
use App\Classes\Modules\Packages\Services\ListsPackages;
|
||||
use App\Classes\Modules\Packages\Standards\Rules\CanListPackages;
|
||||
use App\Classes\Modules\PackingLists\Services\Packages\ListsPackages;
|
||||
use App\Classes\Modules\PackingLists\Standards\Rules\Packages\CanListPackages;
|
||||
use App\Http\Resources\PackageResource;
|
||||
use ErrorException;
|
||||
use Illuminate\Http\JsonResponse;
|
||||
|
||||
@@ -4,10 +4,10 @@ namespace App\Classes\Modules\PackingLists\ControllersLogic\Packages;
|
||||
|
||||
|
||||
use App\Classes\General\Abstracts\AbstractControllerLogic;
|
||||
use App\Classes\Modules\Packages\Services\UpdatesPackage;
|
||||
use App\Classes\Modules\Packages\Services\FetchesPackage;
|
||||
use App\Classes\Modules\Packages\Standards\Rules\CanUpdatePackage;
|
||||
use App\Classes\Modules\Packages\DataTransferObjects\PackageObject;
|
||||
use App\Classes\Modules\PackingLists\Services\Packages\UpdatesPackage;
|
||||
use App\Classes\Modules\PackingLists\Services\Packages\FetchesPackage;
|
||||
use App\Classes\Modules\PackingLists\Standards\Rules\Packages\CanUpdatePackage;
|
||||
use App\Classes\Modules\PackingLists\DataTransferObjects\PackageObject;
|
||||
use App\Http\Resources\PackageResource;
|
||||
use ErrorException;
|
||||
use Illuminate\Http\JsonResponse;
|
||||
@@ -60,8 +60,6 @@ class UpdatePackageLogic extends AbstractControllerLogic
|
||||
$package = $this->fetchesPackage->execute(['id' => $request->route('id')]);
|
||||
|
||||
$object = new PackageObject(
|
||||
$package->order_id,
|
||||
null,
|
||||
$request->input('type'),
|
||||
$request->input('description'),
|
||||
$request->input('width'),
|
||||
@@ -69,7 +67,9 @@ class UpdatePackageLogic extends AbstractControllerLogic
|
||||
$request->input('length'),
|
||||
$request->input('weight'),
|
||||
$request->input('quantity'),
|
||||
$request->input('status'));
|
||||
$request->input('status'),
|
||||
$package->reference
|
||||
);
|
||||
|
||||
$this->canUpdatePackage->passes($object);
|
||||
|
||||
|
||||
@@ -57,7 +57,7 @@ class UpdatePackingListLogic extends AbstractControllerLogic
|
||||
{
|
||||
$packingList = $this->fetchesPackingList->execute(['id' => $request->route('id')]);
|
||||
|
||||
$object = new PackingListObject($packingList->reference, $request->input('status'));
|
||||
$object = new PackingListObject($packingList->reference, $packingList->claimant_id, $packingList->type, $request->input('status'));
|
||||
|
||||
$this->canUpdatePackingList->passes($object);
|
||||
|
||||
|
||||
@@ -10,7 +10,6 @@ class UpdatesPackage extends AbstractUpdateRecord
|
||||
{
|
||||
public function execute(Package $model, PackageObject $object) {
|
||||
|
||||
$model->claimant_id = $object->getClaimantId();
|
||||
$model->type = $object->getType();
|
||||
$model->description = $object->getDescription();
|
||||
$model->width = $object->getWidth();
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
namespace App\Http\Controllers\PackingLists\Packages;
|
||||
|
||||
use App\Classes\Modules\ControllersLogic\Packages\CreatePackageLogic;
|
||||
use App\Classes\Modules\PackingLists\ControllersLogic\Packages\CreatePackageLogic;
|
||||
use Illuminate\Http\JsonResponse;
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
namespace App\Http\Controllers\PackingLists\Packages;
|
||||
|
||||
use App\Classes\Modules\ControllersLogic\Packages\DeletePackageLogic;
|
||||
use App\Classes\Modules\PackingLists\ControllersLogic\Packages\DeletePackageLogic;
|
||||
use Illuminate\Http\JsonResponse;
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
namespace App\Http\Controllers\PackingLists\Packages;
|
||||
|
||||
use App\Classes\Modules\ControllersLogic\Packages\FetchPackageLogic;
|
||||
use App\Classes\Modules\PackingLists\ControllersLogic\Packages\FetchPackageLogic;
|
||||
use Illuminate\Http\JsonResponse;
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
namespace App\Http\Controllers\PackingLists\Packages;
|
||||
|
||||
use App\Classes\Modules\ControllersLogic\Packages\ListPackagesLogic;
|
||||
use App\Classes\Modules\PackingLists\ControllersLogic\Packages\ListPackagesLogic;
|
||||
use Illuminate\Http\JsonResponse;
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
namespace App\Http\Controllers\PackingLists\Packages;
|
||||
|
||||
use App\Classes\Modules\ControllersLogic\Packages\UpdatePackageLogic;
|
||||
use App\Classes\Modules\PackingLists\ControllersLogic\Packages\UpdatePackageLogic;
|
||||
use Illuminate\Http\JsonResponse;
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
|
||||
@@ -28,13 +28,17 @@
|
||||
"name": "Order",
|
||||
"description": "Endpoints related to order module."
|
||||
},
|
||||
{
|
||||
"name": "Packing",
|
||||
"description": "Endpoints related to packing module."
|
||||
},
|
||||
{
|
||||
"name": "Package",
|
||||
"description": "Endpoints related to package module."
|
||||
},
|
||||
{
|
||||
"name": "Packing",
|
||||
"description": "Endpoints related to packing module."
|
||||
"name": "Container",
|
||||
"description": "Endpoints related to container module."
|
||||
},
|
||||
{
|
||||
"name": "Transport",
|
||||
@@ -71,9 +75,9 @@
|
||||
"description": "",
|
||||
"parameters": [
|
||||
{
|
||||
"name": "package_id",
|
||||
"name": "reference_number",
|
||||
"in": "query",
|
||||
"description": "Package Id",
|
||||
"description": "Reference No",
|
||||
"required": true,
|
||||
"type": "integer"
|
||||
}
|
||||
@@ -221,7 +225,7 @@
|
||||
"description": "Status",
|
||||
"required": true,
|
||||
"type": "integer"
|
||||
},
|
||||
}
|
||||
],
|
||||
"responses": {
|
||||
"200": {
|
||||
@@ -296,7 +300,7 @@
|
||||
"/packing_list/container/create": {
|
||||
"post": {
|
||||
"tags": [
|
||||
"Packing"
|
||||
"Container"
|
||||
],
|
||||
"produces": [
|
||||
"application/json"
|
||||
@@ -362,7 +366,7 @@
|
||||
"/packing_list/container/list": {
|
||||
"get": {
|
||||
"tags": [
|
||||
"Packing"
|
||||
"Container"
|
||||
],
|
||||
"produces": [
|
||||
"application/json"
|
||||
@@ -410,7 +414,7 @@
|
||||
"/packing_list/container/{id}/show": {
|
||||
"get": {
|
||||
"tags": [
|
||||
"Packing"
|
||||
"Container"
|
||||
],
|
||||
"produces": [
|
||||
"application/json"
|
||||
@@ -455,7 +459,7 @@
|
||||
"/packing_list/container/update/{id}": {
|
||||
"put": {
|
||||
"tags": [
|
||||
"Packing"
|
||||
"Container"
|
||||
],
|
||||
"produces": [
|
||||
"application/json"
|
||||
@@ -528,7 +532,7 @@
|
||||
"/packing_list/container/delete/{id}": {
|
||||
"delete": {
|
||||
"tags": [
|
||||
"Packing"
|
||||
"Container"
|
||||
],
|
||||
"produces": [
|
||||
"application/json"
|
||||
@@ -826,7 +830,7 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"/package/create": {
|
||||
"/packing_list/package/create": {
|
||||
"post": {
|
||||
"tags": [
|
||||
"Package"
|
||||
@@ -893,7 +897,7 @@
|
||||
"description": "Quantity",
|
||||
"required": true,
|
||||
"type": "integer"
|
||||
},
|
||||
}
|
||||
],
|
||||
"responses": {
|
||||
"200": {
|
||||
@@ -920,7 +924,7 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"/package/list": {
|
||||
"/packing_list/package/list": {
|
||||
"get": {
|
||||
"tags": [
|
||||
"Package"
|
||||
@@ -968,7 +972,7 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"/package/{id}/show": {
|
||||
"/packing_list/package/{id}/show": {
|
||||
"get": {
|
||||
"tags": [
|
||||
"Package"
|
||||
@@ -1013,7 +1017,7 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"/package/update/{id}": {
|
||||
"/packing_list/package/update/{id}": {
|
||||
"put": {
|
||||
"tags": [
|
||||
"Package"
|
||||
@@ -1087,7 +1091,7 @@
|
||||
"description": "Status",
|
||||
"required": true,
|
||||
"type": "integer"
|
||||
},
|
||||
}
|
||||
],
|
||||
"responses": {
|
||||
"200": {
|
||||
@@ -1114,7 +1118,7 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"/package/delete/{id}": {
|
||||
"/packing_list/package/delete/{id}": {
|
||||
"delete": {
|
||||
"tags": [
|
||||
"Package"
|
||||
@@ -1159,7 +1163,7 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"/package/item/create": {
|
||||
"/packing_list/package/item/create": {
|
||||
"post": {
|
||||
"tags": [
|
||||
"Package"
|
||||
@@ -1219,7 +1223,7 @@
|
||||
"description": "Total",
|
||||
"required": true,
|
||||
"type": "number"
|
||||
},
|
||||
}
|
||||
],
|
||||
"responses": {
|
||||
"200": {
|
||||
@@ -1246,7 +1250,7 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"/package/item/list": {
|
||||
"/packing_list/package/item/list": {
|
||||
"get": {
|
||||
"tags": [
|
||||
"Package"
|
||||
@@ -1294,7 +1298,7 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"/package/item/{id}/show": {
|
||||
"/packing_list/package/item/{id}/show": {
|
||||
"get": {
|
||||
"tags": [
|
||||
"Package"
|
||||
@@ -1339,7 +1343,7 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"/package/item/update/{id}": {
|
||||
"/packing_list/package/item/update/{id}": {
|
||||
"put": {
|
||||
"tags": [
|
||||
"Package"
|
||||
@@ -1406,7 +1410,7 @@
|
||||
"description": "Status",
|
||||
"required": true,
|
||||
"type": "integer"
|
||||
},
|
||||
}
|
||||
],
|
||||
"responses": {
|
||||
"200": {
|
||||
@@ -1433,7 +1437,7 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"/package/item/delete/{id}": {
|
||||
"/packing_list/package/item/delete/{id}": {
|
||||
"delete": {
|
||||
"tags": [
|
||||
"Package"
|
||||
@@ -1490,7 +1494,7 @@
|
||||
"summary": "Create transport",
|
||||
"description": "",
|
||||
"parameters": [
|
||||
{
|
||||
{
|
||||
"name": "container_id",
|
||||
"in": "query",
|
||||
"description": "Container Id",
|
||||
@@ -1697,7 +1701,7 @@
|
||||
"description": "Status",
|
||||
"required": true,
|
||||
"type": "integer"
|
||||
},
|
||||
}
|
||||
],
|
||||
"responses": {
|
||||
"200": {
|
||||
@@ -2294,9 +2298,9 @@
|
||||
"description": "",
|
||||
"parameters": [
|
||||
{
|
||||
"name": "company_module_id",
|
||||
"name": "company_id",
|
||||
"in": "query",
|
||||
"description": "Company Module ID",
|
||||
"description": "Company ID",
|
||||
"required": true,
|
||||
"type": "integer"
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user