Пример #1
0
        public int Concluir(Model.Pedido pedido)
        {
            base.AddParameter("@ID_CARRINHO", pedido.IdCarrinho);
            base.AddParameter("@ID_USUARIO", pedido.IdUsuario);

            return(base.ExecutarSemConsulta("PRC_PEDIDO_FINALIZAR"));
        }
Пример #2
0
        public TelaDados()
        {
            InitializeComponent();

            Id = Nota.Id;
            PedidoModalClientes.Id = 0;

            _mNota = new Model.Nota().FindById(Id).FirstOrDefault <Model.Nota>();
            if (_mNota == null)
            {
                Alert.Message("Ação não permitida", "Referência de Pedido não identificada", Alert.AlertType.warning);
                return;
            }

            _mPedido = new Model.Pedido().FindById(_mNota.id_pedido).FirstOrDefault <Model.Pedido>();
            if (_mPedido == null)
            {
                Alert.Message("Ação não permitida", "Referência de Pedido não identificada", Alert.AlertType.warning);
                return;
            }

            IdNatureza = _mPedido.id_natureza;

            DisableCampos();
            Eventos();
        }
Пример #3
0
        /// <summary>
        /// Atualiza o pedido com as somas totais.
        /// </summary>
        private void LoadTotais()
        {
            qtdItens.Text = GridListaProdutos.RowCount.ToString();

            Model.Pedido data = _mPedido.SaveTotais(_mPedidoItens.SumTotais(_mNota.id_pedido));
            _mPedido.Save(data);

            totalNfe.Text    = Validation.FormatPrice(_mPedido.Total);
            descontoNfe.Text = Validation.FormatPrice(_mPedido.Desconto);
            freteNfe.Text    = Validation.FormatPrice(_mPedido.Frete);
            vlrSeguro.Text   = Validation.FormatPrice(_mPedido.Seguro);
            vlrProdutos.Text = Validation.FormatPrice(_mPedido.Produtos);

            baseICMS.Text    = Validation.FormatPrice(_mPedido.ICMSBASE);
            vlrICMS.Text     = Validation.FormatPrice(_mPedido.ICMS);
            ICMSST.Text      = Validation.FormatPrice(_mPedido.ICMSSTBASE);
            vlrICMSST.Text   = Validation.FormatPrice(_mPedido.ICMSST);
            vlrIPI.Text      = Validation.FormatPrice(_mPedido.IPI);
            vlrPIS.Text      = Validation.FormatPrice(_mPedido.PIS);
            vlrCOFINS.Text   = Validation.FormatPrice(_mPedido.COFINS);
            vlrDespesas.Text = Validation.FormatPrice(_mPedido.Despesa);

            var tributos = _mPedidoItens.SumTotais(_mNota.id_pedido);

            vlrTributos.Text = Validation.FormatPrice(tributos["FEDERAL"] + tributos["ESTADUAL"] + tributos["MUNICIPAL"]);
        }
Пример #4
0
        public int Atualizar(Model.Pedido pedido)
        {
            base.AddParameter("@ID_PEDIDO", pedido.IdPedido);
            base.AddParameter("@STATUS", pedido.Status);

            return(base.ExecutarSemConsulta("PRC_PEDIDO_ATUALIZAR"));
        }
Пример #5
0
 public int Atualizar(Model.Pedido pedido)
 {
     using (var dal = new DAL.dalPedido())
     {
         return(dal.Atualizar(pedido));
     }
 }
Пример #6
0
        public List <Model.Pedido> Consultar(Model.Pedido pedido)
        {
            var @return = new List <Model.Pedido>();

            base.AddParameter("@ID_USUARIO", pedido.IdUsuario);

            var dr = base.ExecutarLeitura("PRC_PEDIDO_CONSULTAR");

            while (dr.Read())
            {
                var i = new Model.Pedido
                {
                    IdPedido       = Convert.ToInt32(dr["ID_PEDIDO"]),
                    IdProduto      = Convert.ToInt32(dr["ID_PRODUTO"]),
                    Nome           = dr["NOME"].ToString(),
                    Descricao      = dr["DESCRICAO"] is DBNull ? null : dr["DESCRICAO"].ToString(),
                    Quantidade     = Convert.ToInt32(dr["QUANTIDADE"]),
                    Valor          = Convert.ToDouble(dr["VALOR"]),
                    ValorTransacao = Convert.ToDouble(dr["VALOR_TRANSACAO"]),
                    Status         = dr["STATUS"].ToString(),
                    Url            = dr["URL"].ToString(),
                };
                @return.Add(i);
            }

            return(@return);
        }
