'Updated PackingList Status', 'message' => 'You have successfully updated the PackingList status' ]; } /** @var FetchesPackingList */ private $fetchesPackingList; /** @var UpdatesPackingListStatus */ private $updatesPackingListStatus; /** * UpdatePackingListStatusLogic constructor. * @param FetchesPackingList $fetchesPackingList * @param UpdatesPackingListStatus $updatesPackingListStatus */ public function __construct(FetchesPackingList $fetchesPackingList, UpdatesPackingListStatus $updatesPackingListStatus) { $this->fetchesPackingList = $fetchesPackingList; $this->updatesPackingListStatus = $updatesPackingListStatus; } /** * @param Request $request * @return JsonResponse * @throws \App\Classes\Exceptions\MalformedRequestException */ public function logic(Request $request) : JsonResponse { $packingList = $this->fetchesPackingList->execute(['id' => $request->route('id')]); $query = $this->updatesPackingListStatus->execute($packingList, $request->route('status')); return $this->resourceResponse(new PackingListResource($query)); } }