use of sic.modelo.BusquedaProductoCriteria in project sic by belluccifranco.
the class ProductoController method calcularValorStock.
@GetMapping("/productos/valor-stock/criteria")
@ResponseStatus(HttpStatus.OK)
public double calcularValorStock(@RequestParam long idEmpresa, @RequestParam(required = false) String codigo, @RequestParam(required = false) String descripcion, @RequestParam(required = false) Long idRubro, @RequestParam(required = false) Long idProveedor, @RequestParam(required = false) Integer cantidadRegistros, @RequestParam(required = false) boolean soloFantantes) {
Rubro rubro = null;
if (idRubro != null) {
rubro = rubroService.getRubroPorId(idRubro);
}
Proveedor proveedor = null;
if (idProveedor != null) {
proveedor = proveedorService.getProveedorPorId(idProveedor);
}
if (cantidadRegistros == null) {
cantidadRegistros = 0;
}
BusquedaProductoCriteria criteria = BusquedaProductoCriteria.builder().buscarPorCodigo((codigo != null)).codigo(codigo).buscarPorDescripcion(descripcion != null).descripcion(descripcion).buscarPorRubro(rubro != null).rubro(rubro).buscarPorProveedor(proveedor != null).proveedor(proveedor).empresa(empresaService.getEmpresaPorId(idEmpresa)).cantRegistros(cantidadRegistros).listarSoloFaltantes(soloFantantes).build();
return productoService.calcularValorStock(criteria);
}
use of sic.modelo.BusquedaProductoCriteria in project sic by belluccifranco.
the class ProductoController method getReporteListaDePrecios.
@GetMapping("/productos/reporte/criteria")
public ResponseEntity<byte[]> getReporteListaDePrecios(@RequestParam(value = "idEmpresa") long idEmpresa, @RequestParam(value = "codigo", required = false) String codigo, @RequestParam(value = "descripcion", required = false) String descripcion, @RequestParam(value = "idRubro", required = false) Long idRubro, @RequestParam(value = "idProveedor", required = false) Long idProveedor, @RequestParam(value = "soloFaltantes", required = false) boolean soloFantantes) {
Rubro rubro = null;
if (idRubro != null) {
rubro = rubroService.getRubroPorId(idRubro);
}
Proveedor proveedor = null;
if (idProveedor != null) {
proveedor = proveedorService.getProveedorPorId(idProveedor);
}
BusquedaProductoCriteria criteria = BusquedaProductoCriteria.builder().buscarPorCodigo((codigo != null)).codigo(codigo).buscarPorDescripcion(descripcion != null).descripcion(descripcion).buscarPorRubro(idRubro != null).rubro(rubro).buscarPorProveedor(proveedor != null).proveedor(proveedor).empresa(empresaService.getEmpresaPorId(idEmpresa)).cantRegistros(0).listarSoloFaltantes(soloFantantes).pageable(null).build();
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_PDF);
headers.add("content-disposition", "inline; filename=ListaPrecios.pdf");
headers.setCacheControl("must-revalidate, post-check=0, pre-check=0");
byte[] reportePDF = productoService.getReporteListaDePreciosPorEmpresa(productoService.buscarProductos(criteria).getContent(), idEmpresa);
return new ResponseEntity<>(reportePDF, headers, HttpStatus.OK);
}
use of sic.modelo.BusquedaProductoCriteria in project sic by belluccifranco.
the class ProductoController method buscarProductos.
@GetMapping("/productos/busqueda/criteria")
@ResponseStatus(HttpStatus.OK)
public Page<Producto> buscarProductos(@RequestParam long idEmpresa, @RequestParam(required = false) String codigo, @RequestParam(required = false) String descripcion, @RequestParam(required = false) Long idRubro, @RequestParam(required = false) Long idProveedor, @RequestParam(required = false) boolean soloFantantes, @RequestParam(required = false) Integer pagina, @RequestParam(required = false) Integer tamanio) {
Rubro rubro = null;
if (idRubro != null) {
rubro = rubroService.getRubroPorId(idRubro);
}
Proveedor proveedor = null;
if (idProveedor != null) {
proveedor = proveedorService.getProveedorPorId(idProveedor);
}
if (tamanio == null || tamanio <= 0) {
tamanio = TAMANIO_PAGINA_DEFAULT;
}
if (pagina == null || pagina < 0) {
pagina = 0;
}
Pageable pageable = new PageRequest(pagina, tamanio, new Sort(Sort.Direction.ASC, "descripcion"));
BusquedaProductoCriteria criteria = BusquedaProductoCriteria.builder().buscarPorCodigo((codigo != null && !codigo.isEmpty())).codigo(codigo).buscarPorDescripcion(descripcion != null && !descripcion.isEmpty()).descripcion(descripcion).buscarPorRubro(rubro != null).rubro(rubro).buscarPorProveedor(proveedor != null).proveedor(proveedor).empresa(empresaService.getEmpresaPorId(idEmpresa)).listarSoloFaltantes(soloFantantes).pageable(pageable).build();
return productoService.buscarProductos(criteria);
}
Aggregations