File manager - Edit - /var/www/html/portal/app/Http/Requests/CadastroDeAmbulantes/DadosDoComercioRequest.php
Back
<?php namespace App\Http\Requests\CadastroDeAmbulantes; use Illuminate\Foundation\Http\FormRequest; use App\Models\Empresa; class DadosDoComercioRequest extends FormRequest { public function authorize(): bool { return true; } protected function prepareForValidation() { $this->merge([ 'cnpj' => $this->cnpj ? preg_replace('/\D/', '', $this->cnpj) : null, ]); } private function __geEmpresaId($cnpj) { $empresaId = Empresa::select("id")->where("cnpj", $cnpj)->first(); if (isset($empresaId->id)) { return $empresaId->id; } return null; } public function rules(): array { $rules = []; if ($this->boolean('checkComercioAmbulante')) { $empresaId = $this->__geEmpresaId($this->cnpj); $rules['razaoSocial'] = 'required|string|max:255'; $rules['nomeFantasia'] = 'required|string|max:255'; $rules['cnpj'] = 'required|string|unique:empresas,cnpj,' . $empresaId; $rules['numeroInscricaoMunicipal'] = 'required|numeric|unique:empresas,numeroInscricaoMunicipal,' . $empresaId; $rules['telefone'] = 'nullable|string|max:20'; $rules['celular'] = 'required|string|max:20'; $rules['email'] = 'required|email|max:100|unique:empresas,email,' . $empresaId; $rules['site'] = 'nullable|url|max:255'; $rules['anoAbertura'] = 'required|digits:4'; $rules['tipoComercio'] = 'required|string|max:255'; $rules['principalAtividade'] = 'required|string|max:5000'; $rules['situacaoLicenca'] = 'required|string|max:255'; $rules['numeroAutorizacao'] = 'required|string|max:255'; $rules['validadeAutorizacao'] = 'required|date'; $rules["cepDadosComercio"] = "required|string|max:10"; $rules["logradouroDadosComercio"] = "required|string|max:255"; $rules["numeroDadosComercio"] = "nullable|string|max:20"; $rules["complementoDadosComercio"] = "nullable|string|max:255"; $rules["bairroDadosComercio"] = "required|string|max:255"; $rules["cidadeDadosComercio"] = "required|string|max:255"; $rules["ufDadosComercio"] = "required|string|size:2"; $rules["comprovanteDadosComercio"] = "nullable|file|mimes:jpeg,jpg,png,gif,pdf|mimetypes:image/jpeg,image/png,image/gif,application/pdf|max:102400"; $rules["latitudeDadosComercio"] = 'nullable|numeric|between:-90,90'; $rules["longitudeDadosComercio"] = 'nullable|numeric|between:-180,180'; } return $rules; } public function messages(): array { return [ 'razaoSocial.required' => 'A razão social da empresa é obrigatória.', 'razaoSocial.string' => 'A razão social deve ser um texto válido.', 'razaoSocial.max' => 'A razão social não pode ultrapassar 255 caracteres.', 'nomeFantasia.required' => 'O nome fantasia é obrigatório.', 'nomeFantasia.string' => 'O nome fantasia deve ser um texto válido.', 'nomeFantasia.max' => 'O nome fantasia não pode ultrapassar 255 caracteres.', 'cnpj.required' => 'O CNPJ é obrigatório.', 'cnpj.unique' => 'Este CNPJ já está em uso no sistema.', 'numeroInscricaoMunicipal.numeric' => 'A inscrição municipal deve conter apenas números.', 'numeroInscricaoMunicipal.unique' => 'Este número de inscrição municipal já está em uso.', 'telefone.string' => 'O telefone da empresa deve ser válido.', 'telefone.max' => 'O telefone da empresa não pode ultrapassar 20 caracteres.', 'celular.required' => 'O celular da empresa deve ser válido.', 'celular.string' => 'O celular da empresa deve ser válido.', 'celular.max' => 'O celular da empresa não pode ultrapassar 20 caracteres.', 'email.required' => 'Informe um e-mail válido para a empresa.', 'email.email' => 'Informe um e-mail válido para a empresa.', 'email.unique' => 'Este e-mail de empresa já está em uso no sistema.', 'site.url' => 'O site da empresa deve ser uma URL válida.', 'site.max' => 'O site não pode ultrapassar 255 caracteres.', 'anoAbertura.required' => 'O ano de abertura é obrigatório.', 'anoAbertura.digits' => 'O ano de abertura deve ter 4 dígitos.', 'tipoComercio.required' => 'O tipo de comércio é obrigatório.', 'tipoComercio.string' => 'O tipo de comércio deve ser um texto válido.', 'tipoComercio.max' => 'O tipo de comércio não pode ultrapassar 255 caracteres.', 'principalAtividade.required' => 'A atividade principal é obrigatória.', 'principalAtividade.string' => 'A atividade principal deve ser um texto válido.', 'principalAtividade.max' => 'A atividade principal não pode ultrapassar 5000 caracteres.', 'situacaoLicenca.required' => 'A situação da licença é obrigatória.', 'situacaoLicenca.string' => 'A situação da licença deve ser um texto válido.', 'situacaoLicenca.max' => 'A situação da licença não pode ultrapassar 255 caracteres.', 'numeroAutorizacao.required' => 'O número da autorização deve ser um texto válido.', 'numeroAutorizacao.string' => 'O número da autorização deve ser um texto válido.', 'numeroAutorizacao.max' => 'O número da autorização não pode ultrapassar 255 caracteres.', 'validadeAutorizacao.required' => 'A validade da autorização é obrigatória.', 'validadeAutorizacao.date' => 'Informe uma data válida para a autorização.', 'cepDadosComercio.required' => 'O CEP é obrigatório.', 'cepDadosComercio.string' => 'O CEP deve ser um texto válido.', 'cepDadosComercio.max' => 'O CEP não pode ultrapassar 10 caracteres.', 'logradouroDadosComercio.required' => 'O logradouro é obrigatório.', 'logradouroDadosComercio.string' => 'O logradouro deve ser um texto válido.', 'logradouroDadosComercio.max' => 'O logradouro não pode ultrapassar 255 caracteres.', 'numeroDadosComercio.string' => 'O número deve ser um texto válido.', 'numeroDadosComercio.max' => 'O número não pode ultrapassar 20 caracteres.', 'complementoDadosComercio.string' => 'O complemento deve ser um texto válido.', 'complementoDadosComercio.max' => 'O complemento não pode ultrapassar 255 caracteres.', 'bairroDadosComercio.required' => 'O bairro é obrigatório.', 'bairroDadosComercio.string' => 'O bairro deve ser um texto válido.', 'bairroDadosComercio.max' => 'O bairro não pode ultrapassar 255 caracteres.', 'cidadeDadosComercio.required' => 'A cidade é obrigatória.', 'cidadeDadosComercio.string' => 'A cidade deve ser um texto válido.', 'cidadeDadosComercio.max' => 'A cidade não pode ultrapassar 255 caracteres.', 'ufDadosComercio.required' => 'O estado (UF) é obrigatório.', 'ufDadosComercio.string' => 'A UF deve ser um texto válido.', 'ufDadosComercio.size' => 'A UF deve conter exatamente 2 caracteres.', 'comprovanteDadosComercio.file' => 'O comprovante deve ser um arquivo válido.', 'comprovanteDadosComercio.mimes' => 'O comprovante deve estar nos formatos: jpeg, jpg, png, gif ou pdf.', 'comprovanteDadosComercio.mimetypes' => 'O comprovante deve estar nos formatos: jpeg, jpg, png, gif ou pdf.', 'comprovanteDadosComercio.max' => 'O comprovante não pode ultrapassar 100 MB.', ]; } }
| ver. 1.4 |
Github
|
.
| PHP 8.3.28 | Generation time: 0.02 |
proxy
|
phpinfo
|
Settings