Class: SuperpayApi::WebService
- Inherits:
-
Object
- Object
- SuperpayApi::WebService
- Defined in:
- lib/superpay_api/web_service.rb
Instance Attribute Summary collapse
-
#savon_client ⇒ Object
readonly
Atributo para o cliente SOAP.
Instance Method Summary collapse
-
#cancelar_transacao(numero_transacao) ⇒ Object
Função que faz a requisição para cancelar_transacao.
-
#capturar_transacao(numero_transacao) ⇒ Object
Função que faz a requisição para capturar_transacao.
-
#consulta_transacao_completa(numero_transacao) ⇒ Object
Função que faz a requisição para consulta_transacao_completa.
-
#estorno_de_transacao(numero_transacao, valor_estorno) ⇒ Object
Função que faz a requisição para Estorno de transação.
-
#initialize ⇒ WebService
constructor
Nova instancia da classe WebService Será considerado o ambiente informado nas configurações.
-
#pagamento_transacao_completa(transacao) ⇒ Object
Função que faz a requisição para pagamento_transacao_completa.
Constructor Details
#initialize ⇒ WebService
Nova instancia da classe WebService Será considerado o ambiente informado nas configurações
12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'lib/superpay_api/web_service.rb', line 12 def initialize @savon_client = Savon.client( wsdl: ::SuperpayApi.url, env_namespace: :soapenv, convert_request_keys_to: :lower_camelcase, namespace_identifier: :pag, namespaces: { "xmlns:soapenv" => "http://schemas.xmlsoap.org/soap/envelope/", "xmlns:pag" => "http://pagamentos.webservices.superpay.ernet.com.br/", } ) @savon_client_estorno = Savon.client( wsdl: ::SuperpayApi.url_estorno, env_namespace: :soapenv, convert_request_keys_to: :lower_camelcase, namespace_identifier: :est, namespaces: { "xmlns:soapenv" => "http://schemas.xmlsoap.org/soap/envelope/", "xmlns:est" => "http://estorno.webservices.superpay.ernet.com.br/", } ) end |
Instance Attribute Details
#savon_client ⇒ Object (readonly)
Atributo para o cliente SOAP
8 9 10 |
# File 'lib/superpay_api/web_service.rb', line 8 def savon_client @savon_client end |
Instance Method Details
#cancelar_transacao(numero_transacao) ⇒ Object
Função que faz a requisição para cancelar_transacao
81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 |
# File 'lib/superpay_api/web_service.rb', line 81 def cancelar_transacao(numero_transacao) # Monta os parâmetros params = helper.build_request_cancelar_transacao(numero_transacao) # Faz a requisição para o wsdl begin retorno = @savon_client.call(:operacao_transacao, message: params) rescue Savon::SOAPFault => error return helper.build_response_error(error) end # Verifica se a retorno veio correta ou se deu problema if retorno.blank? retorno = SuperpayApi::Retorno.new retorno.errors.add(:mensagem, "Resposta vazia") return retorno else return helper.build_response_retorno(retorno) end end |
#capturar_transacao(numero_transacao) ⇒ Object
Função que faz a requisição para capturar_transacao
103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 |
# File 'lib/superpay_api/web_service.rb', line 103 def capturar_transacao(numero_transacao) # Monta os parâmetros params = helper.build_request_capturar_transacao(numero_transacao) # Faz a requisição para o wsdl begin retorno = @savon_client.call(:operacao_transacao, message: params) rescue Savon::SOAPFault => error return helper.build_response_error(error) end # Verifica se a retorno veio correta ou se deu problema if retorno.blank? retorno = SuperpayApi::Retorno.new retorno.errors.add(:mensagem, "Resposta vazia") return retorno else return helper.build_response_retorno(retorno) end end |
#consulta_transacao_completa(numero_transacao) ⇒ Object
Função que faz a requisição para consulta_transacao_completa
37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 |
# File 'lib/superpay_api/web_service.rb', line 37 def consulta_transacao_completa(numero_transacao) # Monta os parâmetros params = helper.build_request_consulta_transacao_completa(numero_transacao) # Faz a requisição para o wsdl begin retorno = @savon_client.call(:consulta_transacao_completa, message: params) rescue Savon::SOAPFault => error return helper.build_response_error(error) end # Verifica se a retorno veio correta ou se deu problema if retorno.blank? retorno = SuperpayApi::Retorno.new retorno.errors.add(:mensagem, "Resposta vazia") return retorno else return helper.build_response_retorno(retorno) end end |
#estorno_de_transacao(numero_transacao, valor_estorno) ⇒ Object
Função que faz a requisição para Estorno de transação
125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 |
# File 'lib/superpay_api/web_service.rb', line 125 def estorno_de_transacao(numero_transacao, valor_estorno) # Monta os parâmetros params = helper.build_request_estorno_de_transacao(numero_transacao, valor_estorno) # Faz a requisição para o wsdl begin retorno = @savon_client_estorno.call(:estorna_transacao, message: params) rescue Savon::SOAPFault => error return helper.build_response_error_estorno(error) end # Verifica se a retorno veio correta ou se deu problema if retorno.blank? return "Resposta vazia" else return helper.build_response_retorno_estorno(retorno) end end |
#pagamento_transacao_completa(transacao) ⇒ Object
Função que faz a requisição para pagamento_transacao_completa
59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 |
# File 'lib/superpay_api/web_service.rb', line 59 def pagamento_transacao_completa(transacao) # Monta os parâmetros params = helper.build_request_pagamento_transacao_completa(transacao) # Faz a requisição para o wsdl begin retorno = @savon_client.call(:pagamento_transacao_completa, message: params) rescue Savon::SOAPFault => error return helper.build_response_error(error) end # Verifica se a retorno veio correta ou se deu problema if retorno.blank? retorno = SuperpayApi::Retorno.new retorno.errors.add(:mensagem, "Resposta vazia") return retorno else return helper.build_response_retorno(retorno) end end |