Files
izyim/app/Classes/Modules/Orders/Services/Steps/CompletesOrderStep.php
T
Omair Saleh 919e0252f7 large commit
2019-06-03 10:29:08 +08:00

34 lines
820 B
PHP

<?php
namespace App\Classes\Modules\Orders\Services\Steps;
use App\Classes\Modules\Orders\DataTransferObjects\OrderObject;
use App\Classes\Modules\Orders\DataTransferObjects\StepObject;
use App\Models\Order;
class CompletesOrderStep {
/**
* @param OrderObject $order
* @param StepObject $step
*/
public function execute(OrderObject $order, StepObject $step){
/** @var Order $repository */
$repository = Order::findOrFail($order->getOrderId());
$orderStep = $repository->orderSteps()->where('reference_id', $step->getReferenceId())->firstOrFail();
$orderStep->complete = 1;
$orderStep->complete_date = $step->getCompleteDate();
if($orderStep->save()){
(new updatesOrderCurrentStep())->execute($order,$step);
}
}
}