class ApiBanking::InwardRemittanceByPartnerService
Constants
- SERVICE_NAMESPACE
- SERVICE_VERSION
Attributes
configuration[RW]
request[RW]
result[RW]
Public Class Methods
configure() { |configuration| ... }
click to toggle source
# File lib/api_banking/soap/inwardRemittanceByPartnerService.rb, line 30 def self.configure self.configuration ||= Configuration.new yield(configuration) end
remit(env, request)
click to toggle source
# File lib/api_banking/soap/inwardRemittanceByPartnerService.rb, line 39 def self.remit(env, request) reply = do_remote_call(env) do |xml| xml.remit("xmlns:ns" => SERVICE_NAMESPACE ) do xml.parent.namespace = xml.parent.namespace_definitions.first xml['ns'].version SERVICE_VERSION xml['ns'].uniqueRequestNo request.uniqueRequestNo xml['ns'].partnerCode request.partnerCode xml['ns'].remitterType request.remitterType xml['ns'].remitterName do |xml| xml.fullName request.remitterName.fullName end unless request.remitterAddress.address1.nil? xml.remitterAddress do |xml| xml.address1 request.remitterAddress.address1 xml.address2 request.remitterAddress.address2 unless request.remitterAddress.address2.nil? xml.address3 request.remitterAddress.address3 unless request.remitterAddress.address3.nil? xml.postalCode request.remitterAddress.postalCode unless request.remitterAddress.postalCode.nil? xml.city request.remitterAddress.city unless request.remitterAddress.city.nil? xml.stateOrProvince request.remitterAddress.stateOrProvince unless request.remitterAddress.stateOrProvince.nil? xml.country request.remitterAddress.country unless request.remitterAddress.country.nil? end end xml.remitterContact do |xml| xml.mobileNo request.remitterContact.mobileNo unless request.remitterContact.mobileNo.nil? xml.mobileNo request.remitterContact.emailID unless request.remitterContact.emailID.nil? end xml.remitterIdentities do |xml| unless request.remitterIdentities.identity.nil? request.remitterIdentities.identity.each_with_index do |identity, index| xml.identity do |xml| xml.idType request.remitterIdentities.identity[index].idType unless request.remitterIdentities.identity[index].idType.nil? xml.idNumber request.remitterIdentities.identity[index].idNumber unless request.remitterIdentities.identity[index].idNumber.nil? xml.idCountry request.remitterIdentities.identity[index].idCountry unless request.remitterIdentities.identity[index].idCountry.nil? xml.issueDate request.remitterIdentities.identity[index].issueDate unless request.remitterIdentities.identity[index].issueDate.nil? xml.expiryDate request.remitterIdentities.identity[index].expiryDate unless request.remitterIdentities.identity[index].expiryDate.nil? end end end end xml.beneficiaryType request.beneficiaryType xml['ns'].beneficiaryName do |xml| xml.fullName request.beneficiaryName.fullName end unless request.beneficiaryAddress.address1.nil? xml.beneficiaryAddress do |xml| xml.address1 request.beneficiaryAddress.address1 xml.address2 request.beneficiaryAddress.address2 unless request.beneficiaryAddress.address2.nil? xml.address3 request.beneficiaryAddress.address3 unless request.beneficiaryAddress.address3.nil? xml.postalCode request.beneficiaryAddress.postalCode unless request.beneficiaryAddress.postalCode.nil? xml.city request.beneficiaryAddress.city unless request.beneficiaryAddress.city.nil? xml.stateOrProvince request.beneficiaryAddress.stateOrProvince unless request.beneficiaryAddress.stateOrProvince.nil? xml.country request.beneficiaryAddress.country unless request.beneficiaryAddress.country.nil? end end xml.beneficiaryContact do |xml| xml.mobileNo request.beneficiaryContact.mobileNo unless request.beneficiaryContact.mobileNo.nil? xml.mobileNo request.beneficiaryContact.emailID unless request.beneficiaryContact.emailID.nil? end xml.beneficiaryIdentities do |xml| unless request.beneficiaryIdentities.identity.nil? request.beneficiaryIdentities.identity.each_with_index do |identity, index| xml.identity do |xml| xml.idType request.beneficiaryIdentities.identity[index].idType unless request.beneficiaryIdentities.identity[index].idType.nil? xml.idNumber request.beneficiaryIdentities.identity[index].idNumber unless request.beneficiaryIdentities.identity[index].idNumber.nil? xml.idCountry request.beneficiaryIdentities.identity[index].idCountry unless request.beneficiaryIdentities.identity[index].idCountry.nil? xml.issueDate request.beneficiaryIdentities.identity[index].issueDate unless request.beneficiaryIdentities.identity[index].issueDate.nil? xml.expiryDate request.beneficiaryIdentities.identity[index].expiryDate unless request.beneficiaryIdentities.identity[index].expiryDate.nil? end end end end xml.beneficiaryAccountNo request.beneficiaryAccountNo xml.beneficiaryIFSC request.beneficiaryIFSC xml.transferType request.transferType xml.transferCurrencyCode request.transferCurrencyCode xml.transferAmount request.transferAmount xml.remitterToBeneficiaryInfo request.remitterToBeneficiaryInfo xml.purposeCode request.purposeCode end end parse_reply(:remit, reply) end
Private Class Methods
parse_reply(operationName, reply)
click to toggle source
# File lib/api_banking/soap/inwardRemittanceByPartnerService.rb, line 128 def self.parse_reply(operationName, reply) if reply.kind_of?Fault return reply else case operationName when :remit # numItems = reply.xpath('//ns:remitResponse/ns:itemsForReview/ns:itemForReview', 'ns' => SERVICE_NAMESPACE).count # i = 1 # itemsArray = Array.new # until i > numItems # itemsArray << Remit::ItemForReview.new( # content_at(reply.at_xpath("//ns:remitResponse/ns:reviewStatus/ns:/itemsForReview/ns:itemForReview[#{i}]/ns:justificationCode", 'ns' => SERVICE_NAMESPACE)), # content_at(reply.at_xpath("//ns:remitResponse/ns:reviewStatus/ns:/itemsForReview/ns:itemForReview[#{i}]/ns:justificationText", 'ns' => SERVICE_NAMESPACE)), # content_at(reply.at_xpath("//ns:remitResponse/ns:reviewStatus/ns:/itemsForReview/ns:itemForReview[#{i}]/ns:statusCode", 'ns' => SERVICE_NAMESPACE)), # content_at(reply.at_xpath("//ns:remitResponse/ns:reviewStatus/ns:/itemsForReview/ns:itemForReview[#{i}]/ns:reviewedOn", 'ns' => SERVICE_NAMESPACE)), # content_at(reply.at_xpath("//ns:remitResponse/ns:reviewStatus/ns:/itemsForReview/ns:itemForReview[#{i}]/ns:reviewRemark", 'ns' => SERVICE_NAMESPACE)) # ) # i = i + 1 # end # itemsForReview = Remit::ItemsForReview.new(itemsArray) transactionStatus = Remit::TransactionStatus.new( content_at(reply.at_xpath('//ns:remitResponse/ns:transactionStatus/ns:statusCode', 'ns' => SERVICE_NAMESPACE)), content_at(reply.at_xpath('//ns:remitResponse/ns:transactionStatus/ns:subStatusCode', 'ns' => SERVICE_NAMESPACE)), content_at(reply.at_xpath('//ns:remitResponse/ns:transactionStatus/ns:bankReferenceNo', 'ns' => SERVICE_NAMESPACE)), content_at(reply.at_xpath('//ns:remitResponse/ns:transactionStatus/ns:beneficiaryReferenceNo', 'ns' => SERVICE_NAMESPACE)) ) reviewStatus = Remit::ReviewStatus.new( content_at(reply.at_xpath('//ns:remitResponse/ns:reviewStatus/ns:reviewRequired', 'ns' => SERVICE_NAMESPACE)), nil#itemsForReview ) return Remit::Result.new( content_at(reply.at_xpath('//ns:remitResponse/ns:version', 'ns' => SERVICE_NAMESPACE)), content_at(reply.at_xpath('//ns:remitResponse/ns:uniqueResponseNo', 'ns' => SERVICE_NAMESPACE)), content_at(reply.at_xpath('//ns:remitResponse/ns:attemptNo', 'ns' => SERVICE_NAMESPACE)), content_at(reply.at_xpath('//ns:remitResponse/ns:transferType', 'ns' => SERVICE_NAMESPACE)), content_at(reply.at_xpath('//ns:remitResponse/ns:lowBalanceAlert', 'ns' => SERVICE_NAMESPACE)), transactionStatus, reviewStatus ) end end end
uri()
click to toggle source
# File lib/api_banking/soap/inwardRemittanceByPartnerService.rb, line 124 def self.uri() return '/InwardRemittanceByPartnerService' end
Private Instance Methods
url()
click to toggle source
# File lib/api_banking/soap/inwardRemittanceByPartnerService.rb, line 171 def url return '/InwardRemittanceByPartnerService' end