File manager - Edit - /var/www/html/spdc/api/app/Http/Services/OccurrencyScriptureImpedimentService.php
Back
<?php namespace App\Http\Services; use PDF; use App\Models\Occurrency; use Illuminate\Support\Carbon; use Illuminate\Http\JsonResponse; use App\Classes\BaseServiceResponse; use App\Models\OccurrencyScriptureImpediment; use App\Http\Requests\OccurrencyScriptureImpedimentRequest; use App\Http\Resources\OccurrencyScriptureImpedimentResource; class OccurrencyScriptureImpedimentService extends BaseService { public function store(OccurrencyScriptureImpedimentRequest $request, Occurrency $occurrency): BaseServiceResponse { if (!in_array('AUTOS', $occurrency->category?->sections)) { $this->response(null, JsonResponse::HTTP_BAD_REQUEST, 'This occurrency can not have scriptures.'); } $inputs = $request->all(); $user = $request->user; $scripture = $occurrency->scriptures()->create([ ...$inputs, 'responsable' => [ 'name' => $user['name'], 'document' => $user['document'], 'registration' => $user['registration'], 'email' => $user['email'] ] ]); $impediment = $scripture->impediments()->create($inputs); return $this->response(new OccurrencyScriptureImpedimentResource($impediment), JsonResponse::HTTP_CREATED); } public function update(OccurrencyScriptureImpedimentRequest $request, OccurrencyScriptureImpediment $impediment): BaseServiceResponse { $inputs = $request->all(); $impediment->scripture->fill($inputs)->save(); $impediment->fill($inputs)->save(); return $this->response(new OccurrencyScriptureImpedimentResource($impediment)); } public function show(OccurrencyScriptureImpediment $impediment): BaseServiceResponse { return $this->response(new OccurrencyScriptureImpedimentResource($impediment)); } public function pdf(OccurrencyScriptureImpediment $impediment): BaseServiceResponse { $scripture = $impediment->scripture; $address = $scripture->occurrency?->address?->setAppends(['full_address']); $occurrency = $impediment->scripture?->occurrency; $signature = $impediment->scripture?->signature; Carbon::setLocale('pt_BR'); $date = Carbon::now()->isoFormat('D [de] MMMM [de] YYYY'); $signature_date = $signature?->created_at?->isoFormat('D [de] MMMM [de] YYYY'); // generating pdf $data = [ 'place' => $impediment?->scripture?->placeType->name, 'address' => $address?->full_address, 'occurrency_code' => $occurrency?->code, 'date' => $date, 'responsable_name' => $scripture?->responsable['name'], 'responsable_registration' => $scripture?->responsable['registration'], 'notes' => $scripture?->note, 'base64Signature' => $signature?->file, 'signature_name' => $signature?->name, 'signature_document' => $signature?->document, 'signature_date' => $signature_date, ]; $pdf = PDF::loadView('scriptures.impediment', $data); $pdf->setOption('chroot', public_path('/')); $pdfContent = $pdf->output(); // Storage::put(storage_path('temp/' . str()->uuid() . '.pdf'), $pdfContent); // convert to base64 $base64pdf = base64_encode($pdfContent); // saving $impediment->scripture?->fill(['file' => $base64pdf])->save(); return $this->response(new OccurrencyScriptureImpedimentResource($impediment)); } }
| ver. 1.4 |
Github
|
.
| PHP 8.3.28 | Generation time: 0.01 |
proxy
|
phpinfo
|
Settings