- Afim de apresentar o projeto em funcionamento e falar um pouco mais da abordagem e tecnologias utilizadas, disponibilizo um link para um vídeo demonstrativo disponível em meu canal no youtube (Click no Gif abaixo 👇🏿):
- Simular o Fluxo de pagamento para uma venda de um Produto/Serviço;
- O objetivo é demonstrar meus conhecimentos em C#, Entity FrameWork, Banco de Dados. Além de, boas práticas e princípios como SOLID, DRY, OOP e padrões como MVC, REST, entre outros.
- Construir uma API REST utilizando .Net Core 6.0;
- A API deve expor uma rota com documentação swagger (http://.../api-docs).
- A API deve possuir 3 operações:
- Registrar venda: Recebe os dados do vendedor + itens vendidos. Registra venda com status "Aguardando pagamento";
- Buscar venda: Busca pelo Id da venda;
- Atualizar venda: Permite que seja atualizado o status da venda para os possíveis status:
Pagamento aprovado
|Enviado para transportadora
|Entregue
|Cancelada
.
- Uma venda contém informação sobre o vendedor que a efetivou, data, identificador do pedido e os itens que foram vendidos;
- O vendedor deve possuir id, cpf, nome, e-mail e telefone;
- A inclusão de uma venda deve possuir pelo menos 1 item;
- A atualização de status deve permitir somente as seguintes transições:
- De:
Aguardando pagamento
Para:Pagamento Aprovado
- De:
Aguardando pagamento
Para:Cancelada
- De:
Pagamento Aprovado
Para:Enviado para Transportadora
- De:
Pagamento Aprovado
Para:Cancelada
- De:
Enviado para Transportador
. Para:Entregue
- De:
- A API não tem mecanismos de autenticação/autorização;
- A API utiliza um Banco de Dados "em memória".