11.2 Criar tela de estatísticas, exibindo streaks e n° de posts salvos
Ao clicar no botão de estatísticas na tela de exercícios, o usuário deve ser direcionado para a tela de estatísticas, podendo ver o streak (dias seguidos fazendo exercícios), número de posts salvos pelo usuário, um gráfico indicando quantos exercícios de cada tipo foram feitos neste streak e um calendário do mês atual, indicando quais dias o usuário realizou exercícios e de que tipo.
Para buscar os streaks, a página deve buscar a informação via GET no endpoint /streaks
(inexistente no momento. Fazer mockado).
Para buscar as demais informações, a página deve fazer requisição GET para o back no endpoint /statistics
(desenvolvida na task #42 (closed)). A rota retornará os demais dados computados no seguinte formato de json:
{
Graph: {
interest1(nome do interesse): int (quantidade do interesse),
interest2: int,
interest3: int
},
Callendar: {
1(int, dia do mês): interest1 (nome do interesse realizado no dia. Caso mais de um, somente o primeiro encontrado),
2: interest1,
3: interest2,
.
.
.
31 (ou o ultimo dia do mes atual): interest3
},
SavedItems: int (numero de itens salvos. Posts + Biblioteca)
}
Para o gráfico, a página deve usar o componente desenvolvido na task #30, passando informações sobre cor e ícone a serem utilizados e quantidade de exercícios realizados para cada interesse.
Para o calendário, a página deve usar o componente desenvolvido na task #31 (closed), passando informações sobre a cor a ser utilizada para cada interesse e as datas que foram realizados. O calendário exibirá somente o mês atual, independente se estivermos no dia 1 ou 31.
DEFINIÇÃO DAS CORES: Estamos aguardando retorno das StakeHolders sobre como será feita a definição das cores. Assim que possível, atualizaremos aqui e por mensagem.
Critérios de Aceitação
A página de estatísticas deve:
- Exibir streak e numero de posts salvos;
- Exibir gráfico com quantidade de exercícios realizados em cada interesse no último streak;
- Exibir calendário com quais dias foram realizados exercícios e de categoria no mês atual;
- Receber informações dos exercícios pela rota desenvolvida na task #32.