class Sunnyside::EdiReader
Attributes
data[R]
Public Class Methods
new(data)
click to toggle source
# File lib/sunnyside/ledger/edi.rb, line 31 def initialize(data) @data = data end
Public Instance Methods
check_number()
click to toggle source
# File lib/sunnyside/ledger/edi.rb, line 39 def check_number check = data[0][/(?<=~TRN\*\d\*)\w+/] return check.include?('E') ? check[/\d+$/] : check end
check_total()
click to toggle source
# File lib/sunnyside/ledger/edi.rb, line 44 def check_total data[0][/(?<=~BPR\*\w\*)[0-9\.\-]+/, 0] end
claims()
click to toggle source
# File lib/sunnyside/ledger/edi.rb, line 35 def claims data.select { |clm| clm =~ /^\d+/ }.map { |clm| clm.split(/~(?=SVC)/) } end
parse_claims()
click to toggle source
# File lib/sunnyside/ledger/edi.rb, line 48 def parse_claims payment_id = Payment.insert(check_number: check_number, check_total: check_total) claims.each { |claim| ClaimParser.new(claim, payment_id).parse } end