Exemplo n.º 1
0
        private PagamentoInfo gerarPagamento(MotoristaInfo motorista, FreteInfo frete, PagamentoCartaoInfo cartao = null)
        {
            var pagamento = new PagamentoInfo
            {
                IdUsuario  = motorista.Id,
                Situacao   = SituacaoPagamentoEnum.Aberto,
                Tipo       = TipoPagamentoEnum.Credito,
                Observacao = "15% da primeira hora"
            };

            pagamento.Itens.Add(new PagamentoItemInfo
            {
                Descricao  = "15% da primeira hora",
                Quantidade = 1,
                Valor      = frete.Preco * 0.15
            });
            if (cartao != null)
            {
                pagamento.Bandeira   = cartao.Bandeira;
                pagamento.Token      = cartao.Token;
                pagamento.NomeCartao = cartao.Nome;
                pagamento.CVV        = cartao.CVV;
            }
            return(pagamento);
        }
Exemplo n.º 2
0
        public static PagamentoInfo gerar(PedidoInfo pedido)
        {
            var regraUsuario = UsuarioFactory.create();
            var usuario      = regraUsuario.pegarAtual();
            var pagamento    = new PagamentoInfo
            {
                IdUsuario   = usuario.Id,
                Cpf         = usuario.CpfCnpj,
                Cep         = pedido.Cep,
                Logradouro  = pedido.Logradouro,
                Complemento = pedido.Complemento,
                Numero      = pedido.Numero,
                Bairro      = pedido.Bairro,
                Cidade      = pedido.Cidade,
                Uf          = pedido.Uf,
                Situacao    = SituacaoPagamentoEnum.Aberto
            };

            foreach (var item in pedido.Itens)
            {
                pagamento.Itens.Add(new PagamentoItemInfo
                {
                    Descricao  = item.Produto.Nome,
                    Quantidade = item.Quantidade,
                    Valor      = (item.Produto.ValorPromocao > 0) ? item.Produto.ValorPromocao : item.Produto.Valor
                });
            }
            return(pagamento);
        }
Exemplo n.º 3
0
        private async void gerarBoleto(PagamentoInfo pagamento)
        {
            UserDialogs.Instance.ShowLoading("Gerando boleto...");
            try
            {
                var regraPagamento = PagamentoFactory.create();
                pagamento.DataVencimento = DateTime.Now.AddDays(3);
                var retorno = await regraPagamento.pagar(pagamento);

                if (retorno.Situacao == SituacaoPagamentoEnum.AguardandoPagamento)
                {
                    this.Pagamento = await regraPagamento.pegar(retorno.IdPagamento);

                    UserDialogs.Instance.HideLoading();
                    AoEfetuarPagamento?.Invoke(this, this.Pagamento);
                }
                else
                {
                    UserDialogs.Instance.HideLoading();
                    //UserDialogs.Instance.Alert(retorno.Mensagem, "Erro", "Fechar");
                    await DisplayAlert("Erro", retorno.Mensagem, "Entendi");
                }
            }
            catch (Exception erro) {
                UserDialogs.Instance.HideLoading();
                //UserDialogs.Instance.Alert(erro.Message, "Erro", "Fechar");
                await DisplayAlert("Erro", erro.Message, "Entendi");
            }
        }
Exemplo n.º 4
0
        public async Task <PagamentoRetornoInfo> pagarComToken(PagamentoInfo pagamento)
        {
            string url  = GlobalUtils.URLAplicacao + "/api/pagamento/pagar-com-token";
            var    args = new List <object>();

            args.Add(pagamento);
            return(await queryPut <PagamentoRetornoInfo>(url, args.ToArray()));
        }
Exemplo n.º 5
0
 private void preencherEndereco(PagamentoInfo pagamento, EnderecoInfo endereco)
 {
     pagamento.Cep         = endereco.Cep;
     pagamento.Logradouro  = endereco.Logradouro;
     pagamento.Complemento = endereco.Complemento;
     pagamento.Numero      = endereco.Numero;
     pagamento.Bairro      = endereco.Bairro;
     pagamento.Cidade      = endereco.Cidade;
     pagamento.Uf          = endereco.Uf;
 }
Exemplo n.º 6
0
        public int InsertPagamento(PagamentoInfo pagamentoInfo)
        {
            if (accessDbMySql.Conectar())
            {
                accessDbMySql.AddParametrosMySql("@venda", pagamentoInfo.pagamentoidvenda);
                accessDbMySql.AddParametrosMySql("@quant", pagamentoInfo.pagamentoquantforma);
                accessDbMySql.AddParametrosMySql("@valor", pagamentoInfo.pagamentovalor);
                accessDbMySql.AddParametrosMySql("@troco", pagamentoInfo.pagamentotroco);

                return(accessDbMySql.ExecutarScalarMySql("spInsertPagamento"));
            }
            else
            {
                return(0);
            }
        }
        private PagamentoColecao PreencherPagamentoColecao(DataTable dataTable)
        {
            PagamentoColecao pagamentoColecao = new PagamentoColecao();

            foreach (DataRow row in dataTable.Rows)
            {
                PagamentoInfo pagamentoInfo = new PagamentoInfo
                {
                    pagamentoid         = Convert.ToInt32(row["pagamentoid"]),
                    pagamentoidvenda    = Convert.ToInt32(row["pagamentoidvenda"]),
                    pagamentoquantforma = Convert.ToInt32(row["pagamentoquantforma"]),
                    pagamentotroco      = Convert.ToDecimal(row["pagamentotroco"]),
                    pagamentovalor      = Convert.ToDecimal(row["pagamentovalor"])
                };

                pagamentoColecao.Add(pagamentoInfo);
            }

            return(pagamentoColecao);
        }
Exemplo n.º 8
0
        private void inicializarComponente()
        {
            inicilizarCaracteristica();

            _AlugarButton = new Button {
                VerticalOptions   = LayoutOptions.End,
                HorizontalOptions = LayoutOptions.Fill,
                Text  = "ALUGAR",
                Style = Estilo.Current[Estilo.BTN_PRINCIPAL]
            };
            _AlugarButton.Clicked += (sender, e) =>
            {
                var pagamento = new PagamentoInfo {
                    IdUsuario = 0,
                    Tipo      = TipoPagamentoEnum.CREDITO,
                    Situacao  = SituacaoPagamentoEnum.ABERTO,
                    Itens     = new List <PagamentoItemInfo>()
                    {
                        new PagamentoItemInfo {
                            Descricao  = "Locação de Veículo",
                            Quantidade = 1,
                            Valor      = 80
                        }
                    }
                };
                Navigation.PushAsync(new CartaoPage(pagamento)
                {
                    UsaCredito = true,
                    UsaDebito  = false
                });
            };

            _FotoImage = new Image
            {
                VerticalOptions   = LayoutOptions.Start,
                HorizontalOptions = LayoutOptions.Center,
                WidthRequest      = 120,
                HeightRequest     = 80,
                Aspect            = Aspect.Fill
            };
            _FotoImage.SetBinding(Image.SourceProperty, new Binding("Foto"));
            _TituloLabel = new Label
            {
                FontAttributes    = FontAttributes.Bold,
                VerticalOptions   = LayoutOptions.Start,
                HorizontalOptions = LayoutOptions.Start,
            };
            _TituloLabel.SetBinding(Label.TextProperty, new Binding("Titulo"));
            _PromoLabel = new Label
            {
                WidthRequest      = 150,
                VerticalOptions   = LayoutOptions.Start,
                HorizontalOptions = LayoutOptions.Start,
            };
            _PromoLabel.SetBinding(Label.TextProperty, new Binding("Promocao"));
            _NomeLoja = new Label
            {
                VerticalOptions   = LayoutOptions.Start,
                HorizontalOptions = LayoutOptions.End,
                FontAttributes    = FontAttributes.Bold
            };
            _NomeLoja.SetBinding(Label.TextProperty, new Binding("NomeLoja"));

            _ValorLabel = new Label
            {
                VerticalOptions   = LayoutOptions.Start,
                HorizontalOptions = LayoutOptions.End,
                FontSize          = 24,
                FontAttributes    = FontAttributes.Bold
            };
            _ValorLabel.SetBinding(Label.TextProperty, new Binding("ValorStr"));

            _DataIniLabel = new Label
            {
                VerticalOptions   = LayoutOptions.Start,
                HorizontalOptions = LayoutOptions.End,
                FontSize          = 16,
                FontAttributes    = FontAttributes.Bold
            };
            _DataIniLabel.SetBinding(Label.TextProperty, new Binding("DataInicioStr"));
            _DataFimLabel = new Label
            {
                VerticalOptions   = LayoutOptions.Start,
                HorizontalOptions = LayoutOptions.End,
                FontSize          = 16,
                FontAttributes    = FontAttributes.Bold
            };
            _DataFimLabel.SetBinding(Label.TextProperty, new Binding("DataFimStr"));
        }
Exemplo n.º 9
0
        private void Concluir()
        {
            if (troco >= 0)
            {
                if (InserirVenda() > 0)
                {
                    PagamentoInfo pagamentoInfo = new PagamentoInfo
                    {
                        pagamentoid         = 0,
                        pagamentoidvenda    = vendaInfo.venid,
                        pagamentoquantforma = dataGridViewFormaPag.RowCount,
                        pagamentovalor      = vendaInfo.venvalor,
                        pagamentotroco      = troco
                    };

                    int cod = vendaNegocios.InsertPagamento(pagamentoInfo);
                    if (cod > 0)
                    {
                        foreach (GridFormaPagamentoInfo pag in gridFormaPagamentoColecao)
                        {
                            PagamentoDetalhesInfo pagamentoDetalhesInfo = new PagamentoDetalhesInfo
                            {
                                pagdetalhesid          = 0,
                                pagdetalhesidmaquineta = pag.pagband,
                                pagdetalhesidpag       = cod,
                                pagdetalhesidtipopag   = pag.pagtipo,
                                pagdetalhesnumparcelas = pag.parc,
                                pagdetalhesvalor       = pag.pagid == 1 ? pag.pagvalor - troco : pag.pagvalor,
                                pagdetalhesidform      = pag.pagid
                            };

                            if (vendaNegocios.InsertPagamentoDetalhes(pagamentoDetalhesInfo) == 0)
                            {
                                Form1.encerrarThread = true;
                                FormMessage.ShowMessegeWarning("Falha, tente novamente!");
                                return;
                            }
                        }

                        PessoaInfo     infoPessoa     = clienteNegocios.ConsultarPessoaId(vendaInfo.venidcliente);
                        Caixa          caixa          = new Caixa();
                        CaixaTurnoInfo caixaTurnoInfo = caixa.ConsultarTurnoAberto();

                        EntradaSaidaInfo entradaSaidaSalvar = new EntradaSaidaInfo
                        {
                            entracodtodasparcelas = 0,
                            entraconfirmada       = true,
                            entradatalancamento   = DateTime.Now,
                            entradatavenc         = DateTime.Now.Date,
                            entradocumento        = Convert.ToString(vendaInfo.venid),
                            entraid               = 0,
                            entraidfunc           = Form1.User.useidfuncionario,
                            entraidunidade        = Form1.Unidade.uniid,
                            entranumparcela       = 1,
                            entranumtotalparcelas = 1,
                            entraobs              = "Controle da venda: " + string.Format("{0:000000000}", pagamentoInfo.pagamentoidvenda) + Environment.NewLine +
                                                    "Cliente: " + infoPessoa.Nome + Environment.NewLine + "Vendedor: " + Form1.User.usenome,
                            entratipocatdecricao = "",
                            entratipoidcat       = 4,
                            entravalor           = pagamentoInfo.pagamentovalor,
                            entravalorpago       = pagamentoInfo.pagamentovalor,
                            entraidtipoentrada   = 4,
                            entraparcelado       = false
                        };

                        EntradaSaidaNegocios entradaSaidaNegocios = new EntradaSaidaNegocios(Form1.Empresa.empconexao);
                        if (entradaSaidaNegocios.InsertEntradaSaidaLancamento(entradaSaidaSalvar) == 0)
                        {
                            Form1.encerrarThread = true;
                            FormMessage.ShowMessegeWarning("Falha, tente novamente!");
                            return;
                        }

                        Form1.encerrarThread = true;
                        this.DialogResult    = DialogResult.Yes;
                    }
                }
                else
                {
                    Form1.encerrarThread = true;
                    FormMessage.ShowMessegeWarning("Falha ao tentar concluir a venda!");
                    this.DialogResult = DialogResult.Cancel;
                }
            }
            else
            {
                Form1.encerrarThread = true;
                FormMessage.ShowMessegeWarning("Todo o valor precisa ser liquidado para concluir a venda!");
            }

            Form1.encerrarThread   = true;
            pictureBoxLoad.Visible = false;
        }
