class Sunnyside::InvoiceParse
Attributes
client_line[R]
invoice_line[R]
service_lines[R]
Public Class Methods
new(page)
click to toggle source
# File lib/sunnyside/ledger/private.rb, line 18 def initialize(page) @invoice_line = page.select { |line| line =~ /[0-9\/]{8}\s+\d{7}/ }.join @client_line = page.select { |line| line =~ /[0-9]{7}\s+[0-9]{7}/ }.join @service_lines = page.map { |line| ServiceLine.new(line) if line =~ /\sHHA\s|\sPCA\s/ }.compact end
Public Instance Methods
client_number()
click to toggle source
# File lib/sunnyside/ledger/private.rb, line 28 def client_number client_line[/[0-9]{7}/] end
invoice()
click to toggle source
# File lib/sunnyside/ledger/private.rb, line 24 def invoice invoice_line[/(\d{7})$/, 1].gsub(/^0/, '') end
process()
click to toggle source
# File lib/sunnyside/ledger/private.rb, line 32 def process service_lines.each { |line| line.to_db(invoice, client_number) } end