📋 Regras de Negócio - ecosif-querys
📋 Visão Geral
Este documento descreve as principais regras de negócio implementadas no serviço ecosif-querys.
🔒 Regras de Acesso
Validação de Permissões
Regra: Todo endpoint deve validar se o usuário tem acesso à empresa/filial solicitada.
Validação:
- Verifica acesso direto em UserCompanyBranch
- Verifica grupos do usuário
- Retorna 403 Forbidden se sem acesso
💰 Regras de Consulta de Saldo
Formato de Período
- Regra: Períodos devem estar no formato
MM/YYYY - Validação: Regex
^(0[1-9]|1[0-2])/[0-9]{4}$ - Exemplo: "01/2025", "11/2024"
Range de Períodos
- Regra: Período inicial não pode ser maior que período final
- Validação: Comparação numérica após conversão
Cálculo de Saldo Inicial
- Regra: Se
anomesini=baseYearMonthda empresa: usa saldo inicial deAccountbalance - Regra: Caso contrário: usa saldo acumulado do mês anterior em
MonthlyAccountBalance
📋 Regras de Razão Geral
Filtro de Dias
- Regra: Se
dayStartedayEnd= 0: retorna todos os dias do mês - Regra: Se informados: filtra apenas no intervalo especificado
- Validação:
dayStartnão pode ser maior quedayEnd
Ano e Mês
- Regra: Ano deve estar entre 2000 e 9999
- Regra: Mês deve estar entre 1 e 12
📊 Regras de Plano de Contas
Ordenação
- Regra: Ordenação deve ser numérica, não alfabética
- Implementação: Usa
ChartOfAccountsComparator - Exemplo: "1.1" < "1.2" < "1.10" (não "1.10" < "1.2")
Configuração
- Regra: Plano de contas deve estar configurado em
CompanyOptions - Validação: Verifica se
chartOfAccountnão está vazio
⚠️ Validações Implementadas
- ✅ Formato de período (MM/YYYY)
- ✅ Range de períodos
- ✅ Range de dias
- ✅ Ano/mês válidos
- ✅ Permissões de acesso
- ✅ Empresa/filial existentes
- ✅ Plano de contas configurado
Última Atualização: 2025-11-27