Пример #7
0
 public int Concluir(Model.Pedido pedido)
 {
     using (var dal = new DAL.dalPedido())
     {
         return(dal.Concluir(pedido));
     }
 }
Пример #8
0
 public List <Model.Pedido> Consultar(Model.Pedido pedido)
 {
     using (var dal = new DAL.dalPedido())
     {
         return(dal.Consultar(pedido));
     }
 }
Пример #9
0
        public void alterarEstadoPedido(Model.EstadoPedido e_ped,
                                        Model.Pedido pedido)
        {
            if (pedido.Pedido_estado.Esp_nome == "Pronto para envio")
            {
                throw new Exception("Não é possível cancelar " +
                                    "um pedido pronto para envio");
            }

            else if (pedido.Pedido_estado.Esp_nome == "Com o cliente")
            {
                throw new Exception("Não é possível cancelar um pedido que " +
                                    "já está com o cliente");
            }

            else if (pedido.Pedido_estado.Esp_nome == "Cancelado")
            {
                throw new Exception("Pedidos cancelados não podem " +
                                    "ser cancelados novamente");
            }
            else
            {
                new DAL.DALPedido(Persistencia)
                .alterarEstadoPedido(e_ped, pedido);
            }
        }
Пример #10
0
        public void ConferePagamento(int idPedido)
        {
            var dataTitulo = new Model.Titulo().Query().SelectRaw("SUM(total) as total").Where("id_pedido", idPedido).Where("excluir", 0).FirstOrDefault();
            var dataPedido = new Model.Pedido().FindById(idPedido).Select("total").Where("excluir", 0).FirstOrDefault();

            if (dataTitulo.TOTAL > 0)
            {
                if (dataPedido.TOTAL > 0)
                {
                    if (dataTitulo.TOTAL != dataPedido.TOTAL)
                    {
                        //Model.Titulo _iTitulo = new Model.Titulo().Query().Where("pedido", idPedido).Where("excluir", "0").First<Model.Titulo>();
                        //Model.Titulo _iTitulo = new Model.Pedido().FindById(idPedido).Select("total").Where("excluir", 0).FirstOrDefault();

                        var _item = _titulo.Query().Where("id_pedido", idPedido).Where("excluir", "0").First <Model.Titulo>();

                        var diff = Validation.Round(Validation.ConvertToDouble(dataTitulo.TOTAL) - Validation.ConvertToDouble(dataPedido.TOTAL));
                        if (_item.Total > diff)
                        {
                            _item.Total    = Validation.Round(_item.Total - diff);
                            _item.Recebido = Validation.Round(_item.Recebido - diff);
                            _item.Save(_item, false);
                        }
                    }
                }
            }
        }
Пример #11
0
        public void GetDataTablePedidos(string tipo, string dataStart, string dataEnd, bool excluir = false,
                                        int status  = 0,
                                        int usuario = 0, int cliente = 0)
        {
            var query = new Model.Pedido().Query();

            query.SelectRaw("count(pedido.id) as pedidos, sum(pedido.total) as pedidototal, sum(pedido.desconto) as descontototal, sum(pedido.frete) as pedidofrete")
            .Where("pedido.excluir", excluir ? 1 : 0)
            .Where("pedido.emissao", ">=", Validation.ConvertDateToSql(dataStart))
            .Where("pedido.emissao", "<=", Validation.ConvertDateToSql(dataEnd));

            if (!tipo.Contains("Notas"))
            {
                query.Where("pedido.tipo", tipo);
            }

            if (usuario != 0)
            {
                query.Where("pedido.colaborador", usuario);
            }

            if (cliente != 0)
            {
                query.Where("pedido.cliente", cliente);
            }

            if (status != 99)
            {
                query.Where("pedido.status", status);
            }

            var dados = query.FirstOrDefault <dynamic>();

            if (dados != null)
            {
                label21.Visible = false;
                label6.Visible  = true;
                label6.Text     = $@"Dados do periódio {dataInicial.Value:dd/MM/yy} até {dataFinal.Value:dd/MM/yy}";

                label14.Visible = true;
                label7.Visible  = true;
                label7.Text     = dados.PEDIDOS.ToString() ?? "0";

                label16.Visible = true;
                label15.Visible = true;
                label15.Text    = Validation.FormatPrice(Validation.ConvertToDouble(dados.PEDIDOTOTAL), true);

                label18.Visible = true;
                label17.Visible = true;
                label17.Text    = Validation.FormatPrice(Validation.ConvertToDouble(dados.DESCONTOTOTAL), true);

                label20.Visible = true;
                label19.Visible = true;
                label19.Text    = Validation.FormatPrice(Validation.ConvertToDouble(dados.PEDIDOFRETE), true);
            }
        }
