Esempio n. 1
0
        public Domain.PedidoModel MostrarDetalhePedido(int Id)
        {
            IFSPDataContext db = new IFSPDataContext();
            MPRepository rp = new MPRepository();
            PEDIDO_FULL Busca = new PEDIDO_FULL();
            Domain.PedidoModel Retorno = new Domain.PedidoModel();
            List<Domain.ItemPedidoModel> ListaItem = new List<Domain.ItemPedidoModel>();

            var obj = db.PEDIDO_FULLs.Where(TabelaPedido => TabelaPedido.ID_PEDIDO_FULL == Id).FirstOrDefault();

            Retorno.Data = (DateTime)obj.DATA;
            Retorno.Hora = (TimeSpan)obj.HORA;
            Retorno.Numero = Convert.ToInt32(obj.NUMERO);
            Retorno.Status = obj.STATUS;
            if (obj.NOTAFISCAL != null)
            {
                Retorno.NotaFiscal = (bool)obj.NOTAFISCAL;
            }
            Retorno.Numero = (int)obj.NUMERO;
            Retorno.Observacoes = obj.OBSERVACOES;
            Retorno.Rua = obj.RUA;
            Retorno.FormaPagamento = obj.FORMA_PAGAMENTO;
            Retorno.Desconto = (double)obj.DESCONTO;
            Retorno.Cep = obj.CEP;
            Retorno.IdCliente = obj.ID_CLIENTE;
            Retorno.ValorTotal = obj.VALOR_TOTAL.ToString();
            Retorno.NumeroPedido = (int)obj.NUMERO_PEDIDO;
            Retorno.IdPedidoFull = obj.ID_PEDIDO_FULL;

            var selectItens = db.ITENS_PEDIDOs.Where(i => i.PEDIDO_ID == Retorno.IdPedidoFull).ToList();

            foreach (var item in selectItens)
            {
                Domain.ItemPedidoModel pedidoitem = new Domain.ItemPedidoModel();

                pedidoitem.IdItemPedido = item.ITEM_PEDIDO_ID;
                pedidoitem.IdProduto = item.ID_PRODUTO;
                pedidoitem.Quantidade = item.QUANTIDADE;
                pedidoitem.IdPedido = Retorno.IdPedidoFull;

                ListaItem.Add(pedidoitem);
            }

            Retorno.ItensPedido = ListaItem;

            return Retorno;
        }
