dexquiz's People
dexquiz's Issues
Perguntas ainda não respondidas por usuário
Contexto: Eu como usuário vou participar do evento 3 dias seguidos, e todos os dias pretendo fazer a trilha de .Net
O que deve acontecer: Gerar perguntas diferentes das já respondidas pelo usuário até esgotar as possibilidades
Salvar imagens na Azure e salvar url no banco
Ao cadastrar uma pergunta pode ser que exista uma imagem, hoje cadastramos a imagem manualmente e inserimos a URL, porém o ideal seria mandar o stream da imagem e salvar no blob storage da azure e no banco de dados a url da imagem.
Endpoint para obter as trilhas já com ranking
Criar endpoint de Ranking por Data
Adicionar data no ranking, e no endpoint retornar ranking por trilha/data
Funções administrativas na api
- Verificar o cadastro/atualizações de trilhas e questões para perfil administrador
- Verificar se o ranking para perfil administrador está se comportando da maneira esperada
Obs: Está story está relacionada a 129, verificar se a api atual fornece tudo o que a story 129 espera.
Criar testes unitários - QuestionService
SaveAnsweredQuestionAsync endpoint
This endpoint needs to be refactored, nowadays there are a lot of ifs conditions and we are not able to make a rollback.
Example:
- await _questionService.SaveAnsweredQuestionAsync(answeredQuestionEntity);
- await _rankingService.UpdateRankingAfterUserAnswerAsync(answeredQuestionEntity);
If something wrong happens on _rankingService.UpdateRankingAfterUserAnswerAsync, we are not able to make a rollback, because SaveAnsweredQuestionAsync has already done a commit into the database.
We need to create a new method on QuestionService called "ProcessQuestionAnswer" or something similar, this method will save an answer into the database and will update the ranking for this question track, after that, it will make a commit to the database;
Tratar mensagens de erro interno
Ao invés de retornar mensagens de erro detalhadas em caso de erro interno do servidor, retornar mensagem genérica.
Ef Core para Sql Server
No final do ano passado foi feita uma atualização do EF para usarmos Postgres, porém decidimos voltar para o Sql Server por ser mais barato na azure e ser uma ferramenta Microsoft.
Talvez voltar alguns commits resolva essa task.
Start time ao recuperar perguntas
Verificar se salvamos o start time do usuário ao iniciar uma trilha.
Retornar o start time toda vez que o usuário recuperar uma nova pergunta
Eventos
Criar estrutura para cadastro de "Eventos"
Criar testes unitários - TrackService
Criar endpoint para recuperar senha
Hoje não é possível recuperar a senha do usuário, precisa ser feito na api, a forma de confirmação pode ser o envio de um e-mail
Criar testes unitários - AuthenticationService
Refactor RankingService e RankingController
Hoje existem 3 tipos de ranking, usuário comum, usuário adm e ranking geral, hoje isso é feito com switch cases e if's, o ideal seria refatorar utilizando uma factory ou strategy por exemplo.
Criar testes unitários - UserService
Criar endpoint com UserInfo
Um endpoint de GET User que eu acesse com o token apenas no header, sem parametros, e me retorne os dados do usuario logado, pra tela de perfil
Cadastrar perguntas no banco de dados
Inserir perguntas e trilhas no banco de dados dos seguites documentos no drive
Perguntas do devcamp do ano passado: https://docs.google.com/spreadsheets/d/1LdZDuDHqgbRWmgYbeW7CFzI8pnsTqqpFJI_l0p33P-k/edit?usp=sharing
Perguntas de várias trilhas: https://docs.google.com/spreadsheets/d/1I_Z40l5YyWCU_L9HWdd6c3ab9H03SgprNUms8rCu-BM/edit?usp=sharing
Perguntas utilizadas no TDC 2020: https://docs.google.com/spreadsheets/d/1cGlKOu4zz57h4E6qa2dmxWkDCl-YpgtsFdGeEvJaBbw/edit?usp=sharing
A inserção em homologação pode ser de dados fakes, já em produção pode ser utilizado um robo que lê a planilha, um script sql ou o endpoint de cadastro de perguntas da api
Criar testes unitários - RankingService
Ambiente homologação/Produção
Liberar ambientes de homologação e produção na azure
Criar testes unitários - API Validations
Páginas Adm Blazor
Essa story pode ser quebrada em pequenas tasks.
É necessário criar as páginas de adm, seguem abaixo:
-
- Página para cadastro de pergunta
-
- Página para cadastro de trilha
-
- Página para escolher quais trilhas estarão ativas
-
- Página para ver ranking geral e ranking por trilha filtrados por dia
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.