Exemplo n.º 10
0
        public static void gerarPagamento(FreteInfo frete, Action <FreteInfo> aoEfetuarPagamento)
        {
            var regraUsuario = UsuarioFactory.create();
            var usuario      = regraUsuario.pegarAtual();
            var pgtoInicial  = new PagamentoInfo
            {
                Cpf       = usuario.CpfCnpj,
                IdUsuario = usuario.Id
            };

            pgtoInicial.Itens.Add(new PagamentoItemInfo
            {
                Descricao  = "Frete",
                Quantidade = 1,
                Valor      = frete.Preco
            });
            var metodoPagamento = new PagamentoMetodoPage
            {
                Pagamento   = pgtoInicial,
                UsaCredito  = true,
                UsaDebito   = false,
                UsaBoleto   = false,
                UsaDinheiro = true
            };

            metodoPagamento.AoEfetuarPagamento += async(sender, pagamento) =>
            {
                frete.IdPagamento = pagamento.IdPagamento;
                UserDialogs.Instance.ShowLoading("Processando pagamento...");
                try
                {
                    var regraFrete = FreteFactory.create();
                    switch (pagamento.Situacao)
                    {
                    case SituacaoPagamentoEnum.Pago:
                        frete.Situacao = FreteSituacaoEnum.ProcurandoMotorista;
                        break;

                    case SituacaoPagamentoEnum.Cancelado:
                        frete.Situacao = FreteSituacaoEnum.Cancelado;
                        break;

                    default:
                        frete.Situacao = FreteSituacaoEnum.AguardandoPagamento;
                        break;
                    }
                    var id_frete = frete.Id;
                    if (id_frete > 0)
                    {
                        await regraFrete.alterar(frete);
                    }
                    else
                    {
                        id_frete = await regraFrete.inserir(frete);
                    }
                    var novoFrete = await regraFrete.pegar(id_frete);

                    UserDialogs.Instance.HideLoading();
                    aoEfetuarPagamento?.Invoke(novoFrete);
                }
                catch (Exception erro)
                {
                    UserDialogs.Instance.HideLoading();
                    await UserDialogs.Instance.AlertAsync(erro.Message, "Erro", "Entendi");
                }
                UserDialogs.Instance.HideLoading();
            };
            ((RootPage)App.Current.MainPage).PushAsync(metodoPagamento);
        }
