Module: PinganApi::Models::Extensions::Map
- Included in:
- Assistance::OperationSendRequest, Assistance::OperationSendResponse, Assistance::SalvationQueryRequest, Assistance::SalvationQueryResponse, Assistance::SalvationReceiveRequest, Assistance::SalvationReceiveResponse, Assistance::UploadPhotoSendRequest
- Defined in:
- lib/pingan_api/models/extensions/map.rb
Class Method Summary collapse
Instance Method Summary collapse
Class Method Details
.included(base) ⇒ Object
31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 |
# File 'lib/pingan_api/models/extensions/map.rb', line 31 def self.included(base) def base.from_xml(xml) hash = Hash.from_xml(xml) hash_all = nil unless hash["Response"].nil? hash_all = hash["Response"]["Head"].merge(hash["Response"]["Body"]["Apply"]) end unless hash["Request"].nil? hash_all = hash["Request"]["Head"].merge(hash["Request"]["Body"]["Apply"]) end # fuck pingan dev 100000.times unless hash["RESPONSE"].nil? hash_all = hash["RESPONSE"]["Head"].merge(hash["RESPONSE"]["Body"]["Apply"]) end instance = self.new instance.mapping(hash_all) return instance end end |
Instance Method Details
#get_binding ⇒ Object
8 9 10 |
# File 'lib/pingan_api/models/extensions/map.rb', line 8 def get_binding binding end |
#get_result(template_path) ⇒ Object
12 13 14 15 |
# File 'lib/pingan_api/models/extensions/map.rb', line 12 def get_result(template_path) erb = ERB.new(File.read(template_path)) return erb.result(self.get_binding) end |
#mapping(hash) ⇒ Object
17 18 19 20 21 |
# File 'lib/pingan_api/models/extensions/map.rb', line 17 def mapping(hash) self.class.attr_names.each do |a| self.send("#{a.to_s}=", hash[a.upcase.to_s]) end end |
#to_hash ⇒ Object
23 24 25 26 27 28 29 |
# File 'lib/pingan_api/models/extensions/map.rb', line 23 def to_hash hash = {} self.instance_variables.each do |var| hash[var.to_s.delete("@")] = self.instance_variable_get(var) end return hash end |