File manager - Edit - /var/www/html/portal/app/Http/Services/ParqueTecnologico/FaqsService.php
Back
<?php namespace App\Http\Services\ParqueTecnologico; use App\Models\ParqueTecnologico\Faq; use Illuminate\Http\RedirectResponse; use Illuminate\Http\Request; use Illuminate\Pagination\LengthAwarePaginator; use Illuminate\Support\Facades\DB; class FaqsService { public function list(Request $request): LengthAwarePaginator { $q = (string) ($request->input('q') ?? ''); $query = Faq::query(); if ($q !== '') { $query->where(function ($qry) use ($q) { $qry->where('pergunta', 'like', "%{$q}%") ->orWhere('resposta', 'like', "%{$q}%"); }); } return $query ->orderBy('ordem') ->orderByDesc('created_at') ->paginate(15) ->withQueryString(); } public function store(array $data): RedirectResponse { try { DB::beginTransaction(); Faq::create([ 'pergunta' => $data['pergunta'], 'resposta' => $data['resposta'], 'ordem' => (int) ($data['ordem'] ?? 0), 'status' => isset($data['status']) ? (bool) $data['status'] : true, ]); DB::commit(); return redirect() ->route('admin.parqueTecnologico.index', ['tab' => 'faqs']) ->with('success', __('Pergunta frequente criada com sucesso.')); } catch (\Throwable $e) { DB::rollBack(); return redirect() ->route('admin.parqueTecnologico.faqs.create') ->withInput() ->with('error', __('Erro ao cadastrar pergunta frequente: ') . $e->getMessage()); } } public function update(Faq $faq, array $data): RedirectResponse { try { DB::beginTransaction(); $faq->pergunta = $data['pergunta']; $faq->resposta = $data['resposta']; $faq->ordem = isset($data['ordem']) ? (int) $data['ordem'] : $faq->ordem; $faq->status = isset($data['status']) ? (bool) $data['status'] : $faq->status; $faq->save(); DB::commit(); return redirect() ->route('admin.parqueTecnologico.index', ['tab' => 'faqs']) ->with('success', __('Pergunta frequente atualizada com sucesso.')); } catch (\Throwable $e) { DB::rollBack(); return redirect() ->route('admin.parqueTecnologico.faqs.edit', $faq->id) ->withInput() ->with('error', __('Erro ao atualizar pergunta frequente: ') . $e->getMessage()); } } public function destroy(Faq $faq): RedirectResponse { try { DB::beginTransaction(); $faq->delete(); DB::commit(); return redirect() ->route('admin.parqueTecnologico.index', ['tab' => 'faqs']) ->with('success', __('Pergunta frequente excluĂda com sucesso.')); } catch (\Throwable $e) { DB::rollBack(); return redirect() ->route('admin.parqueTecnologico.index', ['tab' => 'faqs']) ->with('error', __('Erro ao excluir pergunta frequente: ') . $e->getMessage()); } } }
| ver. 1.4 |
Github
|
.
| PHP 8.3.28 | Generation time: 0.02 |
proxy
|
phpinfo
|
Settings