Skip to content
 
 

Latest commit

 

History

5 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Ejecutar la app

npm install --force
npm install -g @nestjs/cli
npm init
npm start
# (Se ejecuta en http://localhost:3000/api/)

Documentación de la API REST

Endpoints

Productos

Crear un Producto

  • URL: /api/products
  • Método: POST
  • Descripción: Crea un nuevo producto.
  • Request Body:
{
	"name": "Nombre del Producto",
	"description": "Descripción del Producto",
	"price": 100.00,
	"stock": 50,
	"category": "Categoría del Producto"
}
  • Response:
{
	"id": 1,
	"name": "Nombre del Producto",
	"description": "Descripción del Producto",
	"price": 100.00,
	"stock": 50,
	"category": "Categoría del Producto",
	"createdAt": "2024-06-01T00:00:00Z"
}

Obtener Lista de Productos

  • URL: /api/products
  • Método: GET
  • Descripción: Obtiene una lista de todos los productos.
  • Response:
[
	{
		"id": 1,
		"name": "Nombre del Producto",
		"description": "Descripción del Producto",
		"price": 100.00,
		"stock": 50,
		"category": "Categoría del Producto",
		"createdAt": "2024-06-01T00:00:00Z"
	},
	...
]

Actualizar un Producto

  • URL: /api/products/{id}
  • Método: PUT
  • Descripción: Actualiza la información de un producto existente.
  • Request Body:
{
	"name": "Nombre del Producto Actualizado",
	"description": "Descripción del Producto Actualizada",
	"price": 120.00,
	"stock": 60,
	"category": "Nueva Categoría"
}
  • Response:
{
	"id": 1,
	"name": "Nombre del Producto Actualizado",
	"description": "Descripción del Producto Actualizada",
	"price": 120.00,
	"stock": 60,
	"category": "Nueva Categoría",
	"updatedAt": "2024-06-01T01:00:00Z"
}

Eliminar un Producto

  • URL: /api/products/{id}
  • Método: DELETE
  • Descripción: Elimina un producto existente.
  • Response:
{
	"message": "Producto eliminado exitosamente."
}

Inventario

Actualizar Inventario

  • URL: /api/inventory
  • Método: PUT
  • Descripción: Actualiza la cantidad de inventario de un producto.
  • Request Body:
{
	"productId": 1,
	"quantity": 100
}
  • Response:
{
	"productId": 1,
	"quantity": 100,
	"updatedAt": "2024-06-01T01:30:00Z"
}

Clientes

Crear un Cliente

  • URL: /api/customers
  • Método: POST
  • Descripción: Crea un nuevo cliente.
  • Request Body:
{
	"name": "Nombre del Cliente",
	"email": "cliente@example.com",
	"address": "Dirección del Cliente"
}
  • Response:
{
	"id": 1,
	"name": "Nombre del Cliente",
	"email": "cliente@example.com",
	"address": "Dirección del Cliente",
	"createdAt": "2024-06-01T02:00:00Z"
}

Pedidos

Crear un Pedido

  • URL: /api/orders
  • Método: POST
  • Descripción: Crea un nuevo pedido.
  • Request Body:
{
	"customerId": 1,
	"products": [
		{
			"productId": 1,
			"quantity": 2
		},
		{
			"productId": 2,
			"quantity": 1
		}
	],
	"total": 300.00
}
  • Response:
{
	"id": 1,
	"customerId": 1,
	"products": [
		{
			"productId": 1,
			"quantity": 2
		},
		{
			"productId": 2,
			"quantity": 1
		}
	],
	"total": 300.00,
	"createdAt": "2024-06-01T03:00:00Z"
}

Usuarios/Tiendas

Crear una Tienda

  • URL: /api/stores
  • Método: POST
  • Descripción: Crea una nueva tienda.
  • Request Body:
{
	"name": "Nombre de la Tienda",
	"ownerId": 1
}
  • Response:
{
	"id": 1,
	"name": "Nombre de la Tienda",
	"ownerId": 1,
	"createdAt": "2024-06-01T04:00:00Z"
}

Diagramas de Flujos

Flujo de Productos

	graph TD
	A[Crear Producto] --> B[Obtener Lista de Productos]
	B --> C[Actualizar Producto]
	C --> D[Eliminar Producto]
Loading

Flujo de Inventario

	graph TD
	A[Actualizar Inventario]
Loading

Flujo de Clientes

	graph TD
	A[Crear Cliente]
Loading

Flujo de Pedidos

	graph TD
	A[Crear Pedido]
Loading

Flujo de Usuarios/Tiendas

	graph TD
	A[Crear Tienda]
Loading

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages