private void IterarOperacaoTef() { IIteracaoTef iteracaoTef = null; do { iteracaoTef = clienteCappta.IterarOperacaoTef(); if (iteracaoTef is IMensagem) { this.ExibirMensagem((IMensagem)iteracaoTef); Thread.Sleep(INTERVALO_MILISEGUNDOS); } if (iteracaoTef is IRequisicaoParametro) { this.RequisitarParametros((IRequisicaoParametro)iteracaoTef); } if (iteracaoTef is IRespostaTransacaoPendente) { this.ResolverTransacaoPendente((IRespostaTransacaoPendente)iteracaoTef); } if (iteracaoTef is IRespostaOperacaoRecusada) { this.ExibirDadosOperacaoRecusada((IRespostaOperacaoRecusada)iteracaoTef); } if (iteracaoTef is IRespostaOperacaoAprovada) { this.ExibirDadosOperacaoAprovada((IRespostaOperacaoAprovada)iteracaoTef); this.FinalizarPagamento(); } } while (this.OperacaoNaoFinalizada(iteracaoTef)); }
public void IterarOperacaoTef(double valor, TipoCartao tipoCartao, long codSolicitacaoPagamento) { IIteracaoTef iteracaoTef = null; do { iteracaoTef = clienteCappta.IterarOperacaoTef(); if (iteracaoTef is IMensagem) { this.AtualizarResultado(((IMensagem)iteracaoTef).Descricao); Thread.Sleep(INTERVALO_MILISEGUNDOS); } if (iteracaoTef is IRequisicaoParametro) { this.RequisitarParametros((IRequisicaoParametro)iteracaoTef); } if (iteracaoTef is IRespostaOperacaoRecusada) { this.ExibirDadosOperacaoRecusada((IRespostaOperacaoRecusada)iteracaoTef); IRespostaOperacaoRecusada recusada = (IRespostaOperacaoRecusada)iteracaoTef; RespostaRecusada respostaRecusada = new RespostaRecusada(); respostaRecusada.CodMotivo = recusada.CodigoMotivo; respostaRecusada.Motivo = recusada.Motivo; resultadoProcessamento.RespostaRecusada = respostaRecusada; resultadoProcessamento.Aprovado = false; } if (iteracaoTef is IRespostaOperacaoAprovada) { this.ExibirDadosOperacaoAprovada((IRespostaOperacaoAprovada)iteracaoTef); IRespostaOperacaoAprovada aprovada = (IRespostaOperacaoAprovada)iteracaoTef; RespostaAprovada respostaAprovada = new RespostaAprovada(); respostaAprovada.CodAutorizacaoAdquirente = aprovada.CodigoAutorizacaoAdquirente; respostaAprovada.CupomCliente = aprovada.CupomCliente; respostaAprovada.CupomLojista = aprovada.CupomLojista; respostaAprovada.CupomReduzido = aprovada.CupomReduzido; respostaAprovada.DataHoraAutorizacao = aprovada.DataHoraAutorizacao; respostaAprovada.NomeAdquirente = aprovada.NomeAdquirente; respostaAprovada.NomeBandeiraCartao = aprovada.NomeBandeiraCartao; respostaAprovada.NsuAdquirente = aprovada.NsuAdquirente; respostaAprovada.NsuTef = aprovada.NsuTef.ToString(); respostaAprovada.NumeroControle = aprovada.NumeroControle; respostaAprovada.Valor = valor; respostaAprovada.TipoCartao = tipoCartao; respostaAprovada.CodSolicitacaoPagamento = codSolicitacaoPagamento; resultadoProcessamento.ListaRespostaAprovada.Add(respostaAprovada); resultadoProcessamento.Aprovado = true; this.FinalizarPagamento(); } } while (this.OperacaoNaoFinalizada(iteracaoTef)); }
public void IterarOperacaoTef() { TaskManagerForm.Start(() => { if (this.RadioButtonUsarMultiTef.Enabled) { this.DesabilitarControlesMultiTef(); } this.DesabilitarBotoes(); IIteracaoTef iteracaoTef = null; do { iteracaoTef = cliente.IterarOperacaoTef(); if (iteracaoTef is IMensagem) { this.ExibirMensagem((IMensagem)iteracaoTef); Thread.Sleep(INTERVALO_MILISEGUNDOS); } if (iteracaoTef is IRequisicaoParametro) { this.RequisitarParametros((IRequisicaoParametro)iteracaoTef); } if (iteracaoTef is IRespostaTransacaoPendente) { this.ResolverTransacaoPendente((IRespostaTransacaoPendente)iteracaoTef); } if (iteracaoTef is IRespostaOperacaoRecusada) { this.ExibirDadosOperacaoRecusada((IRespostaOperacaoRecusada)iteracaoTef); } if (iteracaoTef is IRespostaOperacaoAprovada) { this.ExibirDadosOperacaoAprovada((IRespostaOperacaoAprovada)iteracaoTef); this.FinalizarPagamento(); } if (iteracaoTef is IRespostaRecarga) { this.ExibirDadosDeRecarga((IRespostaRecarga)iteracaoTef); } } while (this.OperacaoNaoFinalizada(iteracaoTef)); if (this.sessaoMultiTefEmAndamento == false) { this.HabilitarControlesMultiTef(); } this.HabilitarBotoes(); }); }
private bool OperacaoNaoFinalizada(IIteracaoTef iteracaoTef) { return(iteracaoTef.TipoIteracao != 1 && iteracaoTef.TipoIteracao != 2); }