Skip to content

Instantly share code, notes, and snippets.

@aadeshere1
Last active April 30, 2019 06:11
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save aadeshere1/52a1d4b69fc70d9eafb1c69205a756a0 to your computer and use it in GitHub Desktop.
Save aadeshere1/52a1d4b69fc70d9eafb1c69205a756a0 to your computer and use it in GitHub Desktop.
arr =[
{
'merchant_id' => '3000',
'service_id' => '1234',
'dtls' => [
{
'dtl1' => [
{
'dtl_rowno' => '1',
'dtl_item_id' => '345',
'dtl_tax' => '0.05'
}
],
'dtl2' => [
{
'dtl_rowno' => '1',
'dtl_item_id' => '345',
'dtl_tax' => '0.05'
}
],
'dtl3' => [
{
'dtl_rowno' => '1',
'dtl_item_id' => '345',
'dtl_tax' => '0.05'
}
],
'dtl4' => [
{
'dtl_rowno' => '1',
'dtl_item_id' => '345',
'dtl_tax' => '0.05'
}
]
}
]
}
]
def makeXml(val, xml)
val.each do |hashdata|
hashdata.each do |k, v|
unless v.class == Array
xml.send(k, v)
else
xml.send(k) do
makeXml(v, xml)
end
end
end
end
end
b = Nokogiri::XML::Builder.new(encoding: 'Shift_JIS') do |xml|
xml.send(:'sps-api-request', id: "MG02-00131-101") {
makeXml(arr, xml)
}
end
puts b.to_xml
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment