github blob

GITHUB BLOG

Api Tarefas Desafio Rocktseat

bruno-valerohá 3 mesesmain

Desafio Rocketseat: API para realizar o CRUD de tasks (tarefas)

Confira a página informando requisitos do desafio em https://efficient-sloth-d85.notion.site/Desafio-01-2d48608f47644519a408b438b52d913f

Requisitos Funcionais

  • Deve ser posssível a Criação de uma task
  • Deve ser posssível a Listagem de todas as tasks
  • Deve ser posssível a Atualização de uma task pelo id
  • Deve ser posssível a Remoção de uma task pelo id
  • Deve ser posssível Marcar pelo id uma task como completa
  • Deve ser posssível a Importação de tasks em massa por um arquivo CSV

Regras de Negócio

  • A estrutura das tasks deve ser formada por:

    • id - Identificador único de cada task
    • title - Título da task
    • description - Descrição detalhada da task
    • completed_at - Data de quando a task foi concluída. O valor inicial deve ser null
    • created_at - Data de quando a task foi criada.
    • updated_at - Deve ser sempre alterado para a data de quando a task foi atualizada.
  • A aplicação deve conter as seguintes rotas:

    • POST - /tasks
    • GET - /tasks
    • PUT - /tasks/:id
    • DELETE - /tasks/:id
    • PATCH - /tasks/:id/complete

Estrutura DDD (Domain Driven Design):

Domains

  • Task

    • Application

      • Use Cases

        • create-task
        • list-tasks
        • update-task
        • delete-task
        • mark-task-as-completed
      • Repositories

        • abstract
          • tasks-repository
        • real
          • prisma-tasks-repository
    • Enterprise

      • entity
        • task