aceleradora-TW / aceleradora-TW/e-acelera-back

[MVP2] feat: api: suporte a api para recuperar o status dos exercícios na listagem de exercícios

Aberta
#8 0 comentários 0 reações 3 responsáveis Atribuída a @mylenaverspeelt Ver no GitHub
Linguagem predominante
TypeScript
Estrelas
2
Forks
4
Métricas de merge de PRs
Nenhum PR com merge em 30d

Descrição

## Objetivo
Desenvolver um endpoint que permita recuperar o status de todos os exercícios de um usuário autenticado. Os status disponíveis para os exercícios são: "NotStarted", "InProgress" e "Completed". Esse endpoint ajudará a listar todos os exercícios com o status correspondente ao carregar a página.

## Dependências
- https://github.com/aceleradora-TW/e-acelera-back/issues/5

## Detalhes do Endpoint
- Método: GET
- URL: `/:topicId/status`
- Headers: Token de autenticação do usuário.

## Tarefas
1. **Adicionar métodos no Controller e no Service do Exercise**
- Criar um método no controlador responsável por gerenciar a requisição e responder com o status de cada exercício armazenado no banco de dados.
- Criar um método no serviço responsável pela consulta e retorno das informações no banco de dados

2. **Implementar o Fluxo de Requisição:**
- Verificar o token de autenticação do usuário para confirmar que ele está autenticado.
- Consultar o banco de dados para obter a lista de exercícios e o status atual de cada um para esse usuário.

## Comportamento Esperado
- **Resposta bem-sucedida:**
- Quando a requisição é feita por um usuário autenticado, o sistema deve retornar uma lista com o status de cada exercício em formato JSON.
- Exemplo de resposta:
```json
[
{ "exercise_id": 1, "status": "não iniciado" },
{ "exercise_id": 2, "status": "em andamento" },
{ "exercise_id": 3, "status": "concluído" }
]
```

- **Tratamento de Erros:**
- Usuário não autenticado: Retornar uma resposta `403 Forbidden` com uma mensagem apropriada.
- Erro interno: Caso haja falha ao acessar o banco de dados, retornar um erro `500 Internal Server Error` com uma mensagem adequada.

Guia de contribuição

Nenhum guia de contribuição indexado para este repositório

Avaliação

Esta issue ainda não foi avaliada.

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.