PROC001 – Aplicar desconto/acréscimo
| Projeto/Sistema: GERENCIAMENTO DE PROJETOS |
Versão do Template: 1.2 |
| Processo: PROC001 – Aplicar desconto/acréscimo |
Versão do Documento: 1.0 |
| Responsável(eis): Jalile Cornachioni |
Data: 10/11/2025 |
1. Introdução
Definir o comportamento padrão para aplicação de desconto ou acréscimo durante o fluxo de pagamento unificado, considerando regras de interface, regras de negócio e impactos técnicos.
2. Processo (adicionar fluxograma exemplo)
-- Fluxograma PROC001 - Aplicar desconto/acréscimo --
|
Processo |
Envolvidos |
Dados de Entrada |
Dados de Saída |
| PROC001 - Aplicar desconto/acréscimo |
Frente de caixa / API Pagamento Unificado |
Valor total, tipo de ajuste, origem da ação |
Valor ajustado, log de alteração |
| PROC010- Excluir pagamento já lançado | Operador do caixa | Identificação do pagamento selecionado | Pagamento removido e saldo recalculado |
| PROC011 - Quitar Restante | Operador do caixa | Saldo pendente e forma de pagamento selecionada | Campo preenchido automaticamente com o valor restante |
| PROC012 - Finalizar Pagamento | Operador do caixa | Todos os pagamentos registrados e saldo zerado | Venda concluída e registros financeiros emitidos |
| PROC013 - Cancelar | Operador do caixa | Ação do usuário | Modal fechado sem registrar alterações |
Processos Relacionados
Especificação Funcional
PROC001 EXEMPLO:
Protótipo de Tela:
Descrição dos Campos:
|
Campo |
Tipo |
Tamanho |
Obrig. ? |
Máscara |
Observações |
|
Total da Compra |
Numérico |
10,2 |
Sim |
R$ |
Herdado da tela de origem. Não inclui frete, impostos, descontos e acréscimos. Valor confiável enviado pela origem. Somente leitura. |
|
Descontos |
Numérico |
10,2 |
Não |
R$ |
Valor monetário. Campo editável. Não aceita sinal + ou -. Não pode exceder o Total da Compra. Pode zerar o total líquido. |
|
Acréscimos |
Numérico |
10,2 |
Não |
R$ |
Valor monetário. Campo editável. Não aceita sinal + ou -. Respeita limite máximo configurado, se existir. |
|
Total Líquido da Venda |
Numérico |
10,2 |
Sim |
R$ |
Calculado: Total da Compra - Desconto + Acréscimo. Somente leitura. |
Regras de Interface:
- O sistema deve exibir Total da Compra e Total Líquido como somente leitura.
- O sistema deve apresentar Desconto e Acréscimo como campos monetários sempre habilitados para digitação.
- O sistema não deve permitir caracteres inválidos, letras, símbolos, ou sinais negativo/positivo.
- O sistema deve recalcular automaticamente o Total Líquido a cada alteração de Desconto ou Acréscimo.
- O sistema deve aceitar valor zero em qualquer um dos campos.
- O sistema deve impedir que Desconto seja maior que o Total da Compra.
- O sistema deve impedir que Acréscimo ultrapasse o valor máximo configurado, quando existir.
- O sistema deve seguir a regra global de arredondamento vigente no sistema (quando configurada).
- O sistema não deve exibir frete, impostos ou outros totais no modal.
Regras de Negócio:
- O sistema deve receber Total da Compra, Desconto e Acréscimo da tela de origem.
- O sistema deve confiar integralmente nos valores enviados pela origem sem recálculo interno desses componentes.
- O sistema deve considerar que o campo Desconto exibido no Pagamento Unificado representa somente o valor monetário de desconto enviado pela tela de origem, não deve carregar valores percentuais.
- O sistema deve considerar que o campo Acréscimo exibido no Pagamento Unificado representa o valor monetário de acréscimos enviado pela origem, incluindo acréscimos derivados de frete, seguro, impostos ou outros itens adicionais.
- O sistema deve assumir que qualquer valor de frete, seguro, impostos ou taxas já foi previamente aplicado e consolidado no Total da Compra ou permanecerá restrito à tela origem conforme regra dessa tela.
- O sistema não deve recalcular nem agregar frete, impostos, seguros, taxas ou outros valores ao Desconto ou ao Acréscimo dentro do modal.
- Caso o usuário precise alterar Frete ou Impostos, ele deve cancelar o Pagamento Unificado, ajustar esses valores na tela de origem e, só então, reabrir o modal.
- O sistema não deve permitir que os campos de desconto e acréscimo sejam carregados com valores nulos ou zerados quando a tela anterior já possuir totais definidos.
- O sistema deve permitir que o usuário altere Descontos e Acréscimos diretamente na tela de pagamento.
- O sistema deve validar que Desconto não excede o Total da Compra.
- O sistema deve validar Acréscimo conforme configuração de limite máximo.
- O sistema deve impedir Total Líquido negativo.
- O sistema deve recalcular exclusivamente o Total Líquido, usando apenas: Total Líquido = Total da Compra - Desconto + Acréscimo.
- Se o pagamento for finalizado, os valores atualizados de Desconto e Acréscimo devem retornar à tela de origem.
- Se o pagamento for cancelado, nenhum valor deve retornar; a tela de origem deve permanecer inalterada.
- O sistema não deve permitir divergência entre o valor final exibido no pagamento unificado e o valor final exibido na tela anterior após retorno.
- O sistema deve registrar log seguindo o padrão global já existente, incluindo: usuário, horário, valores antes/depois e origem da ação.
Regras para mensagens e validações
- Desconto maior que o total → "O desconto não pode exceder o valor da venda." Bloquear salvamento.
- Acréscimo acima do limite → "O acréscimo informado ultrapassa o limite permitido." Impedir continuação.
- Valor não numérico → "Digite apenas valores numéricos." Limpar entrada e manter foco.
- Total Líquido negativo → "O valor final não pode ser negativo." Reverter último valor digitado.
Questões Técnicas:
-
Composição de valores
-
total_compra: vem 100% da origem. Não inclui frete, impostos, seguros, descontos, acréscimos. -
descontoeacrescimo: monetários. Sem sinal. Percentual não existe no modal. -
total_liquido = total_compra - desconto + acrescimo.
-
-
Limites
-
desconto ≤ total_compra. Pode zerar. Não pode exceder. -
acrescimo ≤ acrescimo_maximoquando existir. -
total_liquido ≥ 0.
-
©SOFTEN SISTEMAS 2025



No Comments