// GET: api/Venta public IEnumerable <VentaDto> Get([FromUri] FiltroVenta filtro) { using (var session = Database.SessionFactory.OpenSession()) { var ventas = session.Query <Venta>(); if (filtro.IdCliente.HasValue) { ventas = ventas.Where(venta => venta.Cliente.Id == filtro.IdCliente); } if (filtro.IdProducto.HasValue) { ventas = ventas.Where(venta => venta.Items.Any(item => item.Producto.Id == filtro.IdProducto)); } return(ventas.Select(venta => new VentaDto { Id = venta.Id, IdCliente = venta.Cliente.Id, Items = venta.Items.Select(i => new ItemDto { IdProducto = i.Producto.Id, NombreProducto = i.Producto.Nombre, Cantidad = i.Cantidad }).ToList() }).ToList()); } }
public async Task <IActionResult> GetVigenteVenta(FiltroVenta filtro) => Ok(await Mediator.Send(new GetPromocionesVigentesParaVentaQuery { Banco = filtro.Banco, CategoriaProducto = filtro.CategoriaProducto, MedioDePago = filtro.MedioDePago }));