예제 #1
0
        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>());
        }