Пример #12
0
        private void Save()
        {
            if (idPedido <= 0)
            {
                return;
            }

            _mPedido = _mPedido.FindById(idPedido).FirstOrDefault <Model.Pedido>();
            //var data = _mPedidoItens.Query().Select("id", "total", "frete").Where("pedido", idPedido).Get();
            var data = _mPedidoItens.Query().Where("pedido", idPedido).Get();

            var freteValor = Frete.Text;

            foreach (var item in data)
            {
                FormulaFrete(freteValor, item.ID);
            }

            _mPedido.Tipo = "Vendas";
            _mPedido.SaveTotais(_mPedidoItens.SumTotais(idPedido));
            if (!_mPedido.Save(_mPedido))
            {
                return;
            }

            if (_mPedido.Frete > 0)
            {
                if (_mPedido.Frete != Validation.ConvertToDouble(freteValor))
                {
                    data = _mPedidoItens.Query().Where("pedido", idPedido).Where("excluir", "0").Get();
                    var diff  = Validation.Round(Validation.ConvertToDouble(freteValor) - _mPedido.Frete);
                    int count = 0;
                    foreach (var item in data)
                    {
                        if (count == 0)
                        {
                            double novototal = Validation.Round(Validation.ConvertToDouble(item.FRETE) + diff);
                            count++;
                            AlterarFrete(item.ID, novototal);
                        }
                    }

                    _mPedido      = _mPedido.FindById(idPedido).FirstOrDefault <Model.Pedido>();
                    _mPedido.Tipo = "Vendas";
                    _mPedido.SaveTotais(_mPedidoItens.SumTotais(idPedido));
                    if (!_mPedido.Save(_mPedido))
                    {
                        return;
                    }
                }
            }

            DialogResult = DialogResult.OK;
            Close();
        }
Пример #13
0
        public double GetTotalDesconto(int idPedido)
        {
            if (string.IsNullOrEmpty(idPedido.ToString()))
            {
                return(0);
            }

            var data = new Model.Pedido().FindById(idPedido).Select("desconto").Where("excluir", 0).FirstOrDefault();

            return(Validation.ConvertToDouble(data.DESCONTO ?? 0));
        }
Пример #14
0
        public double GetTotalProdutos(int idPedido)
        {
            if (string.IsNullOrEmpty(idPedido.ToString()))
            {
                return(0);
            }

            var data = new Model.Pedido().FindById(idPedido).Select("produtos").Where("excluir", 0).FirstOrDefault();

            return(Validation.ConvertToDouble(data.PRODUTOS ?? 0));
        }
Пример #15
0
 public IHttpActionResult Get(Model.Pedido item)
 {
     try
     {
         var lista = new BLL.bllPedido().Consultar(item);
         return(Ok(lista));
     }
     catch (Exception ex)
     {
         return(BadRequest(ex.Message));
     }
 }
Пример #16
0
        private void LoadDados()
        {
            var Total = new Model.Pedido().Query().SelectRaw("SUM(TOTAL) AS TOTAL").Where("tipo", "Vendas")
                        .WhereFalse("excluir").Where("colaborador", idUser)
                        .Where("criado", ">=", Validation.ConvertDateToSql(dataInicial.Text, true))
                        .Where("criado", "<=", Validation.ConvertDateToSql(dataFinal.Text, true)).FirstOrDefault();

            totalVendas.Text = Validation.FormatPrice(Validation.ConvertToDouble(Total.TOTAL), true);

            double vlrComissao = Validation.ConvertToDouble(Total.TOTAL) * (Usuario.Comissao / 100.0);

            totalComissao.Text = Validation.FormatPrice(vlrComissao, true);
        }
