File manager - Edit - /var/www/html/portalHomolog/app/Http/Controllers/CadastroDeAmbulantes/ProprietariosController.php
Back
<?php namespace App\Http\Controllers\CadastroDeAmbulantes; use App\Http\Controllers\Controller; use Illuminate\Support\Facades\DB; use Illuminate\Support\Facades\Auth; use Illuminate\Support\Facades\Hash; use App\Http\Requests\CadastroDeAmbulantes\ProprietariosRequest; use App\Models\CadastroDeAmbulantes\Ambulante; use App\Models\User; use App\Models\Endereco; class ProprietariosController extends Controller { public function index() { return view('admin.cadastroDeAmbulantes.ambulantes.forms', [ "paises" => $this->__paises(), "ocupacoes" => $this->__ocupacoes(), "ambulante" => NULL, "proprietario" => NULL, "endereco" => NULL, ]); } public function store(ProprietariosRequest $request, Ambulante $ambulante) { $request->validated(); try { if (!$this->validaCPF($request->cpfProprietario)) { return redirect() ->back() ->withInput() ->with('error', 'O número de CPF informado não é válido!'); } DB::beginTransaction(); $fullnameProp = $this->resolveFullname($request->fullNameProprietario); $proprietario = User::where("cpf", $this->clearCPF($request->cpfProprietario))->first(); if (isset($proprietario->id)) { $proprietario->fill([ "firstName" => $fullnameProp['firstName'], "lastName" => $fullnameProp['lastName'], "phoneNumber" => $request->phoneNumberProprietario, "email" => $request->emailProprietario, "photo" => $this->getPathImageUserField($request, 'photoProprietario', $proprietario), ]); $proprietario->save(); } else { $proprietario = User::create([ "structure_id" => null, "firstName" => $fullnameProp['firstName'], "lastName" => $fullnameProp['lastName'], "cpf" => $this->clearCPF($request->cpfProprietario), "phoneNumber" => $request->phoneNumberProprietario, "email" => $request->emailProprietario, "photo" => $this->getPathImageUserField($request, 'photoProprietario', null), "permission" => $this->setPermissions($request->permissionProprietario ?? []), "password" => Hash::make($request->passwordProprietario ?? "mudar123"), "isPasswordDefault" => 1, "papers" => $this->setPapers($request->papersProprietario ?? []), ]); } $endereco_array = [ 'user_id' => Auth::id(), 'owner_id' => $proprietario->id, 'domicilio' => $request->domicilioProprietario, 'cep' => $request->cepProprietario, 'logradouro' => $request->logradouroProprietario, 'numero' => $request->numeroProprietario, 'complemento' => $request->complementoProprietario ?? null, 'cidade' => $request->cidadeProprietario, 'bairro' => $request->bairroProprietario, 'uf' => $request->ufProprietario, 'latitude' => $request->latitudeProprietario, 'longitude' => $request->longitudeProprietario, 'comprovante' => $this->getProofOfResidence($request, "comprovanteProprietario", $proprietario->endereco), ]; Endereco::updateOrCreate( ['owner_id' => $proprietario->id], $endereco_array ); $ambulante = Ambulante::firstOrCreate( ["user_id" => $proprietario->id], ['owner_id' => Auth::id()] ); DB::commit(); return redirect() ->route('admin.cadastroDeAmbulantes.ambulantes.representanteLegalIndex', $ambulante->id) ->with('success', 'Proprietário cadastrado com sucesso!'); } catch (\Exception $e) { DB::rollBack(); return redirect() ->back() ->withInput() ->with('error', 'Erro ao tentar cadastrar o proprietário: ' . $e->getMessage()); } } public function edit(Ambulante $ambulante) { return view('admin.cadastroDeAmbulantes.ambulantes.forms', [ "paises" => $this->__paises(), "ocupacoes" => $this->__ocupacoes(), "ambulante" => $ambulante, "proprietario" => $ambulante->proprietario, "endereco" => $ambulante->proprietario->endereco, ]); } public function update(ProprietariosRequest $request, Ambulante $ambulante) { $request->validated(); try { if (!$this->validaCPF($request->cpfProprietario)) { return redirect() ->back() ->withInput() ->with('error', 'O número de CPF informado não é válido!'); } DB::beginTransaction(); $fullnameProp = $this->resolveFullname($request->fullNameProprietario); $proprietario = $ambulante->proprietario; $endereco = $ambulante->proprietario->endereco; $proprietario->fill([ "firstName" => $fullnameProp['firstName'], "lastName" => $fullnameProp['lastName'], "phoneNumber" => $request->phoneNumberProprietario, "email" => $request->emailProprietario, "photo" => $this->getPathImageUserField($request, 'photoProprietario', $proprietario), ]); $proprietario->save(); $endereco->fill([ 'user_id' => Auth::id(), 'owner_id' => $proprietario->id, 'domicilio' => $request->domicilioProprietario, 'cep' => $request->cepProprietario, 'logradouro' => $request->logradouroProprietario, 'numero' => $request->numeroProprietario, 'complemento' => $request->complementoProprietario ?? null, 'cidade' => $request->cidadeProprietario, 'bairro' => $request->bairroProprietario, 'uf' => $request->ufProprietario, 'latitude' => $request->latitudeProprietario, 'longitude' => $request->longitudeProprietario, 'comprovante' => $this->getProofOfResidence($request, "comprovanteProprietario", $endereco), ]); $endereco->save(); DB::commit(); return redirect() ->route('admin.cadastroDeAmbulantes.ambulantes.representanteLegalIndex', $ambulante->id) ->with('success', 'Proprietário cadastrado com sucesso!'); } catch (\Exception $e) { DB::rollBack(); return redirect() ->back() ->withInput() ->with('error', 'Erro ao tentar cadastrar o proprietário: ' . $e->getMessage()); } } }
| ver. 1.4 |
Github
|
.
| PHP 8.3.28 | Generation time: 0.02 |
proxy
|
phpinfo
|
Settings