Files
izyim/app/Classes/Modules/Orders/Services/Steps/UpdatesStepCompleteDate.php
T
2019-05-28 15:56:46 +08:00

42 lines
1.1 KiB
PHP

<?php
namespace App\Classes\Modules\Orders\Services\Steps;
use App\Classes\Modules\ControllerLogic\Exceptions\InternalServerErrorException;
use App\Classes\Modules\Orders\DataTransferObjects\StepObject;
use App\Models\OrderStep;
use App\Http\Resources\OrderStep as OrderStepResources;
class UpdatesStepCompleteDate
{
/** @var OrderStep */
private $repository;
/**
* UpdatesOrderReceiveNoteDate constructor.
* @param OrderStep $repository
*/
public function __construct(OrderStep $repository)
{
$this->repository = $repository;
}
public function execute(string $orderId, StepObject $step){
try{
$repository = $this->repository->where('order_id',$orderId)->where('reference_id',$step->getReferenceId())->first();
$repository->complete_date = $step->getCompleteDate();
$repository->save();
return $repository;
return new JsonResponse([], HttpStatus::OK);
} catch (\Exception $exception){
throw new InternalServerErrorException("Failed to update receive note because {$exception->getMessage()}");
}
}
}