mirror of
https://gitlab.com/CIEFWorldwideSdnBhd/portal.git
synced 2026-09-01 10:54:31 +00:00
Order APIs & Unity services
This commit is contained in:
@@ -4,10 +4,10 @@ namespace App\Classes\Modules\OrderSteps\Processors;
|
||||
|
||||
use App\Classes\Modules\Orders\DataTransferObjects\OrderObject;
|
||||
use App\Classes\Modules\Orders\Processors\UpdatesOrderCurrentStepProcessor;
|
||||
use App\Classes\Modules\Orders\Services\FetchesOrder;
|
||||
use App\Classes\Modules\OrderSteps\Services\FetchesOrderSteps;
|
||||
use App\Classes\Modules\OrderSteps\Services\UpdatesOrderSteps;
|
||||
use App\Classes\Modules\Orders\Services\UpdatesCurrentStep;
|
||||
use App\Classes\Modules\Orders\Standards\Rules\CanUpdateCurrentStep;
|
||||
use App\Classes\Modules\OrderSteps\Standards\Rules\CanUpdateOrderStep;
|
||||
use App\Classes\Modules\OrderSteps\DataTransferObjects\OrderStepsObject;
|
||||
use App\Classes\ValueObjects\Constants\OrderStatus;
|
||||
use App\Classes\ValueObjects\Constants\OrderSteps;
|
||||
@@ -16,35 +16,28 @@ use App\Models\OrderStep;
|
||||
|
||||
class UpdateOrderStepsProcessor
|
||||
{
|
||||
private $canUpdateCurrentStep;
|
||||
private $canUpdateOrderStep;
|
||||
|
||||
private $updatesOrderCurrentStep;
|
||||
|
||||
private $fetchesOrder;
|
||||
private $updatesOrderSteps;
|
||||
|
||||
private $fetchesOrderSteps;
|
||||
|
||||
public function __construct(CanUpdateCurrentStep $canUpdateCurrentStep, FetchesOrder $fetchesOrder, FetchesOrderSteps $fetchesOrderSteps, UpdatesOrderCurrentStepProcessor $updatesOrderCurrentStep )
|
||||
public function __construct(CanUpdateOrderStep $canUpdateOrderStep, UpdatesOrderSteps $updatesOrderSteps, FetchesOrderSteps $fetchesOrderSteps )
|
||||
{
|
||||
$this->canUpdateCurrentStep = $canUpdateCurrentStep;
|
||||
$this->updatesOrderCurrentStep = $updatesOrderCurrentStep;
|
||||
$this->fetchesOrder = $fetchesOrder;
|
||||
$this->canUpdateOrderStep = $canUpdateOrderStep;
|
||||
$this->updatesOrderSteps = $updatesOrderSteps;
|
||||
$this->fetchesOrderSteps = $fetchesOrderSteps;
|
||||
}
|
||||
|
||||
public function execute(int $orderId, string $currentStep){
|
||||
public function execute(string $currentStep){
|
||||
|
||||
$order_object = new OrderStepsObject($currentStep, 0, $currentStep, 0, 0, OrderStatus::PROCESSING, 0, null);
|
||||
$orderStepsObject = new OrderStepsObject(0,0,$currentStep, 0, 0, 1, 1, null);
|
||||
|
||||
$this->canUpdateCurrentStep->passes($order_object);
|
||||
|
||||
$order = $this->fetchesOrder->execute(['id'=>$order_object->getId()]);
|
||||
|
||||
$order_steps = $this->fetchesOrderSteps->execute(['order_id'=>$order_object->getId(), 'status'=> OrderStatus::PROCESSING, 'order_by' => 'sequence', 'per_page' => 1]);
|
||||
|
||||
$this->updatesOrderCurrentStep->execute($orderId, $currentStep);
|
||||
$this->canUpdateOrderStep->passes($orderStepsObject);
|
||||
|
||||
$orderSteps = $this->fetchesOrderSteps->execute(['reference'=>$currentStep]);
|
||||
|
||||
$this->updatesOrderSteps->execute($orderSteps, $orderStepsObject);
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user