public Task <IEnumerable <dynamic> > GetDataTable2() { var model = new PedidoItem().Query(); model.Join("PEDIDO", "PEDIDO.id", "PEDIDO_ITEM.pedido"); //model.Join("PEDIDO_ITEM", "PEDIDO_ITEM.item", "ITEM.id"); //model.LeftJoin("CATEGORIA", "CATEGORIA.id", "ITEM.CATEGORIAID"); //model.LeftJoin("PESSOA", "PESSOA.id", "ITEM.FORNECEDOR"); model.Where("PEDIDO.TIPO", Home.pedidoPage); model.Where("PEDIDO.excluir", "=", "0"); model.Where("PEDIDO_ITEM.excluir", "=", "0"); model.Where("PEDIDO.emissao", ">=", Validation.ConvertDateToSql(dataInicial.Value, true)); model.Where("PEDIDO.emissao", "<=", Validation.ConvertDateToSql(dataFinal.Value, true)); model.SelectRaw( "PEDIDO_ITEM.item as item, " + "PEDIDO_ITEM.cprod as cprod, " + "PEDIDO_ITEM.XPROD as produto, " + "PEDIDO_ITEM.MEDIDA as produto, " + "SUM(PEDIDO_ITEM.TOTALCOMPRA) as SumCompras, " + "SUM(PEDIDO_ITEM.TOTAL) as SumVendas, " + "SUM(PEDIDO_ITEM.QUANTIDADE) as TotalVendas"); model.GroupBy("PEDIDO_ITEM.item", "PEDIDO_ITEM.cprod", "PEDIDO_ITEM.XPROD", "PEDIDO_ITEM.MEDIDA"); //model.Limit(200); return(model.GetAsync <dynamic>()); }
private decimal CalcularMeiaPizza() { decimal valorMeiaPizza = 0; if (PedidoItem.Any(x => x.DividiSabor)) { foreach (var referencia in PedidoItem.Where(x => x.DividiSabor && x.Referencia.HasValue).GroupBy(y => y.Referencia)) { valorMeiaPizza += PedidoItem.Where(x => x.Referencia.HasValue && x.Referencia.Value.Equals(referencia.Key)).Sum(itemPedido => itemPedido.ValorUnitario / 2); } } return(valorMeiaPizza); }