Esempio n. 2
0
        public List<Domain.PedidoModel> GeraRelatorio(int IdFornecedor, string DataInicio, string DataFim, string Status, string Produto, string Valor, int IdFornecedorDelivery, int TipoProduto)
        {
            List<Domain.PedidoModel> Retorno = new List<Domain.PedidoModel>();
            IFSPDataContext db = new IFSPDataContext();
            string IdStatus = "";
            bool TipoProdutoIgual = false;
            bool inseriu = false;
            Valor = Valor.Replace("R$", "");

            Valor.TrimEnd();
            Valor.TrimStart();

            var arrayValores = Valor.Split('-');

            if (Status == "Finalizado")
            {
                IdStatus = "1";
            }
            else if (Status == "Cancelado")
            {
                IdStatus = "2";
            }
            else
            {
                IdStatus = "";
            }

            if ((IdStatus == "") && (IdFornecedorDelivery == 0))
            {

                var select = db.PEDIDO_FULLs.Where(n => n.ID_FORNECEDOR == IdFornecedor
                    && n.DATA >= DateTime.Parse(DataInicio) && n.DATA <= DateTime.Parse(DataFim)
                    ).ToList().OrderByDescending(m => m.DATA);

                foreach (var x in select)
                {
                    TipoProdutoIgual = false;
                    inseriu = false;
                    Domain.PedidoModel Pd = new Domain.PedidoModel();
                    List<Domain.ItemPedidoModel> ListaItensPedido = new List<Domain.ItemPedidoModel>();

                    Pd.Cep = x.CEP;
                    Pd.IdPedidoFull = x.ID_PEDIDO_FULL;
                    Pd.Data = (DateTime)x.DATA;
                    Pd.Desconto = (double)x.DESCONTO;
                    Pd.FormaPagamento = x.FORMA_PAGAMENTO;
                    Pd.Hora = (TimeSpan)x.HORA;
                    Pd.NotaFiscal = (Boolean)x.NOTAFISCAL;
                    Pd.Numero = (int)x.NUMERO;
                    Pd.Observacoes = x.OBSERVACOES;
                    Pd.Rua = x.RUA;
                    Pd.IdCliente = x.ID_CLIENTE;
                    Pd.IdDelivery = x.ID_DELIVERY;
                    Pd.Status = x.STATUS;
                    Pd.Troco = x.TROCO.ToString();
                    Pd.ValorTotal = x.VALOR_TOTAL.ToString();
                    Pd.NumeroPedido = (int)x.NUMERO_PEDIDO;

                    var selectItem = db.ITENS_PEDIDOs.Where(n => n.PEDIDO_ID == Pd.IdPedidoFull).ToList();

                    foreach (var item in selectItem)
                    {
                        Domain.ItemPedidoModel ItemPedido = new Domain.ItemPedidoModel();

                        ItemPedido.IdPedido = Pd.IdPedidoFull;
                        ItemPedido.Quantidade = item.QUANTIDADE;
                        ItemPedido.IdItemPedido = item.ITEM_PEDIDO_ID;
                        ItemPedido.IdProduto = item.ID_PRODUTO;

                        if (TipoProduto != 0)
                        {
                            if (ItemPedido.IdProduto.Contains('-'))
                            {
                                var Ids = ItemPedido.IdProduto.Split('-');
                                if ((TipoProdutoIgual == false) &&
                                    ((TipoProduto == db.FORNECEDOR_PRODUTOs.Where(fp => fp.ID_FORNECEDOR_PRODUTO == int.Parse(Ids[0])).FirstOrDefault().TIPO)
                                    || (TipoProduto == db.FORNECEDOR_PRODUTOs.Where(fp => fp.ID_FORNECEDOR_PRODUTO == int.Parse(Ids[0])).FirstOrDefault().TIPO)
                                    ))
                                {
                                    TipoProdutoIgual = true;
                                }

                            }
                            else
                            {
                                if ((TipoProdutoIgual == false) && (TipoProduto == db.FORNECEDOR_PRODUTOs.Where(fp => fp.ID_FORNECEDOR_PRODUTO == int.Parse(item.ID_PRODUTO)).FirstOrDefault().TIPO))
                                {
                                    TipoProdutoIgual = true;
                                }
                            }
                        }
                        else
                        {
                            TipoProdutoIgual = true;
                        }
                        ListaItensPedido.Add(ItemPedido);
                    }
                    Pd.ItensPedido = ListaItensPedido;

                    if ((Produto != "") && (Valor != ""))
                    {
                        var SelectIdProduto = db.FORNECEDOR_PRODUTOs.Where(fp => fp.ID_FORNECEDOR == IdFornecedor && fp.NOME == Produto).ToList();
                        foreach (var i in SelectIdProduto)
                        {
                            foreach (var item in Pd.ItensPedido)
                            {
                                if (item.IdProduto.Contains('-'))
                                {
                                    var idsMeia = item.IdProduto.Split('-');
                                    if ((int.Parse(idsMeia[0]) == i.ID_FORNECEDOR_PRODUTO) || (int.Parse(idsMeia[1]) == i.ID_FORNECEDOR_PRODUTO))
                                    {
                                        if (double.Parse(Pd.ValorTotal) >= double.Parse(arrayValores[0]) && double.Parse(Pd.ValorTotal) <= double.Parse(arrayValores[1]))
                                        {
                                            if (TipoProdutoIgual == true)
                                            {
                                                Retorno.Add(Pd);
                                                inseriu = true;
                                                break;
                                            }
                                        }
                                    }
                                }
                                else
                                {
                                    if (int.Parse(item.IdProduto) == i.ID_FORNECEDOR_PRODUTO)
                                    {
                                        if (double.Parse(Pd.ValorTotal) >= double.Parse(arrayValores[0]) && double.Parse(Pd.ValorTotal) <= double.Parse(arrayValores[1]))
                                        {
                                            if (TipoProdutoIgual == true)
                                            {
                                                Retorno.Add(Pd);
                                                inseriu = true;
                                                break;
                                            }
                                        }
                                    }
                                }
                            }
                            if (inseriu == true)
                            {
                                break;
                            }
                        }
                    }
                    else if (Produto != "")
                    {
                        var SelectIdProduto = db.FORNECEDOR_PRODUTOs.Where(fp => fp.ID_FORNECEDOR == IdFornecedor && fp.NOME == Produto).ToList();
                        foreach (var i in SelectIdProduto)
                        {
                            foreach (var item in Pd.ItensPedido)
                            {
                                if (item.IdProduto.Contains('-'))
                                {
                                    var idsMeia = item.IdProduto.Split('-');
                                    if ((int.Parse(idsMeia[0]) == i.ID_FORNECEDOR_PRODUTO) || (int.Parse(idsMeia[1]) == i.ID_FORNECEDOR_PRODUTO))
                                    {
                                        if (TipoProdutoIgual == true)
                                        {
                                            Retorno.Add(Pd);
                                            inseriu = true;
                                            break;
                                        }
                                    }
                                }
                                else
                                {
                                    if (int.Parse(item.IdProduto) == i.ID_FORNECEDOR_PRODUTO)
                                    {
                                        if (TipoProdutoIgual == true)
                                        {
                                            Retorno.Add(Pd);
                                            inseriu = true;
                                            break;
                                        }
                                    }
                                }
                            }
                            if (inseriu == true)
                            {
                                break;
                            }
                        }
                    }
                    else if (Valor != "")
                    {
                        if (double.Parse(Pd.ValorTotal) >= double.Parse(arrayValores[0]) && double.Parse(Pd.ValorTotal) <= double.Parse(arrayValores[1]))
                        {
                            if (TipoProdutoIgual == true)
                            {
                                Retorno.Add(Pd);
                            }
                        }
                    }
                    else
                    {
                        if (TipoProdutoIgual == true)
                        {
                            Retorno.Add(Pd);
                        }
                    }

                }
            }
            else if ((IdFornecedorDelivery != 0) && (IdStatus == ""))
            {
                var select = db.PEDIDO_FULLs.Where(n => n.ID_FORNECEDOR == IdFornecedor && n.DATA >= DateTime.Parse(DataInicio) && n.DATA <= DateTime.Parse(DataFim)
                    && n.ID_DELIVERY == IdFornecedorDelivery).ToList().OrderByDescending(m => m.DATA);
                foreach (var x in select)
                {
                    TipoProdutoIgual = false;
                    inseriu = false;
                    Domain.PedidoModel Pd = new Domain.PedidoModel();
                    List<Domain.ItemPedidoModel> ListaItensPedido = new List<Domain.ItemPedidoModel>();

                    Pd.Cep = x.CEP;
                    Pd.Data = (DateTime)x.DATA;
                    Pd.IdPedidoFull = x.ID_PEDIDO_FULL;
                    Pd.Desconto = (double)x.DESCONTO;
                    Pd.FormaPagamento = x.FORMA_PAGAMENTO;
                    Pd.Hora = (TimeSpan)x.HORA;
                    Pd.NotaFiscal = (Boolean)x.NOTAFISCAL;
                    Pd.Numero = (int)x.NUMERO;
                    Pd.Observacoes = x.OBSERVACOES;
                    Pd.Rua = x.RUA;
                    Pd.IdCliente = x.ID_CLIENTE;
                    Pd.IdDelivery = x.ID_DELIVERY;
                    Pd.Status = x.STATUS;
                    Pd.Troco = x.TROCO.ToString();
                    Pd.ValorTotal = x.VALOR_TOTAL.ToString();
                    Pd.NumeroPedido = (int)x.NUMERO_PEDIDO;

                    var selectItem = db.ITENS_PEDIDOs.Where(n => n.PEDIDO_ID == Pd.IdPedidoFull).ToList();
                    foreach (var item in selectItem)
                    {
                        Domain.ItemPedidoModel ItemPedido = new Domain.ItemPedidoModel();

                        ItemPedido.IdPedido = Pd.IdPedidoFull;
                        ItemPedido.Quantidade = item.QUANTIDADE;
                        ItemPedido.IdItemPedido = item.ITEM_PEDIDO_ID;
                        ItemPedido.IdProduto = item.ID_PRODUTO;

                        if (TipoProduto != 0)
                        {
                            if (ItemPedido.IdProduto.Contains('-'))
                            {
                                var Ids = ItemPedido.IdProduto.Split('-');
                                if ((TipoProdutoIgual == false) &&
                                    ((TipoProduto == db.FORNECEDOR_PRODUTOs.Where(fp => fp.ID_FORNECEDOR_PRODUTO == int.Parse(Ids[0])).FirstOrDefault().TIPO)
                                    || (TipoProduto == db.FORNECEDOR_PRODUTOs.Where(fp => fp.ID_FORNECEDOR_PRODUTO == int.Parse(Ids[0])).FirstOrDefault().TIPO)
                                    ))
                                {
                                    TipoProdutoIgual = true;
                                }

                            }
                            else
                            {
                                if ((TipoProdutoIgual == false) && (TipoProduto == db.FORNECEDOR_PRODUTOs.Where(fp => fp.ID_FORNECEDOR_PRODUTO == int.Parse(item.ID_PRODUTO)).FirstOrDefault().TIPO))
                                {
                                    TipoProdutoIgual = true;
                                }
                            }
                        }
                        else
                        {
                            TipoProdutoIgual = true;
                        }
                        ListaItensPedido.Add(ItemPedido);
                    }
                    Pd.ItensPedido = ListaItensPedido;

                    if ((Produto != "") && (Valor != ""))
                    {
                        var SelectIdProduto = db.FORNECEDOR_PRODUTOs.Where(fp => fp.ID_FORNECEDOR == IdFornecedor && fp.NOME == Produto).ToList();
                        foreach (var i in SelectIdProduto)
                        {
                            foreach (var item in Pd.ItensPedido)
                            {
                                if (item.IdProduto.Contains('-'))
                                {
                                    var idsMeia = item.IdProduto.Split('-');
                                    if ((int.Parse(idsMeia[0]) == i.ID_FORNECEDOR_PRODUTO) || (int.Parse(idsMeia[1]) == i.ID_FORNECEDOR_PRODUTO))
                                    {
                                        if (double.Parse(Pd.ValorTotal) >= double.Parse(arrayValores[0]) && double.Parse(Pd.ValorTotal) <= double.Parse(arrayValores[1]))
                                        {
                                            if (TipoProdutoIgual == true)
                                            {
                                                Retorno.Add(Pd);
                                                inseriu = true;
                                                break;
                                            }
                                        }
                                    }
                                }
                                else
                                {
                                    if (int.Parse(item.IdProduto) == i.ID_FORNECEDOR_PRODUTO)
                                    {
                                        if (double.Parse(Pd.ValorTotal) >= double.Parse(arrayValores[0]) && double.Parse(Pd.ValorTotal) <= double.Parse(arrayValores[1]))
                                        {
                                            if (TipoProdutoIgual == true)
                                            {
                                                Retorno.Add(Pd);
                                                inseriu = true;
                                                break;
                                            }
                                        }
                                    }
                                }
                            }
                            if (inseriu == true)
                            {
                                break;
                            }
                        }
                    }
                    else if (Produto != "")
                    {
                        var SelectIdProduto = db.FORNECEDOR_PRODUTOs.Where(fp => fp.ID_FORNECEDOR == IdFornecedor && fp.NOME == Produto).ToList();
                        foreach (var i in SelectIdProduto)
                        {
                            foreach (var item in Pd.ItensPedido)
                            {
                                if (item.IdProduto.Contains('-'))
                                {
                                    var idsMeia = item.IdProduto.Split('-');
                                    if ((int.Parse(idsMeia[0]) == i.ID_FORNECEDOR_PRODUTO) || (int.Parse(idsMeia[1]) == i.ID_FORNECEDOR_PRODUTO))
                                    {
                                        if (TipoProdutoIgual == true)
                                        {
                                            Retorno.Add(Pd);
                                            inseriu = true;
                                            break;
                                        }
                                    }
                                }
                                else
                                {
                                    if (int.Parse(item.IdProduto) == i.ID_FORNECEDOR_PRODUTO)
                                    {
                                        if (TipoProdutoIgual == true)
                                        {
                                            Retorno.Add(Pd);
                                            inseriu = true;
                                            break;
                                        }
                                    }
                                }
                            }
                            if (inseriu == true)
                            {
                                break;
                            }
                        }
                    }
                    else if (Valor != "")
                    {
                        if (double.Parse(Pd.ValorTotal) >= double.Parse(arrayValores[0]) && double.Parse(Pd.ValorTotal) <= double.Parse(arrayValores[1]))
                        {
                            if (TipoProdutoIgual == true)
                            {
                                Retorno.Add(Pd);
                            }
                        }
                    }
                    else
                    {
                        if (TipoProdutoIgual == true)
                        {
                            Retorno.Add(Pd);
                        }
                    }
                }
            }
            else if ((IdFornecedorDelivery != 0) && (IdStatus != ""))
            {
                var select = db.PEDIDO_FULLs.Where(n => n.ID_FORNECEDOR == IdFornecedor && n.DATA >= DateTime.Parse(DataInicio) && n.DATA <= DateTime.Parse(DataFim)
                    && n.ID_DELIVERY == IdFornecedorDelivery && n.STATUS == IdStatus).ToList().OrderByDescending(m => m.DATA);
                foreach (var x in select)
                {
                    TipoProdutoIgual = false;
                    inseriu = false;
                    Domain.PedidoModel Pd = new Domain.PedidoModel();
                    List<Domain.ItemPedidoModel> ListaItensPedido = new List<Domain.ItemPedidoModel>();

                    Pd.Cep = x.CEP;
                    Pd.Data = (DateTime)x.DATA;
                    Pd.IdPedidoFull = x.ID_PEDIDO_FULL;
                    Pd.Desconto = (double)x.DESCONTO;
                    Pd.FormaPagamento = x.FORMA_PAGAMENTO;
                    Pd.Hora = (TimeSpan)x.HORA;
                    Pd.NotaFiscal = (Boolean)x.NOTAFISCAL;
                    Pd.Numero = (int)x.NUMERO;
                    Pd.Observacoes = x.OBSERVACOES;
                    Pd.Rua = x.RUA;
                    Pd.IdCliente = x.ID_CLIENTE;
                    Pd.IdDelivery = x.ID_DELIVERY;
                    Pd.Status = x.STATUS;
                    Pd.Troco = x.TROCO.ToString();
                    Pd.ValorTotal = x.VALOR_TOTAL.ToString();
                    Pd.NumeroPedido = (int)x.NUMERO_PEDIDO;

                    var selectItem = db.ITENS_PEDIDOs.Where(n => n.PEDIDO_ID == Pd.IdPedidoFull).ToList();
                    foreach (var item in selectItem)
                    {
                        Domain.ItemPedidoModel ItemPedido = new Domain.ItemPedidoModel();

                        ItemPedido.IdPedido = Pd.IdPedidoFull;
                        ItemPedido.Quantidade = item.QUANTIDADE;
                        ItemPedido.IdItemPedido = item.ITEM_PEDIDO_ID;
                        ItemPedido.IdProduto = item.ID_PRODUTO;

                        if (TipoProduto != 0)
                        {
                            if (ItemPedido.IdProduto.Contains('-'))
                            {
                                var Ids = ItemPedido.IdProduto.Split('-');
                                if ((TipoProdutoIgual == false) &&
                                    ((TipoProduto == db.FORNECEDOR_PRODUTOs.Where(fp => fp.ID_FORNECEDOR_PRODUTO == int.Parse(Ids[0])).FirstOrDefault().TIPO)
                                    || (TipoProduto == db.FORNECEDOR_PRODUTOs.Where(fp => fp.ID_FORNECEDOR_PRODUTO == int.Parse(Ids[0])).FirstOrDefault().TIPO)
                                    ))
                                {
                                    TipoProdutoIgual = true;
                                }

                            }
                            else
                            {
                                if ((TipoProdutoIgual == false) && (TipoProduto == db.FORNECEDOR_PRODUTOs.Where(fp => fp.ID_FORNECEDOR_PRODUTO == int.Parse(item.ID_PRODUTO)).FirstOrDefault().TIPO))
                                {
                                    TipoProdutoIgual = true;
                                }
                            }
                        }
                        else
                        {
                            TipoProdutoIgual = true;
                        }
                        ListaItensPedido.Add(ItemPedido);
                    }
                    Pd.ItensPedido = ListaItensPedido;

                    if ((Produto != "") && (Valor != ""))
                    {
                        var SelectIdProduto = db.FORNECEDOR_PRODUTOs.Where(fp => fp.ID_FORNECEDOR == IdFornecedor && fp.NOME == Produto).ToList();
                        foreach (var i in SelectIdProduto)
                        {
                            foreach (var item in Pd.ItensPedido)
                            {
                                if (item.IdProduto.Contains('-'))
                                {
                                    var idsMeia = item.IdProduto.Split('-');
                                    if ((int.Parse(idsMeia[0]) == i.ID_FORNECEDOR_PRODUTO) || (int.Parse(idsMeia[1]) == i.ID_FORNECEDOR_PRODUTO))
                                    {
                                        if (double.Parse(Pd.ValorTotal) >= double.Parse(arrayValores[0]) && double.Parse(Pd.ValorTotal) <= double.Parse(arrayValores[1]))
                                        {
                                            if (TipoProdutoIgual == true)
                                            {
                                                Retorno.Add(Pd);
                                                inseriu = true;
                                                break;
                                            }
                                        }
                                    }
                                }
                                else
                                {
                                    if (int.Parse(item.IdProduto) == i.ID_FORNECEDOR_PRODUTO)
                                    {
                                        if (double.Parse(Pd.ValorTotal) >= double.Parse(arrayValores[0]) && double.Parse(Pd.ValorTotal) <= double.Parse(arrayValores[1]))
                                        {
                                            if (TipoProdutoIgual == true)
                                            {
                                                Retorno.Add(Pd);
                                                inseriu = true;
                                                break;
                                            }
                                        }
                                    }
                                }
                            }
                            if (inseriu == true)
                            {
                                break;
                            }
                        }
                    }
                    else if (Produto != "")
                    {
                        var SelectIdProduto = db.FORNECEDOR_PRODUTOs.Where(fp => fp.ID_FORNECEDOR == IdFornecedor && fp.NOME == Produto).ToList();
                        foreach (var i in SelectIdProduto)
                        {
                            foreach (var item in Pd.ItensPedido)
                            {
                                if (item.IdProduto.Contains('-'))
                                {
                                    var idsMeia = item.IdProduto.Split('-');
                                    if ((int.Parse(idsMeia[0]) == i.ID_FORNECEDOR_PRODUTO) || (int.Parse(idsMeia[1]) == i.ID_FORNECEDOR_PRODUTO))
                                    {
                                        if (TipoProdutoIgual == true)
                                        {
                                            Retorno.Add(Pd);
                                            inseriu = true;
                                            break;
                                        }
                                    }
                                }
                                else
                                {
                                    if (int.Parse(item.IdProduto) == i.ID_FORNECEDOR_PRODUTO)
                                    {
                                        if (TipoProdutoIgual == true)
                                        {
                                            Retorno.Add(Pd);
                                            inseriu = true;
                                            break;
                                        }
                                    }
                                }
                            }
                            if (inseriu == true)
                            {
                                break;
                            }
                        }
                    }
                    else if (Valor != "")
                    {
                        if (double.Parse(Pd.ValorTotal) >= double.Parse(arrayValores[0]) && double.Parse(Pd.ValorTotal) <= double.Parse(arrayValores[1]))
                        {
                            if (TipoProdutoIgual == true)
                            {
                                Retorno.Add(Pd);
                            }
                        }
                    }
                    else
                    {
                        if (TipoProdutoIgual == true)
                        {
                            Retorno.Add(Pd);
                        }
                    }
                }
            }
            else
            {
                var select = db.PEDIDO_FULLs.Where(n => n.ID_FORNECEDOR == IdFornecedor && n.STATUS == IdStatus && n.DATA >= DateTime.Parse(DataInicio)
                    && n.DATA <= DateTime.Parse(DataFim)).ToList().OrderByDescending(m => m.DATA);
                foreach (var x in select)
                {
                    TipoProdutoIgual = false;
                    inseriu = false;
                    Domain.PedidoModel Pd = new Domain.PedidoModel();
                    List<Domain.ItemPedidoModel> ListaItensPedido = new List<Domain.ItemPedidoModel>();

                    Pd.Cep = x.CEP;
                    Pd.IdPedidoFull = x.ID_PEDIDO_FULL;
                    Pd.Data = (DateTime)x.DATA;
                    Pd.Desconto = (double)x.DESCONTO;
                    Pd.FormaPagamento = x.FORMA_PAGAMENTO;
                    Pd.Hora = (TimeSpan)x.HORA;
                    Pd.NotaFiscal = (Boolean)x.NOTAFISCAL;
                    Pd.Numero = (int)x.NUMERO;
                    Pd.Observacoes = x.OBSERVACOES;
                    Pd.Rua = x.RUA;
                    Pd.IdCliente = x.ID_CLIENTE;
                    Pd.IdDelivery = x.ID_DELIVERY;
                    Pd.Status = x.STATUS;
                    Pd.Troco = x.TROCO.ToString();
                    Pd.ValorTotal = x.VALOR_TOTAL.ToString();
                    Pd.NumeroPedido = (int)x.NUMERO_PEDIDO;

                    var selectItem = db.ITENS_PEDIDOs.Where(n => n.PEDIDO_ID == Pd.IdPedidoFull).ToList();

                    foreach (var item in selectItem)
                    {
                        Domain.ItemPedidoModel ItemPedido = new Domain.ItemPedidoModel();

                        ItemPedido.IdPedido = Pd.IdPedidoFull;
                        ItemPedido.Quantidade = item.QUANTIDADE;
                        ItemPedido.IdItemPedido = item.ITEM_PEDIDO_ID;
                        ItemPedido.IdProduto = item.ID_PRODUTO;

                        if (TipoProduto != 0)
                        {
                            if (ItemPedido.IdProduto.Contains('-'))
                            {
                                var Ids = ItemPedido.IdProduto.Split('-');
                                if ((TipoProdutoIgual == false) &&
                                    ((TipoProduto == db.FORNECEDOR_PRODUTOs.Where(fp => fp.ID_FORNECEDOR_PRODUTO == int.Parse(Ids[0])).FirstOrDefault().TIPO)
                                    || (TipoProduto == db.FORNECEDOR_PRODUTOs.Where(fp => fp.ID_FORNECEDOR_PRODUTO == int.Parse(Ids[0])).FirstOrDefault().TIPO)
                                    ))
                                {
                                    TipoProdutoIgual = true;
                                }

                            }
                            else
                            {
                                if ((TipoProdutoIgual == false) && (TipoProduto == db.FORNECEDOR_PRODUTOs.Where(fp => fp.ID_FORNECEDOR_PRODUTO == int.Parse(item.ID_PRODUTO)).FirstOrDefault().TIPO))
                                {
                                    TipoProdutoIgual = true;
                                }
                            }
                        }
                        else
                        {
                            TipoProdutoIgual = true;
                        }

                        ListaItensPedido.Add(ItemPedido);
                    }
                    Pd.ItensPedido = ListaItensPedido;

                    if ((Produto != "") && (Valor != ""))
                    {
                        var SelectIdProduto = db.FORNECEDOR_PRODUTOs.Where(fp => fp.ID_FORNECEDOR == IdFornecedor && fp.NOME == Produto).ToList();
                        foreach (var i in SelectIdProduto)
                        {
                            foreach (var item in Pd.ItensPedido)
                            {
                                if (item.IdProduto.Contains('-'))
                                {
                                    var idsMeia = item.IdProduto.Split('-');
                                    if ((int.Parse(idsMeia[0]) == i.ID_FORNECEDOR_PRODUTO) || (int.Parse(idsMeia[1]) == i.ID_FORNECEDOR_PRODUTO))
                                    {
                                        if (double.Parse(Pd.ValorTotal) >= double.Parse(arrayValores[0]) && double.Parse(Pd.ValorTotal) <= double.Parse(arrayValores[1]))
                                        {
                                            if (TipoProdutoIgual == true)
                                            {
                                                Retorno.Add(Pd);
                                                inseriu = true;
                                                break;
                                            }
                                        }
                                    }
                                }
                                else
                                {
                                    if (int.Parse(item.IdProduto) == i.ID_FORNECEDOR_PRODUTO)
                                    {
                                        if (double.Parse(Pd.ValorTotal) >= double.Parse(arrayValores[0]) && double.Parse(Pd.ValorTotal) <= double.Parse(arrayValores[1]))
                                        {
                                            if (TipoProdutoIgual == true)
                                            {
                                                Retorno.Add(Pd);
                                                inseriu = true;
                                                break;
                                            }
                                        }
                                    }
                                }
                            }
                            if (inseriu == true)
                            {
                                break;
                            }
                        }
                    }
                    else if (Produto != "")
                    {
                        var SelectIdProduto = db.FORNECEDOR_PRODUTOs.Where(fp => fp.ID_FORNECEDOR == IdFornecedor && fp.NOME == Produto).ToList();
                        foreach (var i in SelectIdProduto)
                        {
                            foreach (var item in Pd.ItensPedido)
                            {
                                if (item.IdProduto.Contains('-'))
                                {
                                    var idsMeia = item.IdProduto.Split('-');
                                    if ((int.Parse(idsMeia[0]) == i.ID_FORNECEDOR_PRODUTO) || (int.Parse(idsMeia[1]) == i.ID_FORNECEDOR_PRODUTO))
                                    {
                                        if (TipoProdutoIgual == true)
                                        {
                                            Retorno.Add(Pd);
                                            inseriu = true;
                                            break;
                                        }
                                    }
                                }
                                else
                                {
                                    if (int.Parse(item.IdProduto) == i.ID_FORNECEDOR_PRODUTO)
                                    {
                                        if (TipoProdutoIgual == true)
                                        {
                                            Retorno.Add(Pd);
                                            inseriu = true;
                                            break;
                                        }
                                    }
                                }
                            }
                            if (inseriu == true)
                            {
                                break;
                            }
                        }
                    }
                    else if (Valor != "")
                    {
                        if (double.Parse(Pd.ValorTotal) >= double.Parse(arrayValores[0]) && double.Parse(Pd.ValorTotal) <= double.Parse(arrayValores[1]))
                        {
                            if (TipoProdutoIgual == true)
                            {
                                Retorno.Add(Pd);
                            }
                        }
                    }
                    else
                    {
                        if (TipoProdutoIgual == true)
                        {
                            Retorno.Add(Pd);
                        }
                    }
                }
            }
            return Retorno;
        }
