Tienda online de Tortas
💕 Landing page con hero vistoso (frontend)
💕 Catálogo de productos
💕 Promociones con descuento
💕 Creación de pedidos
Para instalar las herramientas necesarias:
Acceder al sitio oficial de Node.js, descargar e instalar.
- Node JS v16 o superior - Entorno de Ejecución de Servidor para JavaScript
Accede a la carpeta del proyecto y ejecuta el siguiente comando:
npm install
Serán instaladas las siguientes dependencias:
🛠️ CORS v2.8.5
npm run build
npm run start
GET /api/promotions
GET /api/products
POST /api/orders
Request:
{
"items": [
{
"productId": 1,
"quantity": 12
}
]
}
POST /api/promotions
Request:
[
{
"id": 1,
"name": "Jueves de feria",
"discount": 50,
"isActive": true
},
{
"id": 2,
"name": "Martes en familia",
"discount": 20,
"isActive": true
}
]
POST /api/products
Request:
[
{
"name": "Tarta mousse de chocolate y baileys",
"price": 12,
"image": "https://images.pexels.com/photos/4110003/pexels-photo-4110003.jpeg?auto=compress&cs=tinysrgb&w=1260&h=750&dpr=1"
},
{
"name": "Tarta de fresas con crema de vainilla",
"price": 6,
"image": "https://images.pexels.com/photos/12846488/pexels-photo-12846488.jpeg?auto=compress&cs=tinysrgb&w=1260&h=750&dpr=1"
},
{
"name": "Cheesecake de Nutella",
"price": 19,
"image": "https://images.pexels.com/photos/15031855/pexels-photo-15031855.jpeg?auto=compress&cs=tinysrgb&w=600"
}
]
npm run test
✅ Crea nuevos productos
✅ Crea nuevas promociones
✅ Asocia promociones a productos
✅ Si producto tiene varias promociones, indica la promoción con mayor descuento
✅ Si promociones asociadas a un producto tienen mismo descuento, selecciona la primera
✅ Si promoción desactivada esta asociada a un producto, no mostrar promoción
✅ Calcula precio de producto con descuento por cada promoción
✅ Crea nuevo pedido
💕 Emitir comprobante de pedido