Ir para conteúdo
  • Cadastre-se

dev botao

Recommended Posts

Postado

Olá, Boa noite a todos,

 

Estou criando uma função simples de venda via Paygo para usar no meu totem de vendas, onde vou enviar os dados da transação e preciso travar a tela com uma mensagem "Siga os passos da maquininha", assim que o cliente finalizar o pagamento na maquininha ai sim finalizo a venda automática no totem.

O meu problema no meu sistema de teste é que ao chamar o 
var saidaTransacao = transacao.realizaTransacao(entradaTransacao), fica travado e não tenho resposta nem no pinpad e nem no saidaTransação do código. 



Estou usando o modelo da documentação.


private val transacao: Transacao by lazy { Transacoes.obtemInstancia(dadosAutomacao, context) } val saidaTransacao = transacao.realizaTransacao(entradaTransacao) val resultMsg = saidaTransacao.obtemMensagemResultado() val resultCode = saidaTransacao.obtemResultadoTransacao() if(resultCode == 0){ //sucesso, imprimir comprovantes e chamar a confirmação } else { //transação não aprovada, exibir resultMsg apontando qual erro ocorreu }

Obs.: meu sistema é C# / Xamarin

 

Postado (editado)

Estou seguindo.
Achei um modelo no github e deu o mesmo erro 
https://github.com/academy-callidus/Equipe-2-Xamarin-Harpia
Tem algum modelo estou usando o xamarin / C#?

Analisando mais a fundo

o problema está no  "var __rm = _members.InstanceMethods.InvokeVirtualObjectMethod (__id, this, __args);" fica loop 

[Register ("realizaTransacao", "(Lbr/com/setis/interfaceautomacao/EntradaTransacao;)Lbr/com/setis/interfaceautomacao/SaidaTransacao;", "GetRealizaTransacao_Lbr_com_setis_interfaceautomacao_EntradaTransacao_Handler")]
public virtual unsafe global::BR.Com.Setis.Interfaceautomacao.SaidaTransacao RealizaTransacao (global::BR.Com.Setis.Interfaceautomacao.EntradaTransacao entrada)
{
    const string __id = "realizaTransacao.(Lbr/com/setis/interfaceautomacao/EntradaTransacao;)Lbr/com/setis/interfaceautomacao/SaidaTransacao;";
    try {
        JniArgumentValue* __args = stackalloc JniArgumentValue [1];
        __args [0] = new JniArgumentValue ((entrada == null) ? IntPtr.Zero : ((global::Java.Lang.Object) entrada).Handle);
        var __rm = _members.InstanceMethods.InvokeVirtualObjectMethod (__id, this, __args);
        return global::Java.Lang.Object.GetObject<global::BR.Com.Setis.Interfaceautomacao.SaidaTransacao> (__rm.Handle, JniHandleOwnership.TransferLocalRef);
    } finally {
        global::System.GC.KeepAlive (entrada);
    }
}

outro detalhe que achei é que ao buildar, mostra um erro "PosData: nomes de membro não podem ser os mesmos do seu tipo delimitador,  estou usando a  versão "InterfaceAutomacao-v2.1.0.4.aar" a mesma na documentação da Paygo. 

Editado por Wagner Moreira 05

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.