Exemplo n.º 11
0
        public string[] CriarCupom(VendaInfo venda, string servico = "")
        {
            servico = string.IsNullOrEmpty(servico) ? "" : "(" + servico + ")";
            string cupom = string.Empty;

            string  fiscal    = "CUPOM NÃO FISCAL";
            string  a         = fiscal.Substring(0, fiscal.Length / 2).PadLeft(tam / 2, '=');
            string  b         = fiscal.Substring(fiscal.Length / 2).PadRight(tam / 2, '=');
            string  titulo    = a + b;
            decimal desconto  = 0;
            string  nomTitulo = string.Empty;

            //dados da venda.
            if (venda != null)
            {
                switch (venda.venidstatus)
                {
                case 1:
                    nomTitulo = "ORÇAMENTO";
                    break;

                case 2:
                    nomTitulo = "VENDA";
                    break;

                case 3:
                    nomTitulo = "CANCELADA";
                    break;

                default:
                    break;
                }

                string nomA = nomTitulo.Substring(0, nomTitulo.Length / 2).PadLeft(tam / 2);
                string nomB = nomTitulo.Substring(nomTitulo.Length / 2).PadRight(tam / 2);
                nomTitulo = nomA + nomB;

                PessoaInfo funcInfo   = funcNegocios.ConsultarPessoaId(venda.venidfunc);
                string     dadosvenda = string.Empty;
                dadosvenda += "CONTROLE: " + string.Format("{0:00000000}", venda.venid) + Environment.NewLine;
                dadosvenda += "VENDEDOR: " + funcInfo.pssnome + Environment.NewLine;
                dadosvenda += "DATA/HORA: " + venda.vendatacad + Environment.NewLine;

                string dadositem = string.Empty;
                VendaDetalhesColecao venDetalhesColecao = vendaNegocios.ConsultarVendaDetalhesIdVenda(venda.venid);

                //dados da empresa
                string empresa = "EMPRESA";
                string empA    = string.Empty;
                string empB    = string.Empty;

                empA    = empresa.Substring(0, empresa.Length / 2).PadLeft(tam / 2);
                empB    = empresa.Substring(empresa.Length / 2).PadRight(tam / 2);
                empresa = empA + empB;

                EmpresaNegocios empresaNegocios = new EmpresaNegocios(Form1.Empresa.empconexao);
                UnidadeInfo     unidade         = empresaNegocios.ConsultarUnidadeId(venda.venidunidade);
                string          dadosemp        = string.Empty;
                dadosemp += empresa + Environment.NewLine;
                dadosemp += unidade.unifantasia + Environment.NewLine;
                dadosemp += "Cnpj: " + string.Format(@"{0:00\.000\.000\/0000\-00}", Convert.ToDouble(unidade.unicnpj)) + Environment.NewLine;
                dadosemp += "End.: " + unidade.unicomplemento + ", " + Environment.NewLine;
                dadosemp += unidade.unilogradouro + Environment.NewLine;
                dadosemp += unidade.unibairro + ", " + unidade.unicidade + "-" + unidade.uniuf + Environment.NewLine;
                dadosemp += "Ref.: " + unidade.unireferencia + Environment.NewLine;
                dadosemp += "Telefone: " + unidade.unitelefone + Environment.NewLine;
                dadosemp += "Site: " + unidade.unisite.ToLower() + Environment.NewLine;
                dadosemp += "Email: " + unidade.uniemail.ToLower() + Environment.NewLine;

                //dados do cliente
                PessoaInfo infoPessoa = clienteNegocios.ConsultarPessoaId(venda.venidcliente);
                string     cliente    = "CLIENTE " + servico;
                string     cliA       = string.Empty;
                string     cliB       = string.Empty;

                cliA    = cliente.Substring(0, cliente.Length / 2).PadLeft(tam / 2);
                cliB    = cliente.Substring(cliente.Length / 2).PadRight(tam / 2);
                cliente = cliA + cliB;


                string dadoscliente = string.Empty;
                dadoscliente += cliente + Environment.NewLine;
                dadoscliente += infoPessoa.pssnome + Environment.NewLine;

                dadoscliente += "End.: " + infoPessoa.pssendcomplemento + ", " + Environment.NewLine
                                + infoPessoa.pssendlogradouro + Environment.NewLine;
                dadoscliente += infoPessoa.pssendbairro + ", " + infoPessoa.pssendcidade + "-" + infoPessoa.pssenduf + Environment.NewLine;


                dadoscliente += "Telefone: " + infoPessoa.psstelefone + Environment.NewLine;
                dadoscliente += "Email: " + infoPessoa.pssemail + Environment.NewLine;

                //produtos
                int item = 1;
                foreach (VendaDetalhesInfo detalhes in venDetalhesColecao)
                {
                    ProdutoInfo produtoInfo = produtoNegocios.ConsultarProdutosId(detalhes.vendetalhesidprod);

                    decimal calc = 0;

                    if (produtoInfo.protaxa)
                    {
                        calc = -detalhes.vendetalhesvalordesc;
                    }
                    else
                    {
                        calc = (detalhes.vendetalhesvalorunit - detalhes.vendetalhesvalordesc) * detalhes.vendetalhesquant;
                    }

                    string desc = string.Empty;
                    string prod = string.Empty;

                    dadositem += string.Format("{0:00}", item++) + "   ";

                    if (calc > 0)
                    {
                        desc  = (-calc).ToString("C2");
                        prod += desc;
                    }

                    prod += (detalhes.vendetalhesquant + " UN x " + detalhes.vendetalhesvalordesc.ToString("C2") + " = " + (detalhes.vendetalhesquant * detalhes.vendetalhesvalordesc).ToString("C2")).PadLeft(tam - desc.Length);

                    dadositem += string.Format("{0:00000}", produtoInfo.proId) + " " + produtoInfo.proDescricao + Environment.NewLine;
                    dadositem += prod.PadLeft(tam) + Environment.NewLine;
                    desconto  += calc;
                }

                //formas de pagamentos
                string dadosformapag = string.Empty;
                string troco         = string.Empty;

                if (venda.venmodo > 0)
                {
                    string pagamento = "FORMA DE PAGAMENTO";
                    string pagA      = string.Empty;
                    string pagB      = string.Empty;

                    pagA      = pagamento.Substring(0, pagamento.Length / 2).PadLeft(tam / 2);
                    pagB      = pagamento.Substring(pagamento.Length / 2).PadRight(tam / 2);
                    pagamento = pagA + pagB;

                    dadosformapag = pagamento + Environment.NewLine;
                    VFormaPagPorVendaColecao forma         = vendaNegocios.ConsultarVFormaPagPorVendaColecao(venda.venid);
                    PagamentoInfo            pagamentoInfo = vendaNegocios.ConsultarPagamentoIdVenda(venda.venid);

                    foreach (VFormaPagPorVendaInfo pag in forma)
                    {
                        string descricao = pag.formpagdescricao;

                        if (pag.pagdetalhesnumparcelas > 1)
                        {
                            decimal valor = pag.pagdetalhesvalor / pag.pagdetalhesnumparcelas;
                            descricao += " " + pag.pagdetalhesnumparcelas + "x " + valor.ToString("C2");
                        }
                        else
                        {
                            descricao += " À VISTA";
                        }

                        if (pag.formpagid == 1 && pagamentoInfo.pagamentotroco > 0)
                        {
                            descricao  = descricao.Replace(" À VISTA", "");
                            descricao += ", Recebido = " + (pag.pagdetalhesvalor + pagamentoInfo.pagamentotroco).ToString("C2");
                        }

                        dadosformapag += descricao + pag.pagdetalhesvalor.ToString("C2").PadLeft(tam - descricao.Length) + Environment.NewLine;
                    }

                    troco += Environment.NewLine;

                    if (desconto > 0)
                    {
                        string totalDesconto = "(" + string.Format("{0:0.00}", ((desconto * 100) / (venda.venvalor + desconto))) + "%) " + (-desconto).ToString("C2");
                        troco += "DESCONTO TOTAL: " + totalDesconto.PadLeft(tam - 16) + Environment.NewLine;
                    }

                    if (pagamentoInfo.pagamentotroco > 0)
                    {
                        troco += "TROCO: " + (-pagamentoInfo.pagamentotroco).ToString("C2").PadLeft(tam - 7) + Environment.NewLine;
                    }
                }

                string total = "SUBTOTAL: " + (venda.venvalor + desconto).ToString("C2").PadLeft(tam - 10) + Environment.NewLine;
                total += "VALOR A PAGAR: " + venda.venvalor.ToString("C2").PadLeft(tam - "VALOR A PAGAR: ".Length);

                cupom += titulo + Environment.NewLine;
                cupom += "" + Environment.NewLine;
                cupom += nomTitulo + Environment.NewLine;
                cupom += dadosvenda;
                cupom += "".PadLeft(tam, '=') + Environment.NewLine;
                cupom += dadosemp;
                cupom += "".PadLeft(tam, '=') + Environment.NewLine;
                cupom += dadoscliente;
                cupom += "".PadLeft(tam, '-') + Environment.NewLine;
                cupom += "ITEM COD.  DESCRICAO" + Environment.NewLine;
                cupom += "".PadLeft(tam, '-') + Environment.NewLine;
                cupom += dadositem + Environment.NewLine;
                cupom += "".PadLeft(tam, '*') + Environment.NewLine;
                cupom += "QUANT DE ITENS: " + string.Format("{0:00}", venda.venquant).PadLeft(tam - 16) + Environment.NewLine;
                cupom += total;
                cupom += "" + Environment.NewLine;
                cupom += "" + Environment.NewLine;
                cupom += dadosformapag;
                cupom += troco;

                string corpo  = cupom;
                string rodape = string.Empty;

                if (venda.venmodo > 0)
                {
                    rodape += "".PadLeft(tam, '.') + Environment.NewLine;
                    rodape += "" + Environment.NewLine;
                    rodape += nomTitulo + Environment.NewLine;
                    rodape += dadosvenda;
                    rodape += "UNIDADE: " + unidade.uniunidade + Environment.NewLine;
                    rodape += "" + Environment.NewLine;
                    rodape += dadoscliente;
                    rodape += "" + Environment.NewLine;
                    rodape += total;
                    rodape += "" + Environment.NewLine;
                    rodape += "" + Environment.NewLine;
                    rodape += dadosformapag;
                    rodape += troco;
                    rodape += "".PadLeft(tam, '.') + Environment.NewLine;
                }

                string[] ArrCupom = new string[2];

                ArrCupom[0] = corpo;
                ArrCupom[1] = rodape;

                return(ArrCupom);
            }
            else
            {
                FormMessage.ShowMessegeWarning("Nada foi encontrado!");
                return(null);
            }
        }
