protected override void OnCreate(Bundle savedInstanceState) { base.OnCreate(savedInstanceState); SetContentView(Resource.Layout.alterar); satFunctions = new SatFunctions(this); spinner = FindViewById <Spinner>(Resource.Id.spinner1); adapter = new ArrayAdapter <string>(this, Android.Resource.Layout.SimpleExpandableListItem1, optCod); adapter.SetDropDownViewResource(Android.Resource.Layout.SimpleSpinnerDropDownItem); spinner.Adapter = (adapter); txtCodAtual = FindViewById <EditText>(Resource.Id.txtCodAtual); txtCodConfirmar = FindViewById <EditText>(Resource.Id.txtCodConfirmar); txtCodNovo = FindViewById <EditText>(Resource.Id.txtCodNovo); txtCodAtual.Text = GlobalValues.codigoAtivacao; btnAlterar = FindViewById <Button>(Resource.Id.btnAlterar); btnAlterar.Click += delegate { try { var codigoAtivacaoAtual = txtCodAtual.Text; var codigoAtivacaoNovo = txtCodNovo.Text; var codigoAtivacaoNovoConfirmacao = txtCodConfirmar.Text; if (!SatUtils.VerificaCodigoAtivacao(codigoAtivacaoAtual) || !SatUtils.VerificaCodigoAtivacao(codigoAtivacaoNovo) || !SatUtils.VerificaCodigoAtivacao(codigoAtivacaoNovoConfirmacao)) { SatUtils.MostrarToast(this, "Código de Ativação deve ter entre 8 a 32 caracteres!"); return; } if (codigoAtivacaoNovo != txtCodConfirmar.Text) { SatUtils.MostrarToast(this, "O Novo Código de Ativação e a Confirmação do Novo Código de Ativação não correspondem!"); return; } opcao = spinner.SelectedItem.Equals("Código de ativação") ? 1 : 2; GlobalValues.codigoAtivacao = codigoAtivacaoNovo; string retorno = satFunctions.TrocarCodAtivacao(codigoAtivacaoAtual, opcao, codigoAtivacaoNovo, SatUtils.GerarNumeroSessao); RetornoSat retornoSat = OperacaoSat.invocarOperacaoSat("TrocarCodAtivacao", retorno); string retornoFormatado = OperacaoSat.formataRetornoSat(retornoSat); SatUtils.DialogoRetorno(this, retornoFormatado); } catch (Exception e) { SatUtils.MostrarToast(this, e.Message); } }; }
public void repostaSat(string operacao) { string retornoOperaca = ""; switch (operacao) { case "ConsultarSat": retornoOperaca = satFunctions.ConsultarSat(SatUtils.GerarNumeroSessao); break; case "ConsultarStatusOperacional": retornoOperaca = satFunctions.ConsultarStatusOperacional(SatUtils.GerarNumeroSessao, txtCodAtivacao.Text); break; case "EnviarTesteFim": retornoOperaca = satFunctions.EnviarTesteFim(txtCodAtivacao.Text, SatUtils.GerarNumeroSessao); break; case "EnviarTesteVendas": retornoOperaca = satFunctions.EnviarTesteVendas(txtCodAtivacao.Text, SatUtils.GerarNumeroSessao); break; case "CancelarUltimaVenda": retornoOperaca = satFunctions.CancelarUltimaVenda(txtCodAtivacao.Text, ultimaChaveVenda, SatUtils.GerarNumeroSessao); break; case "ConsultarNumeroSessao": retornoOperaca = satFunctions.ConsultarNumeroSessao(txtCodAtivacao.Text, Integer.ParseInt(codigoSessao), SatUtils.GerarNumeroSessao); break; default: retornoOperaca = ""; break; } RetornoSat retornoSat = OperacaoSat.invocarOperacaoSat(operacao, retornoOperaca); /* * Está verificação(abaixo) tem como objetivo capturar a "Chave de Consulta" retornado na operação EnviarTesteVendas * O valor é armazenado em uma variavel global e quando o usuario abre a tela para cancelar venda, o campo (Chave de Cancelamento) já fica preenchido */ if (operacao == "EnviarTesteVendas") { //chave ultima venda GlobalValues.ultimaChaveVenda = retornoSat.ChaveConsulta; } GlobalValues.codigoAtivacao = txtCodAtivacao.Text; //* Está função [OperacaoSat.formataRetornoSat] recebe como parâmetro a operação realizada e um objeto do tipo RetornoSat //* Retorna uma String com os valores obtidos do retorno da Operação já formatados e prontos para serem exibidos na tela // Recomenda-se acessar a função e entender como ela funciona string retornoFormatado = OperacaoSat.formataRetornoSat(retornoSat); //SatUtils.DialogoRetorno(this, retornoFormatado); adapter.Insert(DateTime.Now.ToString("dd/MM/yyyy HH:mm:ss\n") + retornoFormatado, 0); adapter.NotifyDataSetChanged(); }
protected override void OnCreate(Bundle savedInstanceState) { base.OnCreate(savedInstanceState); SetContentView(Resource.Layout.assinatura); satLib = new SatFunctions(this); btnAssociar = FindViewById <Button>(Resource.Id.btnAssociar); txtCodAtivacao = FindViewById <EditText>(Resource.Id.txtCodAtivacao); txtAssinatura = FindViewById <EditText>(Resource.Id.txtAssinatura); txtCnpjContribuinte = FindViewById <EditText>(Resource.Id.txtCNPJ); txtCnpjContribuinte.AddTextChangedListener(new Mask(txtCnpjContribuinte, "##.###.###/####-##")); txtCnpjSH = FindViewById <EditText>(Resource.Id.txtSW); txtCnpjSH.AddTextChangedListener(new Mask(txtCnpjSH, "##.###.###/####-##")); txtCodAtivacao.Text = GlobalValues.codigoAtivacao; txtCnpjContribuinte.Text = "03.654.119/0001-76"; txtCnpjSH.Text = "16.716.114/0001-72"; txtAssinatura.Text = "SGR-SAT SISTEMA DE GESTAO E RETAGUARDA DO SAT"; btnAssociar.Click += delegate { var codigoAtivacao = txtCodAtivacao.Text; var assinatura = txtAssinatura.Text; if (!SatUtils.VerificaCodigoAtivacao(codigoAtivacao)) { SatUtils.MostrarToast(this, "Código de Ativação deve ter entre 8 a 32 caracteres!"); return; } if (string.IsNullOrEmpty(assinatura)) { SatUtils.MostrarToast(this, "Assinatura AC Inválida!"); return; } string resp = satLib.AssociarSat( SatUtils.SomenteNumeros(txtCnpjContribuinte.Text), SatUtils.SomenteNumeros(txtCnpjSH.Text), codigoAtivacao, assinatura, SatUtils.GerarNumeroSessao); RetornoSat retornoSat = OperacaoSat.invocarOperacaoSat("AssociarSAT", resp); //* Está função [OperacaoSat.formataRetornoSat] recebe como parâmetro a operação realizada e um objeto do tipo RetornoSat //* Retorna uma String com os valores obtidos do retorno da Operação já formatados e prontos para serem exibidos na tela // Recomenda-se acessar a função e entender como ela funciona string retornoFormatado = OperacaoSat.formataRetornoSat(retornoSat); SatUtils.DialogoRetorno(this, retornoFormatado); GlobalValues.codigoAtivacao = codigoAtivacao; }; }
public void repostaSat(string operacao, string txtCodAtivacao, string dadosVenda = "") { string retornoOperacao = ""; switch (operacao) { case "ConsultarSat": retornoOperacao = MainActivity.satFunctions.ConsultarSat(SatUtils.GerarNumeroSessao); break; case "ConsultarStatusOperacional": retornoOperacao = MainActivity.satFunctions.ConsultarStatusOperacional(SatUtils.GerarNumeroSessao, txtCodAtivacao); break; case "EnviarTesteFim": retornoOperacao = MainActivity.satFunctions.EnviarTesteFim(txtCodAtivacao, dadosVenda, SatUtils.GerarNumeroSessao); break; case "EnviarTesteVendas": retornoOperacao = MainActivity.satFunctions.EnviarTesteVendas(txtCodAtivacao, dadosVenda, SatUtils.GerarNumeroSessao); break; case "CancelarUltimaVenda": retornoOperacao = MainActivity.satFunctions.CancelarUltimaVenda(txtCodAtivacao, ultimaChaveVenda, dadosVenda, SatUtils.GerarNumeroSessao); break; case "ConsultarNumeroSessao": retornoOperacao = MainActivity.satFunctions.ConsultarNumeroSessao(txtCodAtivacao, Integer.ParseInt(codigoSessao), SatUtils.GerarNumeroSessao); break; default: retornoOperacao = ""; break; } RetornoSat retornoSat = OperacaoSat.invocarOperacaoSat(operacao, retornoOperacao); /* * Está verificação(abaixo) tem como objetivo capturar a "Chave de Consulta" retornado na operação EnviarTesteVendas * O valor é armazenado em uma variavel global e quando o usuario abre a tela para cancelar venda, o campo (Chave de Cancelamento) já fica preenchido */ if (operacao == "EnviarTesteVendas") { //chave ultima venda GlobalValues.ultimaChaveVenda = retornoSat.ChaveConsulta; } //GlobalValues.codigoAtivacao = txtCodAtivacao; //* Está função [OperacaoSat.formataRetornoSat] recebe como parâmetro a operação realizada e um objeto do tipo RetornoSat //* Retorna uma String com os valores obtidos do retorno da Operação já formatados e prontos para serem exibidos na tela // Recomenda-se acessar a função e entender como ela funciona string retornoFormatado = OperacaoSat.formataRetornoSat(retornoSat); Xamarin.Forms.MessagingCenter.Send(Xamarin.Forms.Application.Current, "SAT_Response_Notification", retornoFormatado); }
protected override void OnCreate(Bundle savedInstanceState) { base.OnCreate(savedInstanceState); SetContentView(Resource.Layout.ativacao); satLib = new SatFunctions(this); txtCNPJContribuinte = FindViewById <EditText>(Resource.Id.txtCNPJ); txtCNPJContribuinte.Text = "03.654.119/0001-76"; txtCNPJContribuinte.AddTextChangedListener(new Mask(txtCNPJContribuinte, "##.###.###/####-##")); txtCodAtivacao = FindViewById <EditText>(Resource.Id.txtCodAtivacao); txtconfCodAtivacao = FindViewById <EditText>(Resource.Id.txtConfCodAtivacao); btnAtivarSat = FindViewById <Button>(Resource.Id.buttonAtivar); txtCodAtivacao.Text = GlobalValues.codigoAtivacao; btnAtivarSat.Click += delegate { var codigoAtivacao = txtCodAtivacao.Text; var codigoAtivacaoConfirmacao = txtconfCodAtivacao.Text; if (!SatUtils.VerificaCodigoAtivacao(codigoAtivacao)) { SatUtils.MostrarToast(this, "Código de Ativação deve ter entre 8 a 32 caracteres!"); return; } if (codigoAtivacao != codigoAtivacaoConfirmacao) { SatUtils.MostrarToast(this, "O Código de Ativação e a Confirmação do Código de Ativação não correspondem!"); return; } GlobalValues.codigoAtivacao = codigoAtivacao; string resp = satLib.AtivarSat(txtCodAtivacao.Text.ToString(), SatUtils.SomenteNumeros(txtCNPJContribuinte.Text), SatUtils.GerarNumeroSessao); RetornoSat retornoSat = OperacaoSat.invocarOperacaoSat("AtivarSAT", resp); //* Está função [OperacaoSat.formataRetornoSat] recebe como parâmetro a operação realizada e um objeto do tipo RetornoSat //* Retorna uma String com os valores obtidos do retorno da Operação já formatados e prontos para serem exibidos na tela // Recomenda-se acessar a função e entender como ela funciona string retornoFormatado = OperacaoSat.formataRetornoSat(retornoSat); SatUtils.DialogoRetorno(this, retornoFormatado); }; }
public void ativacaoSat(string txtCodAtivacao, string txtCNPJContribuinte, string txtCodConfirmacao, int numSessao) { string resp = MainActivity.satFunctions.AtivarSat(txtCodAtivacao.ToString(), txtCNPJContribuinte.ToString(), numSessao); RetornoSat retornoSat = OperacaoSat.invocarOperacaoSat("AtivarSAT", resp); //* Está função [OperacaoSat.formataRetornoSat] recebe como parâmetro a operação realizada e um objeto do tipo RetornoSat //* Retorna uma String com os valores obtidos do retorno da Operação já formatados e prontos para serem exibidos na tela // Recomenda-se acessar a função e entender como ela funciona string retornoFormatado = OperacaoSat.formataRetornoSat(retornoSat); SatUtils.DialogoRetorno(MainActivity.mContext, retornoFormatado); }
public void RespostaSat(string operacao, string codAtivacao, int numSessao) { string retornoOperacao = ""; switch (operacao) { case "BloquearSat": retornoOperacao = MainActivity.satFunctions.BloquearSat(codAtivacao, numSessao); break; case "DesbloquearSat": retornoOperacao = MainActivity.satFunctions.DesbloquearSat(codAtivacao, numSessao); break; case "ExtrairLog": retornoOperacao = MainActivity.satFunctions.ExtrairLog(codAtivacao, numSessao); break; case "AtualizarSoftware": retornoOperacao = MainActivity.satFunctions.AtualizarSoftware(codAtivacao, numSessao); break; case "Versao": retornoOperacao = MainActivity.satFunctions.Versao(); break; default: retornoOperacao = ""; break; } //GlobalValues.codigoAtivacao = codAtivacao; RetornoSat retornoSat = OperacaoSat.invocarOperacaoSat(operacao, retornoOperacao); //* Está função [OperacaoSat.formataRetornoSat] recebe como parâmetro a operação realizada e um objeto do tipo RetornoSat //* Retorna uma String com os valores obtidos do retorno da Operação já formatados e prontos para serem exibidos na tela // Recomenda-se acessar a função e entender como ela funciona string retornoFormatado = OperacaoSat.formataRetornoSat(retornoSat); SatUtils.DialogoRetorno(MainActivity.mContext, retornoFormatado); }
public void associarSat(string cnpjContribuinte, string cnpjSH, string codAtivacao, string assinatura, int numeroSessao) { var codigoAtivacao = codAtivacao.ToString(); var assinaturaSat = assinatura.ToString(); string resp = MainActivity.satFunctions.AssociarSat( cnpjContribuinte.ToString(), cnpjSH.ToString(), codigoAtivacao, assinaturaSat, numeroSessao); RetornoSat retornoSat = OperacaoSat.invocarOperacaoSat("AssociarSAT", resp); //* Está função [OperacaoSat.formataRetornoSat] recebe como parâmetro a operação realizada e um objeto do tipo RetornoSat //* Retorna uma String com os valores obtidos do retorno da Operação já formatados e prontos para serem exibidos na tela // Recomenda-se acessar a função e entender como ela funciona string retornoFormatado = OperacaoSat.formataRetornoSat(retornoSat); SatUtils.DialogoRetorno(MainActivity.mContext, retornoFormatado); //GlobalValues.codigoAtivacao = codigoAtivacao; }
public void trocarCodAtivacao(string CodAtivacao, string opcao, string codAtivacaoNovo, string codConfirmacao, int numerSessao) { try { var codigoAtivacaoAtual = CodAtivacao.ToString(); var codigoAtivacaoNovo = codAtivacaoNovo.ToString(); var codigoAtivacaoNovoConfirmacao = codConfirmacao.ToString(); op = opcao.ToString().Equals("Código de ativação") ? 1 : 2; //GlobalValues.codigoAtivacao = codigoAtivacaoNovo; string retorno = MainActivity.satFunctions.TrocarCodAtivacao(codigoAtivacaoAtual, op, codigoAtivacaoNovo, numerSessao); RetornoSat retornoSat = OperacaoSat.invocarOperacaoSat("TrocarCodAtivacao", retorno); string retornoFormatado = OperacaoSat.formataRetornoSat(retornoSat); SatUtils.DialogoRetorno(MainActivity.mContext, retornoFormatado); } catch (Exception e) { SatUtils.MostrarToast(MainActivity.mContext, e.Message); } }
public void configurarRedeSat(string codAtivacao, int numeroSessao) { try { var codigoAtivacao = codAtivacao.ToString(); ConfiguracaoRede config = new ConfiguracaoRede(); string resp = MainActivity.satFunctions.EnviarConfRede(numeroSessao, config.GerarXml(), codigoAtivacao); RetornoSat retornoSat = OperacaoSat.invocarOperacaoSat("EnviarConfRede", resp); //* Está função [OperacaoSat.formataRetornoSat] recebe como parâmetro a operação realizada e um objeto do tipo RetornoSat //* Retorna uma String com os valores obtidos do retorno da Operação já formatados e prontos para serem exibidos na tela // Recomenda-se acessar a função e entender como ela funciona //GlobalValues.codigoAtivacao = codigoAtivacao; String retornoFormatado = OperacaoSat.formataRetornoSat(retornoSat); SatUtils.DialogoRetorno(MainActivity.mContext, retornoFormatado); } catch (Exception e) { Toast.MakeText(MainActivity.mContext, e.Message.ToString(), ToastLength.Long).Show(); } }
protected override void OnCreate(Bundle savedInstanceState) { base.OnCreate(savedInstanceState); SetContentView(Resource.Layout.rede); satFunctions = new SatFunctions(this); btnConfigurar = FindViewById <Button>(Resource.Id.buttonEnviar); txtCodAtivacao = FindViewById <EditText>(Resource.Id.txtCodAtivacao); txtIp = FindViewById <EditText>(Resource.Id.txtIp); txtMascara = FindViewById <EditText>(Resource.Id.txtMascara); txtGateway = FindViewById <EditText>(Resource.Id.txtGateway); txtDns = FindViewById <EditText>(Resource.Id.txtDns); txtDns2 = FindViewById <EditText>(Resource.Id.txtDns2); txtProxyIp = FindViewById <EditText>(Resource.Id.txtProxyIp); txtPorta = FindViewById <EditText>(Resource.Id.txtPorta); txtUser = FindViewById <EditText>(Resource.Id.txtUser); txtPassword = FindViewById <EditText>(Resource.Id.txtPassword); spinnerTipoRede = FindViewById <Spinner>(Resource.Id.tipoRede); spinnerOptDns = FindViewById <Spinner>(Resource.Id.optDns); spinnerOptProxy = FindViewById <Spinner>(Resource.Id.optProxy); txtCodAtivacao.Text = GlobalValues.codigoAtivacao; ArrayAdapter adp = new ArrayAdapter <string>(this, Android.Resource.Layout.SimpleSpinnerItem, tipoRede); adp.SetDropDownViewResource(Android.Resource.Layout.SimpleSpinnerItem); spinnerTipoRede.Adapter = adp; spinnerTipoRede.ItemSelected += new EventHandler <AdapterView.ItemSelectedEventArgs>(spinnerTipoRede_ItemSelected); ArrayAdapter adp2 = new ArrayAdapter <string>(this, Android.Resource.Layout.SimpleSpinnerItem, optDns); adp2.SetDropDownViewResource(Android.Resource.Layout.SimpleSpinnerItem); spinnerOptDns.Adapter = adp2; spinnerOptDns.ItemSelected += new EventHandler <AdapterView.ItemSelectedEventArgs>(spinnerOptDns_ItemSelected); ArrayAdapter adp3 = new ArrayAdapter <string>(this, Android.Resource.Layout.SimpleSpinnerItem, optProxy); adp3.SetDropDownViewResource(Android.Resource.Layout.SimpleSpinnerItem); spinnerOptProxy.Adapter = adp3; spinnerOptProxy.ItemSelected += new EventHandler <AdapterView.ItemSelectedEventArgs>(spinnerOptProxy_ItemSelected); btnConfigurar.Click += delegate { try { var codigoAtivacao = txtCodAtivacao.Text; if (!SatUtils.VerificaCodigoAtivacao(codigoAtivacao)) { SatUtils.MostrarToast(this, "Código de Ativação deve ter entre 8 a 32 caracteres!"); return; } ConfiguracaoRede config = new ConfiguracaoRede(); // Monta as tags do XML sobre a parte de REDE if (spinnerTipoRede.SelectedItem.Equals("Estático")) { config.tipoLan = "IPFIX"; if (!string.IsNullOrEmpty(txtIp.Text)) { config.lanIP = txtIp.Text; } if (!string.IsNullOrEmpty(txtMascara.Text)) { config.lanMask = txtMascara.Text; } if (!string.IsNullOrEmpty(txtGateway.Text)) { config.lanGW = txtGateway.Text; } // Monta as tags do XML sobre a parte de DNS if (spinnerOptDns.SelectedItem.Equals("Sim")) { if (!string.IsNullOrEmpty(txtDns.Text)) { config.lanDNS1 = txtDns.Text; } if (!string.IsNullOrEmpty(txtDns2.Text)) { config.lanDNS2 = txtDns2.Text; } } else { config.lanDNS1 = "8.8.8.8"; config.lanDNS2 = "4.4.4.4"; } } else { config.tipoLan = "DHCP"; } // Monta as tags do XML sobre a parte de PROXY if (spinnerOptProxy.SelectedItem.Equals("Não usa proxy")) { config.proxy = "0"; } else if (spinnerOptProxy.SelectedItem.Equals("Proxy com configuração")) { config.proxy = "1"; if (!string.IsNullOrEmpty(txtProxyIp.Text)) { config.proxy_ip = txtProxyIp.Text; } if (!string.IsNullOrEmpty(txtPorta.Text)) { config.proxy_porta = txtPorta.Text; } if (!string.IsNullOrEmpty(txtUser.Text)) { config.proxy_user = txtUser.Text; } if (!string.IsNullOrEmpty(txtPassword.Text)) { config.proxy_senha = txtPassword.Text; } } else { config.proxy = "2"; if (!string.IsNullOrEmpty(txtProxyIp.Text)) { config.proxy_ip = txtProxyIp.Text; } if (!string.IsNullOrEmpty(txtPorta.Text)) { config.proxy_porta = txtPorta.Text; } if (!string.IsNullOrEmpty(txtUser.Text)) { config.proxy_user = txtUser.Text; } if (!string.IsNullOrEmpty(txtPassword.Text)) { config.proxy_senha = txtPassword.Text; } } string resp = satFunctions.EnviarConfRede(SatUtils.GerarNumeroSessao, config.GerarXml(), codigoAtivacao); RetornoSat retornoSat = OperacaoSat.invocarOperacaoSat("EnviarConfRede", resp); //* Está função [OperacaoSat.formataRetornoSat] recebe como parâmetro a operação realizada e um objeto do tipo RetornoSat //* Retorna uma String com os valores obtidos do retorno da Operação já formatados e prontos para serem exibidos na tela // Recomenda-se acessar a função e entender como ela funciona GlobalValues.codigoAtivacao = codigoAtivacao; String retornoFormatado = OperacaoSat.formataRetornoSat(retornoSat); SatUtils.DialogoRetorno(this, retornoFormatado); } catch (Exception e) { Toast.MakeText(this, e.Message.ToString(), ToastLength.Long).Show(); } }; }
// Função que retorna uma String formatada para ser posta no dialogo Sat, com todas as informações do retorno da operação realizada // Em caso de erro retorna o erro // *Existem operações que vão ter como resultado informações semelhantes public static string formataRetornoSat(RetornoSat retornoSat) { string retornoFormatado = ""; // Verifica se existe um erro no retorno if (!(retornoSat.ErroSat == "")) { // Retorna o erro caso exista return("Mensagem: " + retornoSat.ErroSat); } else { //* Estas informações são padrões a todos os retornos(sempre vão aparecer no Dialogo Sat) //* Para mais informações consulte o arquivo retornosSat.txt. É possivel visualizar nele a posição e informação de cada Retorno do Sat. if (!(retornoSat.NumeroCCCC == "")) { // Se tiver Código CCCC adiciona ele a string formatada retornoFormatado = retornoSat.NumeroEEEE + "|" + retornoSat.NumeroCCCC + "-"; } else { // Caso não tenha o código CCCC adicionada somente o EEEE retornoFormatado = retornoSat.NumeroEEEE + "-"; } retornoFormatado += retornoSat.Mensagem; retornoFormatado += "\n"; // Pula linha // Verifica se adiciona o Código e Mensagem Sefaz na mensagem, caso não estejam vazios if (!(retornoSat.NumeroCod == "" || retornoSat.MensagemSefaz == "")) { retornoFormatado += "Cod/Mens Sefaz: \n" + retornoSat.NumeroCod + "-" + retornoSat.MensagemSefaz; } else if (!(retornoSat.NumeroCod == "")) { retornoFormatado += "Cod/Mens Sefaz: \n" + retornoSat.NumeroCod + "-"; } else if (!(retornoSat.MensagemSefaz == "")) { retornoFormatado += "Cod/Mens Sefaz: \n" + "-" + retornoSat.MensagemSefaz; } retornoFormatado += "\n"; // Pula linha //* Agora só são inseridas as informações que não são padrões a todos retornos //* São atribuidas as informações especificas do retorno da operação if (retornoSat.Operacao == "AtivarSAT") { if (!(retornoSat.CodigoCSR == "")) { retornoFormatado += "CSR: " + retornoSat.CodigoCSR; } } else if (retornoSat.Operacao == "ExtrairLog") { //! Cuidado com está parte, ela pode exigir muito processamento se estiver em modo Debug //! Recomenda-se que utilize somente em modo release e não colocar em um Dialogo, pois o arquivo retornado é grande // retornoFormatado += "Arquivo de log em base64: " + retornoSat.getLogBase64; } else if (retornoSat.Operacao == "ConsultarStatusOperacional") { retornoFormatado += "------- Conteúdo Retorno -------" + "\n" + "Número de Série do SAT: " + retornoSat.NumeroSerieSat + "Tipo de Lan: " + retornoSat.TipoLan + "\n" + "IP SAT: " + retornoSat.IpSat + "\n" + "MAC SAT: " + retornoSat.MacSat + "\n" + "Máscara: " + retornoSat.Mascara + "\n" + "Gateway: " + retornoSat.Gateway + "\n" + "DNS 1: " + retornoSat.Dns1 + "\n" + "DNS 2: " + retornoSat.Dns2 + "\n" + "Status da Rede: " + retornoSat.StatusRede + "\n" + "Nível da Bateria: " + retornoSat.NivelBateria + "\n" + "Memória de Trabalho Total: " + retornoSat.MemoriaDeTrabalhoTotal + "\n" + "Memória de Trabalho Usada: " + retornoSat.MemoriaDeTrabalhoUsada + "\n" + "Data/Hora: " + retornoSat.DataHora + "\n" + "Versão: " + retornoSat.Versao + "\n" + "Versão de Leiaute: " + retornoSat.VersaoLeiaute + "\n" + "Último CFe-Sat Emitido: " + retornoSat.UltimoCfeEmitido + "\n" + "Primeiro CFe-Sat Em Memória: " + retornoSat.PrimeiroCfeMemoria + "\n" + "Último CFe-Sat Em Memória: " + retornoSat.UltimoCfeMemoria + "\n" + "Última Transmissão de CFe-SAT para SEFAZ: " + retornoSat.UltimaTransmissaoSefazDataHora + "\n" + "Última Comunicacao com a SEFAZ:" + retornoSat.UltimaComunicacaoSefazData + "\n" + "Data de emissão do certificado: " + retornoSat.DataEmissaoCertificado + "\n" + "Data de vencimento do certificado: " + retornoSat.DataVencimentoCertificado + "\n" + "Estado de Operação do SAT: " + retornoSat.EstadoDeOperacao; } else if (retornoSat.Operacao == "AssociarSAT") { //* Associar SAT somente tem como dado especifico o campo CCCC(fica ao seu criterio adicionar-lo ou não) } else if (retornoSat.Operacao == "EnviarTesteFim") { retornoFormatado += "TimeStamp: " + retornoSat.TimeStamp + "\nNum Doc Fiscal: " + retornoSat.NumDocFiscal + "\nChave de Consulta: " + retornoSat.ChaveConsulta + "\nArquivo CFE Base 64: " + ConverterBase64EmXml(retornoSat.ArquivoCFeBase64); } else if ((retornoSat.Operacao == "EnviarTesteVendas") || (retornoSat.Operacao == "CancelarUltimaVenda")) { retornoFormatado += "TimeStamp: " + retornoSat.TimeStamp + "\nChave de Consulta: " + retornoSat.ChaveConsulta + "\nValor CFE: " + retornoSat.ValorTotalCFe + "\nValor CPF CNPJ: " + retornoSat.CPFCNPJValue + "\nArquivo CFE Base 64: " + ConverterBase64EmXml(retornoSat.ArquivoCFeBase64) + "\nAssinatura QRCODE: " + retornoSat.AssinaturaQRCODE; } } return(retornoFormatado); }