'Updated Bank', 'message' => 'You have successfully updated the Bank' ]; } /** @var ResetsBanksDefault */ private $resetsBanksDefault; /** @var FetchesBank */ private $fetchesBank; /** @var SetsBankToDefault*/ private $setsBankToDefault ; /** * SetBankToDefaultLogic constructor. * @param ResetsBanksDefault $resetsBanksDefault * @param FetchesBank $fetchesBank * @param SetsBankToDefault $setsBankToDefault */ public function __construct(ResetsBanksDefault $resetsBanksDefault, FetchesBank $fetchesBank, SetsBankToDefault $setsBankToDefault) { $this->resetsBanksDefault = $resetsBanksDefault; $this->fetchesBank = $fetchesBank; $this->setsBankToDefault = $setsBankToDefault; } /** * @param Request $request * @return JsonResponse * @throws \App\Classes\Exceptions\MalformedRequestException */ public function logic(Request $request) : JsonResponse { /** @var Bank $bank */ $bank = $this->fetchesBank->execute(['id' => $request->route('id')]); $this->resetsBanksDefault->execute($bank); $this->setsBankToDefault->execute($bank); return $this->resourceResponse(new BankResource($this->setsBankToDefault->execute($bank))); } }