invsws_parser.rb
753 Bytes
# frozen_string_literal: true
module Syspro
module BusinessObjects
module Parsers
class InvSwsParser
attr_reader :doc
def initialize(doc)
@doc = doc
end
def parse
{
"key": {
"stock_code": doc.xpath("//item/key/stockcode").map{|e| e.text}.first,
"warehouse": doc.xpath("//item/key/stockcode").map{|e| e.text}.first
},
"reacords_read": doc.xpath("//StatusOfItems/RecordsRead").map{|e| e.text}.first,
"reacords_invalid": doc.xpath("//StatusOfItems/RecordsInvalid").map{|e| e.text}.first,
"error_numbers": doc.xpath("//ErrorNumber").map{|e| e.text}
}
end
end
end
end
end