Exemplo n.º 12
0
        private void inicializarComponente()
        {
            _ValorTotalLabel = new Label {
                HorizontalOptions       = LayoutOptions.FillAndExpand,
                VerticalOptions         = LayoutOptions.Start,
                Style                   = Estilo.Current[Estilo.LABEL_CAMPO],
                HorizontalTextAlignment = TextAlignment.Center,
                FontSize                = 24
            };
            _ValorTotalLabel.SetBinding(Label.TextProperty, new Binding("ValorTotalStr", stringFormat: "R${0}"));
            _TrocoParaEntry = new Entry {
                HorizontalOptions = LayoutOptions.FillAndExpand,
                VerticalOptions   = LayoutOptions.Start,
                Style             = Estilo.Current[Estilo.ENTRY_PADRAO],
                Keyboard          = Keyboard.Numeric
            };
            _ObservacaoEntry = new Entry
            {
                HorizontalOptions = LayoutOptions.FillAndExpand,
                VerticalOptions   = LayoutOptions.Start,
                Style             = Estilo.Current[Estilo.ENTRY_PADRAO]
            };
            _ConcluirButton = new Button {
                HorizontalOptions = LayoutOptions.Fill,
                VerticalOptions   = LayoutOptions.Start,
                Style             = Estilo.Current[Estilo.BTN_PRINCIPAL],
                Text = "FINALIZAR PEDIDO"
            };
            _ConcluirButton.Clicked += async(sender, e) => {
                if (Pagamento == null)
                {
                    await DisplayAlert("Erro", "Nenhum pagamento informando.", "Fechar");

                    return;
                }

                UserDialogs.Instance.ShowLoading("Enviando...");
                try {
                    var regraPagamento = PagamentoFactory.create();
                    Pagamento.Tipo       = TipoPagamentoEnum.Dinheiro;
                    Pagamento.Observacao = _ObservacaoEntry.Text;
                    double trocoPara = 0;
                    if (double.TryParse(_TrocoParaEntry.Text, out trocoPara))
                    {
                        Pagamento.TrocoPara = trocoPara;
                    }
                    var retorno = await regraPagamento.pagar(Pagamento);

                    Pagamento = await regraPagamento.pegar(retorno.IdPagamento);

                    UserDialogs.Instance.HideLoading();
                    AoEfetuarPagamento?.Invoke(this, Pagamento);
                }
                catch (Exception erro)
                {
                    UserDialogs.Instance.HideLoading();
                    //UserDialogs.Instance.Alert(erro.Message, "Erro", "Fechar");
                    await DisplayAlert("Erro", erro.Message, "Entendi");
                }
            };
        }