- pgAdmin
- IntelliJ IDEA IDE
- Ejecutar las consultas sql de los archivos BD/schema y DB/data en pgAdmin para crear y poblar la base de datos
- Agregar el plugin MapStruct al IDE desde el siguiente link: https://plugins.jetbrains.com/plugin/10036-mapstruct-support
- Abrir el proyecto con el archivo build.gradle desde el IDE
- Correr el proyecto
- Obtener productos: GET http://localhost:5000/easy-market/api/products/all
- Obtener producto por id: GET http://localhost:5000/easy-market/api/products/{id}
- Guardar producto: POST http://localhost:5000/easy-market/api/products
Ejemplo de Body:
{
"name": "Palta",
"categoryId": 1,
"price": 20.0,
"stock": 100,
"active": true
}
- Borrar producto por id: DELETE http://localhost:5000/easy-market/api/products/{id}
- Obtener compras: GET http://localhost:5000/easy-market/api/purchases/all
- Obtener compra por id: GET http://localhost:5000/easy-market/api/purchases/{id}
- Obtener compra por id del cliente: GET http://localhost:5000/easy-market/api/purchases/client/{id}
- Guardar compra: POST http://localhost:5000/easy-market/api/purchases
Ejemplo de body:
{
"clientId": "4546221",
"date": "1992-08-10T17:30:00",
"paymentMethod": "E",
"comment": "",
"state": "P",
"items": []
}
- Borrar compra por id: DELETE http://localhost:5000/easy-market/api/purchases/{id}
- Acceder a traves del siguiente link: http://localhost:5000/easy-market/api/swagger-ui.html
- La seguridad se maneja a través de JWT, para autenticarse se accede a la API de autorizacion a través de la siguiente ruta: http://localhost:5000/easy-market/api/auth/authenticate
junto con un Body:
{
"username": "*****",
"password": "*****"
}
Luego, se generará un token JWT que tendrá que ser usado en el header de cada petición http a las API's.
Si se desea autenticarse una única vez, también se puede llevar a cabo la autenticación haciendo click en el siguiente boton en la documentación swagger (http://localhost:5000/easy-market/api/swagger-ui.html):
Luego se mostrará el siguiente modal:
En el campo "Value" se ingresará la palabra "Bearer " mas el token de autenticación generado previamente, una vez hecho esto, se habilitarán todas las peticiones en esta sesión a través de la documentación swagger al dar click en el botón "Authorize".
- En desarrollo (90%)
- Dockerización