<repo_name>GranaraMariaSilvia/backendCafeteria<file_sep>/src/routes/producto.routes.js
import { Router } from "express";
import productoControllers from "../controllers/producto.controllers";

const {
  getProductos,
  crearProducto,
  getUnProducto,
  deleteProducto,
  editarProducto,
} = productoControllers;

const router = Router();

router.route("/").get(getProductos).post(crearProducto);

router
  .route("/:id")
  .get(getUnProducto)
  .delete(deleteProducto)
  .put(editarProducto);

export default router;
<file_sep>/src/controllers/producto.controllers.js
const cafeteriaCtrl = {};
import Producto from "../models/producto";

cafeteriaCtrl.getUnProducto = async (req, res) => {
  try {
    console.log(req.params.id);
    const productoEncontrado = await Producto.findById(req.params.id);
    res.status(200).json(productoEncontrado);
  } catch (error) {
    console.log(error);
    res.status(500).json({ mensaje: "ocurrio un error" });
    next(error);
  }
};

cafeteriaCtrl.getProductos = async (req, res) => {
  try {
    const datos = await Producto.find(); //este metodo me trae todos los documentos
    res.status(200).json(datos);
  } catch (error) {
    console.log(error);
  }
};

cafeteriaCtrl.crearProducto = async (req, res) => {
  console.log(req.body);
  const { nombreProducto, precioProducto, categoria } = req.body;

  try {
    const productoNuevo = new Producto({
      nombreProducto: nombreProducto,
      precioProducto: precioProducto,
      categoria: categoria,
    });
    await productoNuevo.save();
    res.status(201).json({ mensaje: "llego el producto" });
  } catch (error) {
    console.log(error);
  }
};

cafeteriaCtrl.deleteProducto = async (req, res) => {
  try {
    await Producto.findByIdAndDelete(req.params.id);
    res.status(200).json({ mensaje: "se elimino un producto" });
  } catch (error) {
    console.log(error);
    res.status(500).json({ mensaje: "ocurrio un error" });
    next(error);
  }
};

cafeteriaCtrl.editarProducto = async (req, res) => {
  try {
    await Producto.findByIdAndUpdate(req.params.id, req.body);
    res.status(200).json({ mensaje: "El producto se actualizo" });
  } catch (error) {
    console.log(error);
    res.status(500).json({ mensaje: "ocurrio un error" });
    next(error);
  }
};

export default cafeteriaCtrl;
<file_sep>/README.md
# Backend de Cafeteria

## Comandos necesarios
ejecutar estos <b>comandos</b> para clonar y poner en funcionamiento el proyecto




```javascript
git clone URL

npm install

npm run dev
```
## Autores
1. <NAME>

## Version de Backend 
Backend Cafeteria 1.0 



<file_sep>/src/dataBase.js
import mongoose from 'mongoose';

const url ='mongodb+srv://mariasilvia:buscandoaromeo@cluster0.ne88u.mongodb.net/test'; //cadena de conexion base de datos

mongoose.connect(url,{
    useNewUrlParser: true,
  useUnifiedTopology: true,
  useCreateIndex: true,
  useFindAndModify:true
})

const conexion = mongoose.connection;

conexion.once('open', ()=>{
    console.log('Base de Datos CONECTADA')
})