Esempio n. 3
0
        public List<Domain.PedidoModel> MostraPedido(int IdVendedor, DateTime DATA)
        {
            IFSPDataContext db = new IFSPDataContext();
            MPRepository rp = new MPRepository();
            PEDIDO_FULL Busca = new PEDIDO_FULL();
            List<Domain.PedidoModel> ListaRetorno = new List<Domain.PedidoModel>();

            var Select = db.PEDIDO_FULLs.Where(Armazena => Armazena.ID_FORNECEDOR == IdVendedor).ToList();

            foreach (var obj in Select)
            {

                Domain.PedidoModel Retorno = new Domain.PedidoModel();

                Retorno.Data = (DateTime)obj.DATA;
                Retorno.Hora = (TimeSpan)obj.HORA;
                Retorno.Numero = Convert.ToInt32(obj.NUMERO);
                Retorno.Status = obj.STATUS;
                Retorno.NumeroPedido = (int)obj.NUMERO_PEDIDO;
                Retorno.IdPedidoFull = obj.ID_PEDIDO_FULL;

                ListaRetorno.Add(Retorno);
            }

            return ListaRetorno;
        }
Esempio n. 4
0
        public Domain.PedidoModel BuscarPedido(string NumeroPedido)
        {
            IFSPDataContext db = new IFSPDataContext();
            MPRepository rp = new MPRepository();
            PEDIDO_FULL Busca = new PEDIDO_FULL();
            Domain.PedidoModel Retorno = new Domain.PedidoModel();

            Busca = db.PEDIDO_FULLs.Where(Armazena => Armazena.NUMERO_PEDIDO == int.Parse(NumeroPedido)).FirstOrDefault();

            Retorno.Data = (DateTime)Busca.DATA;
            Retorno.Hora = (TimeSpan)Busca.HORA;
            Retorno.Numero = Convert.ToInt32(Busca.NUMERO);
            Retorno.Status = Busca.STATUS;
            Retorno.NumeroPedido = (int)Busca.NUMERO_PEDIDO;
            Retorno.IdPedidoFull = Busca.ID_PEDIDO_FULL;

            return Retorno;
        }