'Updated Company Contact Number', 'message' => 'You have successfully updated the Company Contact Number' ]; } /** @var FetchesContact */ private $fetchesContact; /** @var UpdatesContact */ private $updatesContact; /** * UpdateCompanyControllersLogic constructor. * @param FetchesContact $fetchesContact * @param UpdatesContact $updatesContact */ public function __construct(FetchesContact $fetchesContact, UpdatesContact $updatesContact) { $this->fetchesContact = $fetchesContact; $this->updatesContact = $updatesContact; } /** * @param Request $request * @return JsonResponse * @throws ErrorException */ public function logic(Request $request) : JsonResponse { $query = $this->fetchesContact->execute(['id' => $request->input('id')]); $contact = new ContactObject( $query->reference, $request->input('contactNumber'), $query->email, $query->wechat_id ); $this->updatesContact->execute($query, $contact); return $this->resourceResponse(new ContactResource($query)); } }