Module: Extensions::HL7::Segment::ClassMethods
- Defined in:
- lib/core_ext/segment.rb
Instance Method Summary collapse
Instance Method Details
#field(index) ⇒ Object
74 75 76 77 78 |
# File 'lib/core_ext/segment.rb', line 74 def field(index) fields.each do |field| return field if field[1][:idx] == index end end |
#from_hash(type, hash) ⇒ Object
80 81 82 83 84 85 86 87 88 89 90 |
# File 'lib/core_ext/segment.rb', line 80 def from_hash(type, hash) clazz = eval("::HL7::Message::Segment::#{type}") instance = clazz.new instance.hash = hash fields = clazz.fields fields.keys.each do |field| instance.send("#{field}=",hash[field.to_s.camelize(:lower)]) end instance end |
#mappings ⇒ Object
92 93 94 95 96 97 98 99 |
# File 'lib/core_ext/segment.rb', line 92 def mappings field_mappings = self.fields.inject([]) {|arr, k| arr << {field_name: k[0].to_s.gsub("_", " ").titleize, type: "String", field_code: k[1][:idx]}; arr} { metadata: {segment_code: self.to_s.downcase, display_name: ""}, fields: field_mappings } end |