En delilah resto encontrarás la forma de interacción entre el cliente y el administrador con los productos y pedidos.
El proyecto se encuentra realizado en node.js
- Express: npm i express
- Body Parser: npm i bodyParser
- jwt: npm i jsonwebtoken
- Sequelize: npm i sequelize
- mysql2: npm i mysql2
- bcrypt: npm i bcrypt
- multer: npm i multer
- path: npm i path
Para realizar la conexión a la base de datos debes llenar la información correspondiente que se encuntra en /db/varibles
node index.js
Con Postam se podrán realizar los siguientes EndPoints (También lo puedes consultar en Swagger):
Para las rutas donde el usuario necesita autenticación autorización, se debe pasar el token como se visualiza en la imagén.
- CRUD de productos
- Consultar los usuarios GET /usuarios
- Consultar todos los pedidos GET /pedidos
- Agregar un pedido POST /pedidos
- Agregar un producto al pedido POST /pedidos/:id/productos
- Ver todos los productos de un pedido GET /pedidos/:id
- Actualizar el estado de un pedido PATCH /pedidos/:id
- Eliminar el pedido DELETE /pedidos/:id
Agregar un usuario
POST /registro
http://localhost:3000/registro
-----
Logueo
POST /login
http://localhost:3000/login
-----
El administrador podrá consultar todos los usuarios
Los Clientes solo tienen acceso a su información personal.
GET /usuarios
http://localhost:3000/usuarios
Agregar un producto, para esto se debe en postaman agregar la información en form-data
POST /productos
http://localhost:3000/productos
-----
Consultar todos los productos
GET /productos
http://localhost:3000/productos
-----
Consultar un producto específico
GET /productos/:id
http://localhost:3000/productos/4
-----
Actualizar producto
PUT /productos/:id
http://localhost:3000/productos/4
-----
Eliminar producto
DELETE /productos/:id
http://localhost:3000/productos/4
Consultar todos los pedidos El admin puede ver todos los pedidos pero el usuario solo su info personal.
GET /pedidos/
http://localhost:3000/pedidos
Agregar un pedido
POST /pedidos/
http://localhost:3000/pedidos
-----
Agregar un producto al pedido
POST /pedidos/:id/productos
http://localhost:3000/pedidos/3/productos
-----
Ver todos los productos de un pedido
Si el rol es admin puede ver cualquiera, si es cliente solo sus pedidos
GET /pedidos/:id
http://localhost:3000/pedidos/3
-----
Actualizar el estado de un pedido. ROLES
PATCH /pedidos/:id/productos
http://localhost:3000/pedidos/1?estado=3
-----
Eliminar producto
DELETE /pedidos/:id
http://localhost:3000/pedidos/4