class SuperpayApi::WebService
Attributes
savon_client[R]
Atributo para o cliente SOAP
Public Class Methods
new()
click to toggle source
Nova instancia da classe WebService
Será considerado o ambiente informado nas configurações
# File lib/superpay_api/web_service.rb, line 11 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
Public Instance Methods
cancelar_transacao(numero_transacao)
click to toggle source
Função que faz a requisição para cancelar_transacao
# File lib/superpay_api/web_service.rb, line 80 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)
click to toggle source
Função que faz a requisição para capturar_transacao
# File lib/superpay_api/web_service.rb, line 102 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)
click to toggle source
Função que faz a requisição para consulta_transacao_completa
# File lib/superpay_api/web_service.rb, line 36 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)
click to toggle source
Função que faz a requisição para Estorno de transação
# File lib/superpay_api/web_service.rb, line 124 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)
click to toggle source
Função que faz a requisição para pagamento_transacao_completa
# File lib/superpay_api/web_service.rb, line 58 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
Private Instance Methods
helper()
click to toggle source
Acesso ao helper
# File lib/superpay_api/web_service.rb, line 146 def helper @helper ||= SuperpayApi::Helper.new end