Skip to content

Adiciona validação para rejeitar valores negativos no campo Capital S…#1087

Open
henriquercz wants to merge 1 commit intoportabilis:2.10from
henriquercz:fix/validacao-capital-social-negativo
Open

Adiciona validação para rejeitar valores negativos no campo Capital S…#1087
henriquercz wants to merge 1 commit intoportabilis:2.10from
henriquercz:fix/validacao-capital-social-negativo

Conversation

@henriquercz
Copy link
Copy Markdown
Contributor

DESCRIÇÃO:

Este pull request resolve a issue #1074 adicionando validação para rejeitar valores negativos no campo "Capital Social" no cadastro de Pessoa Jurídica.

Problema:
O sistema permitia o cadastro de valores negativos no campo "Capital Social", o que é funcionalmente incorreto, pois um capital social não pode ser negativo. Isso gera inconsistências graves em cálculos financeiros.

Solução Implementada:

  • Criado método privado reutilizável validaValorPositivo() para validações de valores numéricos positivos
  • Adicionada validação que verifica se o campo "Capital Social" contém apenas valores positivos ou zero
  • Aceita vírgula (,) e ponto (.) como separadores de decimal/milhar
  • A validação é aplicada tanto na criação quanto na edição de Pessoa Jurídica
  • Exibe mensagem de erro clara ao usuário: "O campo Capital Social não pode conter valores negativos."
  • Mantém os campos do formulário visíveis quando há erro de validação

Alterações:

  • Arquivo: [ieducar/intranet/empresas_cad.php]/i-educar/ieducar/intranet/empresas_cad.php:0:0-0:0)
  • Novo método privado: validaValorPositivo()
  • Métodos modificados: Novo() e Editar()
  • Total: 24 linhas adicionadas (método reutilizável + validações)

Testes Realizados:

  • ✅ Tentativa de cadastro com capital social "-1000,00" - bloqueado com mensagem de erro
  • ✅ Tentativa de cadastro com capital social "-100" - bloqueado com mensagem de erro
  • ✅ Cadastro com capital social "0,00" - permitido com sucesso
  • ✅ Cadastro com capital social "1000,00" - permitido com sucesso
  • ✅ Cadastro com capital social "1000.00" - permitido com sucesso
  • ✅ Edição de Pessoa Jurídica com capital social negativo - bloqueado com mensagem de erro
  • ✅ Edição de Pessoa Jurídica com capital social válido - permitido com sucesso

AMBIENTE:

  • Plataforma utilizada: Docker
  • Sistema operacional: Windows 10
  • Navegador: Chrome 141.0.7390.66
  • Versão do i-Educar: Desenvolvimento (branch 2.10)

…ocial (portabilis#1074)

- Cria método privado reutilizável validaValorPositivo()
- Valida se o campo Capital Social contém apenas valores positivos ou zero
- Aceita vírgula e ponto como separadores de decimal/milhar
- Aplica validação tanto na criação quanto na edição de Pessoa Jurídica
- Exibe mensagem de erro clara ao usuário
@sonarqubecloud
Copy link
Copy Markdown

sonarqubecloud bot commented Nov 3, 2025

return true;
}

$valorNumerico = (float) str_replace(search: [',', '.'], replace: ['.', ''], subject: $valor);
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nesse caso o replace pode estar incorreto, porque um valor como 1.234,56 irá se transformar em 123456, quando na verdade deveria se tornar: 1234.56.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants