diff --git a/src/main/java/com/naturalmente/Naturalmente/controladores/ControladorProductos.java b/src/main/java/com/naturalmente/Naturalmente/controladores/ControladorProductos.java new file mode 100644 index 0000000..d1efd49 --- /dev/null +++ b/src/main/java/com/naturalmente/Naturalmente/controladores/ControladorProductos.java @@ -0,0 +1,72 @@ +package com.naturalmente.Naturalmente.controladores; + +import com.naturalmente.Naturalmente.modelos.Producto; +import com.naturalmente.Naturalmente.repositorios.RepositorioProductos; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import java.util.List; + +@CrossOrigin +@RestController +@RequestMapping("/productos") +public class ControladorProductos { + + @Autowired + RepositorioProductos miRepositorioProductos; + + public ControladorProductos(RepositorioProductos miRepositorioProductos) { + this.miRepositorioProductos = miRepositorioProductos; + } + + public ControladorProductos() { + } + + @GetMapping("") + public List index(){ + return this.miRepositorioProductos.findAll(); + } + @GetMapping("{id}") + public Producto show(@PathVariable String id){ + Producto productoActual=this.miRepositorioProductos + .findById(id) + .orElse(null); + return productoActual; + } + @PostMapping + public Producto create(@RequestBody Producto infoProducto){ + return this.miRepositorioProductos.save(infoProducto); + } + @PutMapping("{id}") + public Producto update(@PathVariable String id,@RequestBody Producto infoProducto){ + Producto encontrado=this.miRepositorioProductos + .findById(id) + .orElse(null); + if (encontrado!=null){ + encontrado.setNombre(infoProducto.getNombre()); + encontrado.setTipo(infoProducto.getTipo()); + encontrado.setExistencia(infoProducto.getExistencia()); + encontrado.setValor(infoProducto.getValor()); + return this.miRepositorioProductos.save(encontrado); + }else{ + return null; + } + } + @DeleteMapping("{id}") + public void delete(@PathVariable String id){ + Producto encontrado=this.miRepositorioProductos + .findById(id) + .orElse(null); + if (encontrado!=null){ + this.miRepositorioProductos.delete(encontrado); + } + } + + public RepositorioProductos getMiRepositorioProductos() { + return miRepositorioProductos; + } + + public void setMiRepositorioProductos(RepositorioProductos miRepositorioProductos) { + this.miRepositorioProductos = miRepositorioProductos; + } +} diff --git a/src/main/java/com/naturalmente/Naturalmente/controladores/ControladorTiendas.java b/src/main/java/com/naturalmente/Naturalmente/controladores/ControladorTiendas.java index 91c3a01..d08d7d9 100644 --- a/src/main/java/com/naturalmente/Naturalmente/controladores/ControladorTiendas.java +++ b/src/main/java/com/naturalmente/Naturalmente/controladores/ControladorTiendas.java @@ -1,11 +1,73 @@ package com.naturalmente.Naturalmente.controladores; -import org.springframework.web.bind.annotation.CrossOrigin; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import com.naturalmente.Naturalmente.modelos.Producto; +import com.naturalmente.Naturalmente.modelos.Tienda; +import com.naturalmente.Naturalmente.repositorios.RepositorioTiendas; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import java.util.List; @CrossOrigin @RestController @RequestMapping("/tiendas") public class ControladorTiendas { + + @Autowired + RepositorioTiendas miRepositorioTiendas; + + // JEste es un comentario + public ControladorTiendas(RepositorioTiendas miRepositorioTiendas) { + this.miRepositorioTiendas = miRepositorioTiendas; + } + + public ControladorTiendas() { + } + + @GetMapping("") + public List index(){ + return this.miRepositorioTiendas.findAll(); + } + @GetMapping("{id}") + public Tienda show(@PathVariable String id){ + Tienda tiendaActual = this.miRepositorioTiendas + .findById(id) + .orElse(null); + return tiendaActual; + } + @PostMapping + public Tienda create(@RequestBody Tienda infoTienda ){ + return this.miRepositorioTiendas.save(infoTienda); + } + @PutMapping("{id}") + public Tienda update(@PathVariable String id,@RequestBody Tienda infoTienda){ + Tienda encontrado=this.miRepositorioTiendas + .findById(id) + .orElse(null); + if (encontrado!=null){ + encontrado.setNombre(infoTienda.getNombre()); + encontrado.setNIT(infoTienda.getNIT()); + encontrado.setDireccion(infoTienda.getNombre()); + return this.miRepositorioTiendas.save(encontrado); + }else{ + return null; + } + } + @DeleteMapping("{id}") + public void delete(@PathVariable String id){ + Tienda encontrado=this.miRepositorioTiendas + .findById(id) + .orElse(null); + if (encontrado!=null){ + this.miRepositorioTiendas.delete(encontrado); + } + } + + public RepositorioTiendas getMiRepositorioTiendas() { + return miRepositorioTiendas; + } + + public void setMiRepositorioTiendas(RepositorioTiendas miRepositorioTiendas) { + this.miRepositorioTiendas = miRepositorioTiendas; + } } diff --git a/src/main/java/com/naturalmente/Naturalmente/modelos/Compra.java b/src/main/java/com/naturalmente/Naturalmente/modelos/Compra.java deleted file mode 100644 index 35b069d..0000000 --- a/src/main/java/com/naturalmente/Naturalmente/modelos/Compra.java +++ /dev/null @@ -1,70 +0,0 @@ -package com.naturalmente.Naturalmente.modelos; - - -import lombok.Data; -import org.springframework.data.annotation.Id; -import org.springframework.data.mongodb.core.mapping.Document; - -@Data -@Document() -public class Compra { - - @Id - String _id; - String nombre; - String tipo; - int existencias; - int precio; - - public Compra(String _id, String nombre, String tipo, int existencias, int precio) { - this._id = _id; - this.nombre = nombre; - this.tipo = tipo; - this.existencias = existencias; - this.precio = precio; - } - - public Compra() { - - } - - public String get_id() { - return _id; - } - - public void set_id(String _id) { - this._id = _id; - } - - public String getNombre() { - return nombre; - } - - public void setNombre(String nombre) { - this.nombre = nombre; - } - - public String getTipo() { - return tipo; - } - - public void setTipo(String tipo) { - this.tipo = tipo; - } - - public int getExistencias() { - return existencias; - } - - public void setExistencias(int existencias) { - this.existencias = existencias; - } - - public int getPrecio() { - return precio; - } - - public void setPrecio(int precio) { - this.precio = precio; - } -} diff --git a/src/main/java/com/naturalmente/Naturalmente/modelos/Producto.java b/src/main/java/com/naturalmente/Naturalmente/modelos/Producto.java index 6e577fa..f597fdc 100644 --- a/src/main/java/com/naturalmente/Naturalmente/modelos/Producto.java +++ b/src/main/java/com/naturalmente/Naturalmente/modelos/Producto.java @@ -1,42 +1,49 @@ package com.naturalmente.Naturalmente.modelos; -import lombok.Data; import org.springframework.data.annotation.Id; -import org.springframework.data.mongodb.core.mapping.Document; -@Data -@Document() public class Producto { @Id String _id; - String fecha; + String nombre; + String tipo; + int existencia; int valor; - public Producto(String _id, String fecha, int valor) { + public Producto(String _id, String nombre, String tipo, int existencia, int valor) { this._id = _id; - this.fecha = fecha; + this.nombre = nombre; + this.tipo = tipo; + this.existencia = existencia; this.valor = valor; } public Producto() { + } + public String getNombre() { + return nombre; } - public String get_id() { - return _id; + public void setNombre(String nombre) { + this.nombre = nombre; } - public void set_id(String _id) { - this._id = _id; + public String getTipo() { + return tipo; + } + + public void setTipo(String tipo) { + this.tipo = tipo; } - public String getFecha() { - return fecha; + public int getExistencia() { + return existencia; } - public void setFecha(String fecha) { - this.fecha = fecha; + public void setExistencia(int existencia) { + this.existencia = existencia; } public int getValor() { diff --git a/src/main/java/com/naturalmente/Naturalmente/repositorios/RepositorioProductos.java b/src/main/java/com/naturalmente/Naturalmente/repositorios/RepositorioProductos.java new file mode 100644 index 0000000..dfe5e59 --- /dev/null +++ b/src/main/java/com/naturalmente/Naturalmente/repositorios/RepositorioProductos.java @@ -0,0 +1,7 @@ +package com.naturalmente.Naturalmente.repositorios; + +import com.naturalmente.Naturalmente.modelos.Producto; +import org.springframework.data.mongodb.repository.MongoRepository; + +public interface RepositorioProductos extends MongoRepository { +} diff --git a/src/main/java/com/naturalmente/Naturalmente/repositorios/RepositorioTiendas.java b/src/main/java/com/naturalmente/Naturalmente/repositorios/RepositorioTiendas.java index 2691ab0..02bda30 100644 --- a/src/main/java/com/naturalmente/Naturalmente/repositorios/RepositorioTiendas.java +++ b/src/main/java/com/naturalmente/Naturalmente/repositorios/RepositorioTiendas.java @@ -1,4 +1,7 @@ package com.naturalmente.Naturalmente.repositorios; -public interface RepositorioTiendas { +import com.naturalmente.Naturalmente.modelos.Tienda; +import org.springframework.data.mongodb.repository.MongoRepository; + +public interface RepositorioTiendas extends MongoRepository { }