From: Michael B. Klein Date: Wed, 1 Sep 2010 20:41:11 +0000 (-0700) Subject: Multi-FTX support in line item X-Git-Url: https://old-git.evergreen-ils.org/?a=commitdiff_plain;h=9431a68397516370adfcd1f7253bbff878904562;p=working%2Frandom.git Multi-FTX support in line item --- diff --git a/lib/openils/mapper.rb b/lib/openils/mapper.rb index dfb01a913..138bd5296 100644 --- a/lib/openils/mapper.rb +++ b/lib/openils/mapper.rb @@ -3,7 +3,7 @@ require 'edi/mapper' module OpenILS class Mapper < EDI::E::Mapper - VERSION = '0.9.5' + VERSION = '0.9.7' end end @@ -69,9 +69,12 @@ OpenILS::Mapper.map 'item' do |mapper,key,value| value['desc'].each { |desc| mapper.add('desc',desc) } mapper.add('QTY', { 'C186' => { '6060' => value['quantity'] } }) if value.has_key?('free-text') - chunked_text = value['free-text'].chunk_and_group(512,5) - chunked_text.each { |data| - mapper.add('FTX', { '4451' => 'LIN', 'C108' => { '4440' => data } }) + freetexts = value['free-text'].is_a?(Enumerable) ? value['free-text'] : [value['free-text']] + freetexts.each { |ftx| + chunked_text = ftx.chunk_and_group(512,5) + chunked_text.each { |data| + mapper.add('FTX', { '4451' => 'LIN', '4453' => 1, 'C108' => { '4440' => data } }) + } } end mapper.add('PRI', { 'C509' => { '5118' => value['price'] } })