API REST para gestión de ventas, clientes, productos e inventario desarrollada con Spring Boot.
- Java 17
- Spring Boot 3.4.0
- PostgreSQL (Supabase)
- Spring Data JPA
- Swagger/OpenAPI
GET /clientes
Retorna lista de todos los clientes registrados.
GET /clientes/{id}
Retorna un cliente específico por ID.
POST /clientes
Crea un nuevo cliente.
Body:
{
"nombre": "Juan Pérez",
"email": "juan@email.com",
"celular": "3001234567"
}PUT /clientes/{id}
Actualiza un cliente existente.
Body:
{
"nombre": "Juan Pérez",
"email": "juan@email.com",
"celular": "3001234567"
}DELETE /clientes/{id}
Elimina un cliente por ID.
GET /productos
Retorna lista de todos los productos.
POST /productos
Crea un nuevo producto.
Body:
{
"nombre": "Laptop HP",
"precio": 1500.00,
"stock": 10,
"descripcion": "Laptop HP Core i5"
}PUT /productos/{id}
Actualiza un producto existente.
Body:
{
"nombre": "Laptop HP",
"precio": 1500.00,
"stock": 10,
"descripcion": "Laptop HP Core i5"
}PUT /productos/{id}/stock?cantidad={cantidad}
Actualiza el stock de un producto.
GET /ventas
Retorna lista de todas las ventas.
GET /ventas/{id}
Retorna una venta específica por ID.
POST /ventas
Crea una nueva venta.
Body:
{
"clienteId": 1,
"estado": "PENDIENTE",
"detalles": [
{
"productoId": 1,
"cantidad": 2,
"precioUnitario": 1500.00
}
]
}GET /detalles-venta/venta/{ventaId}
Retorna los detalles de una venta específica.
PUT /detalles-venta/{id}/cantidad?cantidad={cantidad}
Actualiza la cantidad de un detalle de venta.
Todas las respuestas siguen este formato:
{
"message": "Success/Error message",
"status": "HTTP Status",
"data": {
// Datos de la respuesta
}
}- Clonar el repositorio
- Configurar base de datos en
application.properties - Ejecutar
mvn spring-boot:run - Acceder a Swagger: http://localhost:8080/swagger-ui.html
Para más detalles sobre los endpoints y modelos, consultar la documentación de Swagger una vez iniciada la aplicación.