Giter VIP home page Giter VIP logo

desafio-consulta-vendas's Introduction

desafio-consulta-vendas

DESAFIO: Consulta vendas

Você deverá forkar o projeto abaixo e implementar as consultas como se pede a seguir.

Projeto:

Trata-se de um sistema de vendas (Sale) e vendedores (Seller). Cada venda está para um vendedor, e um vendedor pode ter várias vendas.

Sale Sales * ------------- 1 seller Seller
id: Long id: Long
visited: Integer name: String
deals: Integer email: String
amount: Double phone: String
date: Date

Consultas:

GET /sales/summary
Deverá retornar o sumário de vendas por vendedor dos últimos 12 meses.

GET /sales/summary?minDate=2022-01-01&maxDate=2022-06-30
Deverá retornar o sumário de vendas por vendedor do período informado.

```json
[
    {
        "sellerName": "Anakin",
        "total": 110571.0
    },
    {
        "sellerName": "Logan",
        "total": 83587.0
    },
    {
        "sellerName": "Loki Odinson",
        "total": 150597.0
    },
    {
        "sellerName": "Padme",
        "total": 135902.0
    },
    {
        "sellerName": "Thor Odinson",
        "total": 144896.0
    }
]
```

GET /sales/report
Deverá retornar o relatório de vendas dos últimos 12 meses.

GET /sales/report?minDate=2022-05-01&maxDate=2022-05-31&name=odinson
Deverá retornar o relatório de vendas do período/vendedor informados:

```
{
    "content": [
        {
            "id": 9,
            "date": "2022-05-22",
            "amount": 19476.0,
            "sellerName": "Loki Odinson"
        },
        {
            "id": 10,
            "date": "2022-05-18",
            "amount": 20530.0,
            "sellerName": "Thor Odinson"
        },
        {
            "id": 12,
            "date": "2022-05-06",
            "amount": 21753.0,
            "sellerName": "Loki Odinson"
        }
    ],
    ...
}
```

Critérios de correção:

Mínimo para aprovação: 4 de 4

  • Sumário de vendas por vendedor passando argumentos minDate e maxDate deve retornar os dados previstos no enunciado (eliminatório)
  • Sumário de vendas por vendedor sem passar argumentos deve retornar os dados dos últimos 12 meses (eliminatório)
  • Relatório de vendas sem passar argumentos deve retornar vendas dos últimos 12 meses (eliminatório)
  • Relatório de vendas passando argumentos minDate e maxDate deve retornar os dados previstos no enunciado (eliminatório)

Competências avaliadas:

  • Realização de casos de uso
  • Criação de endpoints de API Rest com parâmetros de consulta opcionais
  • Implementação de consultas em banco de dados relacional com Spring Data JPA

desafio-consulta-vendas's People

Contributors

jciterceros avatar acenelio avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.