Se trata de una aplicación para gestionar el recetario (recetas de cocina) por parte de los admin y creación de menús por parte de los clientes del restaurante "BLOSSH" (Floridablanca 148)
* Admin full CRUD recetario
(primer admin creado por nosotros)
CRUD recipes
Logueado y token
CRUD all users
GET Orders
Visualización de las órdenes que entran por parte de los usuarios
UPDATE stage Orders
CRUD orders
Done
El chef | Admin debe cambiar el estado de las órdenes a fin de que el cliente pueda recoger su pedido
* Users full CRUD Order
(creado a partir del menu)
CRUD menu
No logueado
No POST order
Post Order
Logueado
CRUD recipes ingredients
CRUD menu
CRUD recipes ingredients
No POST order
View stage Order
Recetas para menús
CRUD total
*
*
Logueados
CRUD users sólo en ingredientes
Logueados y no logueados
ADMIN
USERS
Menús preparación
*
*
CRUD users sólo en ingredientes
Logueados y no logueados
USERS
Creación de platos
Los campos vienen dados por recipes. Pueden ser creados tanto por usuarios logueados como por usuarios registrados, pero sólo estos últimos pueden enviar (POST) la orden
Presentación Dan
*
Que los admin sean capaces de gestionar la BBDD de las recetas , mientras que los usuarios logueados puedan hacer sus pedidos a traves del menú.
Contador/ es para poder determinar el num de platos ordenados
Historial de pedidos
USER STORIES
TRELLO
Metodología
AUTENTICACIÓN
TOKEN
USERS
ENDPOINTS
CRUDS
UNIQUE
BBDD DEFINICIÓN
FINDONEBYEMAIL
ROLES
SWAGGER
curl -X 'POST' \
'http://localhost:3000/api/v1/recipes/create' \
-H 'accept: */*' \
-H 'Content-Type: application/json' \{
"recipeId": "f815be8b-cd77-4419-a61c-a519cf38b795",
"ingredients": [
"baby spinach leaves",
"pear",
"slided parmigiano-reggiano cheese",
"honey mustard sauce",
"guacamole",
"radish"
],
"extrasAvailable": [],
"allergens": [],
"recipeName": "baby spinach salad",
"description": "a fresh, light, balanced salad",
"photo": "image/png",
"type": "salad",
"instructions": "add the two cups of spinachs ina a bol. Chopped the pear´s half piece into cubes. Add them to the bowl among the honesy mustard sauce and the parmeggiano chez. Mixed gently. Take an empty dish and place in the middle the guacamole´s scoop. Add the content of the bol. On top of the salad add the fried onion, the slices of pear and radish and a last touch of sliced parmeggiano chez ",
"prepTime": 5,
"cookTime": 8,
"totalTime": 13,
"onMenu": true,
"id": "61b33ee120c6794e10d8ef90"
}isAdmin: boolean
async validate(payload: JwtPayload): Promise<User> {
const { email } = payload;
const user = await this.userRepository.findOne({
where: { email },
});
console.log(user);
if (!user) {
throw new UnauthorizedException('User not found');
}
delete user.password;
console.log(user);
return user;
}import { Injectable } from '@nestjs/common';
import { CreateOrderDto } from './dto/create-order.dto';
import { UpdateOrderDto } from './dto/update-order.dto';
@Injectable()
export class OrdersService {
create(createOrderDto: CreateOrderDto) {
return 'This action adds a new order';
}
findAll() {
return `This action returns all orders`;
}
findOne(id: number) {
return `This action returns a #${id} order`;
}
update(id: number, updateOrderDto: UpdateOrderDto) {
return `This action updates a #${id} order`;
}
remove(id: number) {
return `This action removes a #${id} order`;
}
}
Construcción BBDD
Data model
Checks ok
Funcionamiento end-points
Roles
Orders
Menu