Пример #17
0
        private void FormulaDesconto2(string descontoTotal, int idItem, int countItens = 0)
        {
            _mPedido      = _mPedido.Query().Where("id", idPedido).FirstOrDefault <Model.Pedido>();
            _mPedidoItens = _mPedidoItens.Query().Where("id", idItem).First <PedidoItem>();

            var soma3 = Validation.Round(Validation.ConvertToDouble(descontoTotal) / countItens, 2);

            _mPedidoItens.Id             = idItem;
            _mPedidoItens.Tipo           = "Produtos";
            _mPedidoItens.DescontoPedido = Validation.ConvertToDouble(soma3);
            _mPedidoItens.SomarDescontoTotal();
            _mPedidoItens.SomarTotal();
            _mPedidoItens.Save(_mPedidoItens);
        }
Пример #18
0
        private void Save()
        {
            if (string.IsNullOrEmpty(Voucher.Text))
            {
                Alert.Message("Ação não permitida", "Voucher inválido!", Alert.AlertType.warning);
                return;
            }

            _mDevolucao = _mDevolucao.FindByVoucher(Voucher.Text).FirstOrDefault <Model.Pedido>();
            if (_mDevolucao == null)
            {
                Alert.Message("Ação não permitida", "Voucher inválido!", Alert.AlertType.warning);
                return;
            }

            if (Validation.ConvertToInt32(_mDevolucao.Venda) > 0)
            {
                Alert.Message("Ação não permitida", "Voucher inválido!", Alert.AlertType.warning);
                return;
            }

            _mPedido = _mPedido.Query().Where("id", idPedido).FirstOrDefault <Model.Pedido>();

            if (_mPedido.Total < _mDevolucao.Total)
            {
                Alert.Message("Opss", "Valor da troca é maior que o vendido", Alert.AlertType.warning);
                return;
            }

            _mDevolucao.Venda = idPedido;
            if (_mDevolucao.Save(_mDevolucao))
            {
                var data = _mPedidoItens.Query().Select("id", "total").Where("pedido", idPedido).Where("excluir", "0").Get();

                foreach (var item in data)
                {
                    FormulaDevolucao(item.ID);
                }

                _mPedido = _mPedido.SaveTotais(_mPedidoItens.SumTotais(idPedido));
                _mPedido.Save(_mPedido);

                DataTable();
                Voucher.Text = "";
            }
            else
            {
                Alert.Message("Opss", "Problema ao salvar Troca!", Alert.AlertType.warning);
            }
        }
Пример #19
0
        private void BSalvar()
        {
            switch (lTipo.Text)
            {
            case "Dinheiro":
                _controllerTitulo.AddPagamento(idPedido, 1, valor.Text, iniciar.Text);
                break;

            case "Cheque":
                _controllerTitulo.AddPagamento(idPedido, 2, valor.Text, iniciar.Text, parcelas.Text);
                break;

            case "Cartão de Débito":
                _controllerTitulo.AddPagamento(idPedido, 3, valor.Text, iniciar.Text, "1",
                                               Validation.ConvertToInt32(taxas.SelectedValue));
                break;

            case "Cartão de Crédito":
                _controllerTitulo.AddPagamento(idPedido, 4, valor.Text, iniciar.Text, parcelas.Text,
                                               Validation.ConvertToInt32(taxas.SelectedValue));
                break;

            case "Crediário":
                _controllerTitulo.AddPagamento(idPedido, 5, valor.Text, iniciar.Text, parcelas.Text);
                break;

            case "Boleto":
                _controllerTitulo.AddPagamento(idPedido, 6, valor.Text, iniciar.Text, parcelas.Text);
                break;
            }

            PedidoModalDividirConta.ValorDividido = 0;
            PayVerify = false;

            TelaReceber.Visible = false;

            if (caixaAnterior > 0)
            {
                Home.idCaixa = caixaAnterior;
            }

            _mPedido = _mPedido.FindById(idPedido).FirstOrDefault <Model.Pedido>();
            if (_mPedido != null)
            {
                _mPedido.status = _controllerTitulo.GetLancados(idPedido) < Validation.Round(_mPedido.Total) ? 2 : 1;
                _mPedido.Save(_mPedido);
            }

            AtualizarDados();
        }
Пример #20
0
        private List <double> GetDados()
        {
            var values = new List <double>();

            for (var i = 0; i < QuantidadeDias; i++)
            {
                var data = new Model.Pedido().Query().SelectRaw("SUM(TOTAL) AS TOTAL").WhereFalse("excluir")
                           .Where("tipo", "Vendas").Where("colaborador", idUser)
                           .Where("criado", ">=", Validation.ConvertDateToSql(DateTime.Today.AddDays(-i).ToString(), true))
                           .Where("criado", "<=",
                                  Validation.ConvertDateToSql(DateTime.Today.AddDays(-i).ToString("yyyy-MM-dd 23:59"), true))
                           .FirstOrDefault();
                values.Add(data != null ? Validation.ConvertToInt32(data.TOTAL) : "0");
            }

            return(values);
        }
