Mudanças entre as edições de "Bonificação com Saldo Fixo"
(Criou página com '= Funcionalidade Bonificação com Saldo Fixo = === Necessidade === É preciso que um vendedor possa tirar pedidos de bonificação para clientes consumindo um saldo especí...') |
|||
Linha 1: | Linha 1: | ||
− | + | == Necessidade == | |
− | |||
− | |||
É preciso que um vendedor possa tirar pedidos de bonificação para clientes consumindo um saldo específico para bonificação de cada cliente. Quando esse saldo for consumido por completo o sistema não permitirá a tiragem de pedidos de bonificação para o cliente cujo saldo esteja zerado. | É preciso que um vendedor possa tirar pedidos de bonificação para clientes consumindo um saldo específico para bonificação de cada cliente. Quando esse saldo for consumido por completo o sistema não permitirá a tiragem de pedidos de bonificação para o cliente cujo saldo esteja zerado. | ||
− | + | === Regras de Negócio === | |
*[RN1] - Saldo de Bonificação: Como forma de incentivar a compra por parte de novos clientes é dado ao cliente um valor para ser usado como bonificação. Então deve ser possível cadastrar um saldo de bonificação para o cliente que poderá ser utilizado pelo vendedor. Esse saldo não será incrementado, apenas será decrescido conforme for sendo efetuado a tiragem de pedidos de bonificação; | *[RN1] - Saldo de Bonificação: Como forma de incentivar a compra por parte de novos clientes é dado ao cliente um valor para ser usado como bonificação. Então deve ser possível cadastrar um saldo de bonificação para o cliente que poderá ser utilizado pelo vendedor. Esse saldo não será incrementado, apenas será decrescido conforme for sendo efetuado a tiragem de pedidos de bonificação; | ||
Linha 11: | Linha 9: | ||
*[RN3] - Utilização do Saldo: o vendedor poderá utilizar o saldo de bonificação enquanto houver saldo, ou seja, o sistema validará somente se existe saldo disponível para a bonificação. | *[RN3] - Utilização do Saldo: o vendedor poderá utilizar o saldo de bonificação enquanto houver saldo, ou seja, o sistema validará somente se existe saldo disponível para a bonificação. | ||
− | + | == Solução Declarativa == | |
Será preciso criar uma estrutura de saldo de bonificação por cliente. Esse saldo será consumido de acordo com que os pedidos de bonificações forem utilizados. Para deixar a solução mais genérica e flexível pode-se vincular a tabela do saldo o tipo de movimento pedido em vez de forçar o saldo somente para bonificação. | Será preciso criar uma estrutura de saldo de bonificação por cliente. Esse saldo será consumido de acordo com que os pedidos de bonificações forem utilizados. Para deixar a solução mais genérica e flexível pode-se vincular a tabela do saldo o tipo de movimento pedido em vez de forçar o saldo somente para bonificação. | ||
Linha 19: | Linha 17: | ||
Será preciso também criar no portal um crud para que o saldo de bonificação seja mantido pelo próprio usuário do sistema, não necessitando assim de trabalho da integração e passando a gerência para o usuário. | Será preciso também criar no portal um crud para que o saldo de bonificação seja mantido pelo próprio usuário do sistema, não necessitando assim de trabalho da integração e passando a gerência para o usuário. | ||
− | + | == Pré Detalhes da Solução Imperativa == | |
*TABELA | *TABELA | ||
Linha 29: | Linha 27: | ||
#SALDO DECIMAL(18,6) NOT NULL | #SALDO DECIMAL(18,6) NOT NULL | ||
− | + | == Cenários == | |
− | + | === Happy Day === | |
# O usuário acessa o Sistema Geosales Mobile e efetua login; | # O usuário acessa o Sistema Geosales Mobile e efetua login; | ||
Linha 45: | Linha 43: | ||
# Fim do caso de uso; | # Fim do caso de uso; | ||
− | + | === Fluxos Alternativos === | |
* [A1] - Saldo de Bonificação Insuficiente | * [A1] - Saldo de Bonificação Insuficiente |
Edição das 19h44min de 21 de setembro de 2016
Necessidade
É preciso que um vendedor possa tirar pedidos de bonificação para clientes consumindo um saldo específico para bonificação de cada cliente. Quando esse saldo for consumido por completo o sistema não permitirá a tiragem de pedidos de bonificação para o cliente cujo saldo esteja zerado.
Regras de Negócio
- [RN1] - Saldo de Bonificação: Como forma de incentivar a compra por parte de novos clientes é dado ao cliente um valor para ser usado como bonificação. Então deve ser possível cadastrar um saldo de bonificação para o cliente que poderá ser utilizado pelo vendedor. Esse saldo não será incrementado, apenas será decrescido conforme for sendo efetuado a tiragem de pedidos de bonificação;
- [RN2] - Validação: Caso o cliente não tenha saldo disponível para bonificar o pedido que está sendo efetuado, o sistema não poderá salvar o pedido. Essa regra se aplicará a todos os pedidos de bonificação;
- [RN3] - Utilização do Saldo: o vendedor poderá utilizar o saldo de bonificação enquanto houver saldo, ou seja, o sistema validará somente se existe saldo disponível para a bonificação.
Solução Declarativa
Será preciso criar uma estrutura de saldo de bonificação por cliente. Esse saldo será consumido de acordo com que os pedidos de bonificações forem utilizados. Para deixar a solução mais genérica e flexível pode-se vincular a tabela do saldo o tipo de movimento pedido em vez de forçar o saldo somente para bonificação.
Deve-se criar um listener para fazer a validação do saldo no momento de salvar o pedido. Caso não aja saldo suficiente deve-se mostra um alerta e impedir que o pedido seja salvo (Os fluxos explicam melhor essa situação).
Será preciso também criar no portal um crud para que o saldo de bonificação seja mantido pelo próprio usuário do sistema, não necessitando assim de trabalho da integração e passando a gerência para o usuário.
Pré Detalhes da Solução Imperativa
- TABELA
SALDO_BONI_CLIENTE
- CAMPOS
- CD_CLIENTE INT PK
- CD_TIPO_MOVIMENTO_PEDIDO INT PK
- SALDO DECIMAL(18,6) NOT NULL
Cenários
Happy Day
- O usuário acessa o Sistema Geosales Mobile e efetua login;
- O usuário escolhe o cliente que deseja efetuar uma bonificação e acessa a tela de pedido, insere as informações necessárias do cabeçalho do pedido;
- O Usuário seleciona a opção de cadastro de itens do pedido;
- O Usuário acessa a aba de produtos;
- O Sistema Geosales Mobile mostra os produtos cadastrados para o cliente escolhido.
- O Usuário escolhe os produtos desejados e os insere no pedido [RE1].
- O Usuário verifica se todos os dados do pedido estão corretos e tudo estando correto ele clica em finalizar o pedido.
- O Sistema Geosales Mobile | Sistema Geosales Portal verifica se o cliente apresenta saldo de bonificação maior ou igual que o valor do pedido [RN1] [RN2] [RN3] [A1];
- O Sistema Geosales Mobile | Sistema Geosales Portal debita do saldo de bonificação do cliente o valor do pedido;
- O Sistema Geosales Mobile | Sistema Geosales Portal salva o pedido;
- Fim do caso de uso;
Fluxos Alternativos
- [A1] - Saldo de Bonificação Insuficiente
- Este fluxo alternativo se inicia quando o Sistema Geosales Mobile | Sistema Geosales Portal verifica que o cliente não apresenta saldo de bonificação suficiente para a tiragem do pedido;
- O Sistema Geosales Mobile | Sistema Geosales Portal retorna uma mensagem informando ao usuário que não existe saldo de bonificação suficiente para que o pedido seja salvo;
- O usuário remove os itens do pedido para que o valor do pedido atinja o valor permitido pelo saldo de bonificação que o cliente ao qual ele está tirando pedido tem;
- O Sistema Geosales Mobile | Sistema Geosales Portal verifica se o cliente apresenta saldo de bonificação maior ou igual que o valor do pedido [RN1] [RN2] [RN3] [A1];
- O Sistema Geosales Mobile | Sistema Geosales Portal debita do saldo de bonificação do cliente o valor do pedido;
- O Sistema Geosales Mobile | Sistema Geosales Portal salva o pedido;
- Fim do caso de uso;
- [A2] - Edição de pedidos
- Este fluxo alternativo se inicia quando o Usuário decide alterar alguma informação de um pedido já salvo que não foi exportado para o ERP;
- O Usuário acessa a tela de listagem de pedidos, seleciona um pedido de bonificação não exportado e clica em editar pedido;
- O Sistema Geosales Mobile | Sistema Geosales Portal identifica que é uma edição e recupera o saldo que tinha sido utilizado pelo pedido que estava sendo salvo;
- O usuário faz as alterações no pedido e clica em salvar;
- O Sistema Geosales Mobile | Sistema Geosales Portal verifica se o cliente apresenta saldo de bonificação maior ou igual que o valor do pedido [RN1] [RN2] [RN3] [A1];
- O Sistema Geosales Mobile | Sistema Geosales Portal debita do saldo de bonificação do cliente o valor do pedido;
- O Sistema Geosales Mobile | Sistema Geosales Portal salva o pedido;
- Fim do caso de uso;
- [A3] - Exclusão de pedidos
- Este fluxo alternativo se inicia quando o Usuário decide excluir um pedido já salvo que não foi exportado para o ERP;
- O Usuário acessa a tela de listagem de pedidos, seleciona um pedido de bonificação e clica em excluir o pedido;
- O Sistema Geosales Mobile | Sistema Geosales Portal pede uma confirmação para a exclusão do pedido;
- O Usuário confirma a exclusão do pedido;
- O Sistema Geosales Mobile | Sistema Geosales Portal exclui o pedido da base de dados e atualiza o saldo de bonificação para aquele cliente somando o valor do pedido excluído ao saldo;
- Fim do caso de uso;