Mudanças entre as edições de "Reserva de estoque"
Linha 53: | Linha 53: | ||
====Assertivas==== | ====Assertivas==== | ||
# O item A é adicionado ao pedido X | # O item A é adicionado ao pedido X | ||
− | # O estoque de A deve | + | # O estoque de A deve ficar com o valor de 15 |
# O item A é adicionado ao pedido Y | # O item A é adicionado ao pedido Y | ||
− | # O estoque de A deve ser | + | # O estoque de A deve ficar com o valor de 0 |
+ | |||
+ | |||
+ | ===Cenário de concorrência de estoque onde falta estoque=== | ||
+ | João insere um item A, que tem estoque, no pedido e José insere em outro pedido o item A, que não tem estoque | ||
+ | |||
+ | ====Dado==== | ||
+ | # Vendedores: João, José | ||
+ | # Item: A | ||
+ | # Estoque de A: 25 | ||
+ | # Pedido X de João | ||
+ | # Pedido Y de José | ||
+ | |||
+ | ====Operação==== | ||
+ | # Na lupa de produto de João é escolhido o item A e escolhida a quantidade 20 | ||
+ | # Na lupa de produto de José é escolhido o item A e escolhida a quantidade 15 | ||
+ | |||
+ | ====Assertivas==== | ||
+ | # O item A é adicionado ao pedido X | ||
+ | # O estoque de A deve ficar com o valor de 5 | ||
+ | # O item A não pode ser adicionado ao pedido Y e uma exceção de falta de estoque deve ser lançada |
Edição das 14h15min de 6 de janeiro de 2017
Necessidade
Para o usuário ao editar/criar um pedido as quantidades deverão ser abatidas do saldo de estoque a medida que o vendedor insere os itens e que essas alterações tornem-se visíveis para todos os outros vendedores.
Pré Detalhes da Solução Imperativa
O usuário cria um pedido, preenche todos os campos do cabeçalho do pedido e faz a busca por um produto. Nesse momento a grid exibe as quantidades atuais de cada produto que satisfaça a busca. Ao inserir o produto como um item do pedido ele dispara uma chamada que irá verificar se o saldo de estoque é suficiente medindo todas as quantidades do estoque e em caso positivo ele irá criar uma movimentação para essa transação mesmo antes de salvar o pedido. Essa transação deverá ser armazenada para que outro vendedor tenha controle da posição atual de estoque.
Cenários
Cenário feliz
João insere um item que tem estoque no pedido
Dado
- Vendedor: João
- Item: A
- Estoque de A: 20
Operação
- Na lupa de produto é escolhido o item A e escolhida a quantidade 10
Assertivas
- O item A deve ser adicionado no pedido
- O estoque de A deve ficar com o valor de 10
Cenário em que o produto não tem estoque
João insere um item que não tem estoque no pedido
Dado
- Vendedor: João
- Item: A
- Estoque de A: 6
Operação
- Na lupa de produto é escolhido o item A e escolhida a quantidade 10
Assertivas
- O item A não deve ser adicionado no pedido e uma exceção de falta de estoque para o produto deve ser lançada
- O estoque de A deve permanecer com o valor de 6
Cenário de concorrência de estoque
João insere um item A, que tem estoque, no pedido e José insere em outro pedido o item A, que tem estoque
Dado
- Vendedores: João, José
- Item: A
- Estoque de A: 25
- Pedido X de João
- Pedido Y de José
Operação
- Na lupa de produto de João é escolhido o item A e escolhida a quantidade 10
- Na lupa de produto de José é escolhido o item A e escolhida a quantidade 15
Assertivas
- O item A é adicionado ao pedido X
- O estoque de A deve ficar com o valor de 15
- O item A é adicionado ao pedido Y
- O estoque de A deve ficar com o valor de 0
Cenário de concorrência de estoque onde falta estoque
João insere um item A, que tem estoque, no pedido e José insere em outro pedido o item A, que não tem estoque
Dado
- Vendedores: João, José
- Item: A
- Estoque de A: 25
- Pedido X de João
- Pedido Y de José
Operação
- Na lupa de produto de João é escolhido o item A e escolhida a quantidade 20
- Na lupa de produto de José é escolhido o item A e escolhida a quantidade 15
Assertivas
- O item A é adicionado ao pedido X
- O estoque de A deve ficar com o valor de 5
- O item A não pode ser adicionado ao pedido Y e uma exceção de falta de estoque deve ser lançada