Пример #21
0
        public TelaProdutos()
        {
            InitializeComponent();
            Id     = Nota.Id;
            _mNota = _mNota.FindById(Id).FirstOrDefault <Model.Nota>();

            if (_mNota == null)
            {
                Alert.Message("Ação não permitida", "Referência de Pedido não identificada", Alert.AlertType.warning);
                return;
            }

            _mPedido = _mPedido.FindById(_mNota.id_pedido).FirstOrDefault <Model.Pedido>();

            DisableCampos();
            Eventos();
        }
Пример #22
0
        public void alterarEstadoPedido(Model.EstadoPedido esp, Model.Pedido ped)
        {
            string sql = "UPDATE pedido set estadopedido_esp_id = @esp_id " +
                         "where ped_id = @ped_id";

            var parametros = criarParametros();

            parametros.Add("@esp_id", esp.Esp_id);
            parametros.Add("@ped_id", ped.Ped_id);

            try
            {
                Db.executarNonQuery(sql, parametros);
            }catch (MySqlException erro)
            {
                throw new Exception("Erro no banco de dados : " + erro.Number);
            }
        }
Пример #23
0
        private void Eventos()
        {
            Shown += (s, e) =>
            {
                _mPedido = _mPedido.FindById(idPedido).FirstOrDefault <Model.Pedido>();
                obs.Text = _mPedido.Observacao;
            };

            btnSalvar.Click += (s, e) =>
            {
                _mPedido.Observacao = obs.Text;
                _mPedido.Save(_mPedido);
                Alert.Message("Pronto", "Observação atualizado com sucesso.", Alert.AlertType.success);
                Close();
            };

            btnCancelar.Click += (s, e) => { Close(); };
        }
Пример #24
0
 public IHttpActionResult Put(Model.Pedido item)
 {
     try
     {
         var ret = new BLL.bllPedido().Atualizar(item);
         if (ret > 0)
         {
             return(Ok(ret));
         }
         else
         {
             return(BadRequest("Erro ao atualizar pedido."));
         }
     }
     catch (Exception ex)
     {
         return(BadRequest(ex.Message));
     }
 }
Пример #25
0
        private void Save()
        {
            if (idPedido > 0)
            {
                var data  = _mPedidoItens.Query().Select("id", "total").Where("pedido", idPedido).Where("excluir", "0").Get();
                int count = data.Count();

                //var count = _mPedidoItens.Query().Select("id").Where("pedido", idPedido).Where("excluir", "0").AsCount();

                _mPedido = _mPedido.Query().Where("id", idPedido).FirstOrDefault <Model.Pedido>();

                var descontoValor = string.Empty;
                if (!string.IsNullOrEmpty(porcentagem.Text))
                {
                    descontoValor = Validation.Round(Validation.ConvertToDouble(porcentagem.Text) / 100 * _mPedido.Total).ToString();
                }
                else if (!string.IsNullOrEmpty(dinheiro.Text))
                {
                    descontoValor = dinheiro.Text;
                }

                foreach (var item in data)
                {
                    if (count > 20)
                    {
                        FormulaDesconto2(descontoValor, item.ID, count);
                    }
                    else
                    {
                        FormulaDesconto(descontoValor, item.ID);
                    }
                }

                ConfereDesconto(descontoValor);

                //_mPedido.Tipo = "Vendas";
                _mPedido = _mPedido.SaveTotais(_mPedidoItens.SumTotais(idPedido));
                _mPedido.Save(_mPedido);

                DialogResult = DialogResult.OK;
                Close();
            }
        }
Пример #26
0
        private void btnCancelarPedido_Click(object sender, EventArgs e)
        {
            try
            {
                Model.Pedido pedido_escolhido = (Model.Pedido)dgvPedido
                                                .SelectedRows[0].DataBoundItem;

                Controller.PedidoController
                .alterarEstadoPedido(new Model.EstadoPedido(5), pedido_escolhido);

                atualizarValorTotalView(pedido_escolhido, "-");

                carregarPedidosView();
            }catch (Exception erro)
            {
                MessageBox.Show(erro.Message, "erro",
                                MessageBoxButtons.OK,
                                MessageBoxIcon.Error);
            }
        }
