calls()->get(); return CallResource::collection($calls); } /** * Store a call. * * @param Contact $contact * @return Call */ public function store(Request $request, Contact $contact) { return app(CreateCall::class)->execute([ 'account_id' => auth()->user()->account_id, 'contact_id' => $contact->id, 'content' => $request->input('content'), 'called_at' => $request->input('called_at'), 'contact_called' => $request->input('contact_called'), 'emotions' => $request->input('emotions'), ]); } /** * Update a call. * * @param Contact $contact * @param Call $call * @return Call */ public function update(Request $request, Contact $contact, Call $call) { return app(UpdateCall::class)->execute([ 'account_id' => auth()->user()->account_id, 'call_id' => $call->id, 'content' => $request->input('content'), 'called_at' => $request->input('called_at'), 'contact_called' => $request->input('contact_called'), 'emotions' => $request->input('emotions'), ]); } /** * Delete the call. * * @param Request $request * @param Contact $contact * @param Call $call * * @return null|\Illuminate\Http\JsonResponse */ public function destroy(Request $request, Contact $contact, Call $call) { $data = [ 'account_id' => auth()->user()->account_id, 'call_id' => $call->id, ]; try { if (app(DestroyCall::class)->execute($data)) { return $this->respondObjectDeleted($call->id); } } catch (\Exception $e) { return $this->respondNotFound(); } return; } }