public static List <IngredientesConsumo> ConsumoPlatosxLapso(DateTime desde, DateTime hasta) { using (FeriaEntities db = new FeriaEntities()) { List <IngredientesConsumo> q = (from factura in db.Facturas join facturaplato in db.FacturasPlatos on factura.IdFactura equals facturaplato.IdFactura join productoIngrediente in db.PlatosIngredientes on facturaplato.Idplato equals productoIngrediente.IdPlato where factura.Fecha.Value >= desde && factura.Fecha.Value <= hasta && (factura.Tipo == "FACTURA" || factura.Tipo == "CONSUMO") select new IngredientesConsumo { IdIngrediente = productoIngrediente.IdIngrediente, Descripcion = productoIngrediente.Ingrediente, Cantidad = (double)facturaplato.Cantidad * (double)productoIngrediente.Cantidad }).ToList(); var ResumenxIngrediente = from p in q group p by p.Descripcion into ConsumoxProducto select new IngredientesConsumo { Descripcion = ConsumoxProducto.Key, Cantidad = ConsumoxProducto.Sum(x => x.Cantidad) }; var ordenado = from a in ResumenxIngrediente orderby a.Descripcion select a; return(ordenado.ToList()); } }
public static List <IngredientesConsumo> ComprasxLapso(DateTime desde, DateTime hasta) { using (var db = new VeneciaEntities()) { List <IngredientesConsumo> q = (from compra in db.Compras join compraitem in db.ComprasIngredientes on compra.IdCompra equals compraitem.IdCompra where compra.Fecha.Value >= desde && compra.Fecha.Value <= hasta select new IngredientesConsumo { IdIngrediente = compraitem.IdIngrediente, Grupo = compraitem.Grupo, Descripcion = compraitem.Ingrediente, Cantidad = (double)compraitem.Cantidad, Costo = compraitem.Total }).ToList(); var ResumenxIngrediente = from p in q group p by new { p.Grupo, p.Descripcion } into ConsumoxProducto select new IngredientesConsumo { Grupo = ConsumoxProducto.Key.Grupo, Descripcion = ConsumoxProducto.Key.Descripcion, Cantidad = ConsumoxProducto.Sum(x => x.Cantidad), Costo = ConsumoxProducto.Sum(x => x.Costo) }; //var ordenado = from a in ResumenxIngrediente // orderby a.Descripcion // select a; return(ResumenxIngrediente.ToList()); } }