Пример #27
0
        private void FormulaDesconto(string total, int idItem)
        {
            _mPedido      = _mPedido.Query().Where("id", idPedido).FirstOrDefault <Model.Pedido>();
            _mPedidoItens = _mPedidoItens.Query().Where("id", idItem).First <PedidoItem>();

            //decimal argument = (decimal)_mPedido.Total;
            //int qtdDecimal = BitConverter.GetBytes(decimal.GetBits(argument)[3])[2];
            var qtdDecimall = Validation.GetNumberOfDigits((decimal)_mPedido.Total);
            var qtdD        = qtdDecimall + 1;

            qtdD = 2;

            var soma1 = Validation.Round(_mPedidoItens.Total * 100 / _mPedido.Total, qtdD);
            var soma2 = Validation.Round(soma1 / 100, qtdD);

            if (soma2 == 0)
            {
                soma2 = Validation.Round(soma1 / 100, 3);
            }

            if (soma2 == 0)
            {
                soma2 = Validation.Round(soma1 / 100, 4);
            }

            if (soma2 == 0)
            {
                soma2 = Validation.Round(soma1 / 100, 5);
            }

            var soma3 = Validation.Round(Validation.ConvertToDouble(total) * soma2, qtdD);

            _mPedidoItens.Id             = idItem;
            _mPedidoItens.Tipo           = "Produtos";
            _mPedidoItens.DescontoPedido = Validation.ConvertToDouble(soma3);
            _mPedidoItens.SomarDescontoTotal();
            _mPedidoItens.SomarTotal();
            _mPedidoItens.Save(_mPedidoItens);
        }
Пример #28
0
        private void LoadData()
        {
            _mPedido = _mPedido.FindById(Id).FirstOrDefault <Model.Pedido>();
            if (_mPedido == null)
            {
                Alert.Message("Opps", "Não encontramos o registro.", Alert.AlertType.info);
                return;
            }

            osText.Text       = @"Dados da Ordem de Serviço: " + Id;
            aText.Text        = _mPedido.campoa ?? "";
            bText.Text        = _mPedido.campob ?? "";
            cText.Text        = _mPedido.campoc ?? "";
            dText.Text        = _mPedido.campod ?? "";
            eText.Text        = _mPedido.campoe ?? "";
            fText.Text        = _mPedido.campof ?? "";
            problemaText.Text = _mPedido.problema ?? "";
            solucaoText.Text  = _mPedido.solucao ?? "";

            LoadCliente();
            LoadColaborador();
        }
Пример #29
0
 private void atualizarValorTotalView(Model.Pedido pedido,
                                      string operacao)
 {
     if (operacao == "-")
     {
         Controller.PedidoController.atualizarLabel(
             Controller.ComandaController.comanda.Com_valor_total,
             pedido.Ped_valor_total,
             "-",
             lblValorTotal
             );
     }
     else
     {
         Controller.PedidoController.atualizarLabel(
             Controller.ComandaController.comanda.Com_valor_total,
             pedido.Ped_valor_total,
             "+",
             lblValorTotal
             );
     }
 }
Пример #30
0
        private void FormulaDevolucao(int idItem)
        {
            _mPedido      = _mPedido.Query().Where("id", idPedido).FirstOrDefault <Model.Pedido>();
            _mPedidoItens = _mPedidoItens.Query().Where("id", idItem).First <PedidoItem>();

            var data = new Model.Pedido().Query().SelectRaw("SUM(PEDIDO.total) as total").Where("tipo", "Devoluções")
                       .Where("excluir", "0").Where("venda", idPedido).FirstOrDefault <Model.Pedido>();

            if (data == null)
            {
                Alert.Message("Opss", "Problema para encontrar total da Troca", Alert.AlertType.warning);
                return;
            }

            var total = Validation.ConvertToDouble(data.Total);
            var soma1 = Validation.Round(_mPedidoItens.Total * 100 / _mPedido.Total);
            var soma2 = Validation.Round(soma1 / 100);
            var soma3 = Validation.Round(Validation.ConvertToDouble(total) * soma2);

            _mPedidoItens.Id = idItem;
            _mPedidoItens.DevolucaoPedido = Validation.ConvertToDouble(soma3);
            _mPedidoItens.SomarTotal();
            _mPedidoItens.Save(_mPedidoItens);
        }