has('rows') ? $request->input('rows') : 50; $activities = Activity::orderBy('created_at', 'DESC')->company() ->take($default_activities); return $this->listResponse($activities); } /** * @OA\Get( * path="/api/v1/actvities/download_entity/{activity_id}", * operationId="getActivityHistoricalEntityPdf", * tags={"actvities"}, * summary="Gets a PDF for the given activity", * description="Gets a PDF for the given activity", * @OA\Parameter(ref="#/components/parameters/X-Api-Secret"), * @OA\Parameter(ref="#/components/parameters/X-Api-Token"), * @OA\Parameter(ref="#/components/parameters/X-Requested-With"), * @OA\Parameter( * name="activity_id", * in="path", * description="The Activity Hashed ID", * example="D2J234DFA", * required=true, * @OA\Schema( * type="string", * format="string", * ), * ), * @OA\Response( * response=200, * description="PDF File", * @OA\Header(header="X-MINIMUM-CLIENT-VERSION", ref="#/components/headers/X-MINIMUM-CLIENT-VERSION"), * @OA\Header(header="X-RateLimit-Remaining", ref="#/components/headers/X-RateLimit-Remaining"), * @OA\Header(header="X-RateLimit-Limit", ref="#/components/headers/X-RateLimit-Limit"), * ), * @OA\Response( * response=404, * description="No file exists for the given record", * ), * @OA\Response( * response="default", * description="Unexpected Error", * @OA\JsonContent(ref="#/components/schemas/Error"), * ), * ) */ public function downloadHistoricalEntity(DownloadHistoricalEntityRequest $request, Activity $activity) { $backup = $activity->backup; if (! $backup || ! $backup->html_backup) { return response()->json(['message'=> 'No backup exists for this activity', 'errors' => new \stdClass], 404); } $pdf = $this->makePdf(null, null, $backup->html_backup); if (isset($activity->invoice_id)) { $filename = $activity->invoice->number.'.pdf'; } elseif (isset($activity->quote_id)) { $filename = $activity->quote->number.'.pdf'; } elseif (isset($activity->credit_id)) { $filename = $activity->credit->number.'.pdf'; } else { $filename = 'backup.pdf'; } return response()->streamDownload(function () use ($pdf) { echo $pdf; }, $filename); } }