poorlydefinedbehaviour / appizza Goto Github PK
View Code? Open in Web Editor NEWuiui
uiui
Criar um resolver para coupons.
A entity usada para coupons esta em Entities/Coupon
Como funciona a lógica dos coupons:
O administrador cria um coupon com um código customizado(Exemplo HELLOWORLD123
),
o cupom começa a ser valido a partir de uma data e deixa de ser a partir de outra.
O usuário usa o cupom na hora de fechar a compra.
No momento todos os coupons não tem uma limite de uso, as datas determinam se é valido.
Talvez seja legal adicionar um campo no banco com um limite de uso.
Exemplo:
O administrador cria um coupon HELLOWORLD123
com um limite de uso 10.
Após ser usado 10 vezes o coupon não pode mais ser usado.
O que esse resolver deve ter:
Mutations:
Queries:
Não esquecer de adicionar validação no que o user enviar(Checar como foi feito no resolver de Users).
Recomendo usar um middleware para bloquear as mutations para somente administradores.
Criar um resolver para products;
A entidade usada para products está na pasta Entities/Product
Mutations
Queries
Products
são as pizzas nesse caso, precisa criar as categorias e ai criar um product(a pizza) e relacionar ela com a categoria.
Criar um resolver para recuperação de senha.
Imaginei o fluxo de recuperação assim:
User faz uma mutation para um resolver que envia um email com um token
para ele.
O usuário abre o email, pega o token, coloca no app(Tela de recuperar senha).
User faz uma mutation(da tela de recuperar senha) enviando o token com a senha nova.
Backend da update no user com a senha nova se o token for valido e invalida o token após alterar a senha.
Precisa criar um tipo de token novo no enum TokenType
em Entities/Token
.
Layout: https://imgur.com/a/8DlNZhm (Pegar só o layout do login)
Layout: https://imgur.com/a/8DlNZhm (Pegar só tela de registro)
Fazer um worker que envia os emails de recuperação de senha.
A ideia é rodar o worker separado do server, o worker deve usar algum tipo de queue.
Pode criar uma pasta worker
na raiz do projeto e fazer la.
Se fizer desse jeito fica assim:
app/
server/
worker/
Ler a issue #22 para entender melhor o fluxo de recuperação de senha.
Como administrador do app quero ser capaz de:
Como usuário do app quero ser capaz de:
UI BONITO
Como administrador do app quero ser capaz de:
Como usuário do app quero ser capaz de:
Criar um resolver para categories.
A entity para categories esta na pasta Entities/Category
.
Fazer a validação dos dados nas mutations(A validação feita no resolver de Users pode ser usada como referência).
Cada produto estará relacionado com uma categoria.
Exemplo:
Criar uma categoria A
.
Criar um produto B
.
Produto B
está na categoria A
.
Assim é possível procurar todos os produtos(pizzas) por categoria.
Como administrador do app quero ser capaz de:
Como usuário do app quero ser capaz de:
Assim que tiver o layout, fazer uma tela onde o usuário pode ver as pizzas disponíveis.
Registrar Usuário
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.