Files
izyim/app/Classes/Modules/Orders/Services/Steps/UpdatesOrderReceiveNoteDate.php
T
2019-05-28 10:21:59 +08:00

48 lines
1.2 KiB
PHP

<?php
/**
* Created by PhpStorm.
* User: mhmj
* Date: 27/05/2019
* Time: 12:01 PM
*/
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 UpdatesOrderReceiveNoteDate
{
/** @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()}");
}
}
}