Class: Bankserv::Statement
- Inherits:
-
ActiveRecord::Base
- Object
- ActiveRecord::Base
- Bankserv::Statement
- Defined in:
- lib/bankserv/transmission/statement.rb
Class Method Summary collapse
Instance Method Summary collapse
- #process! ⇒ Object
- #recon_account_data ⇒ Object
- #recon_account_detail_records ⇒ Object
- #recon_transmission_data ⇒ Object
Class Method Details
.store(string) ⇒ Object
7 8 9 10 11 12 13 14 15 16 17 18 19 |
# File 'lib/bankserv/transmission/statement.rb', line 7 def self.store(string) = Absa::Esd::Transmission::Document.hash_from_s(string) raise "Expected a document set" unless [:type] == "document" client_code = [:data][0][:data][0][:data][:client_code] statement = new statement.client_code = client_code statement.data = statement.save! statement end |
Instance Method Details
#process! ⇒ Object
21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/bankserv/transmission/statement.rb', line 21 def process! raise "Document already processed" if processed? recon_account_detail_records.each do |record| next if record[:data][:transaction_description] == "GEEN/NO TRAN" Bankserv::Transaction.create! data: record[:data], client_code: client_code, bankserv_statement_id: id end self.processed = true self.save end |
#recon_account_data ⇒ Object
37 38 39 |
# File 'lib/bankserv/transmission/statement.rb', line 37 def recon_account_data recon_transmission_data[1][:data] end |
#recon_account_detail_records ⇒ Object
41 42 43 |
# File 'lib/bankserv/transmission/statement.rb', line 41 def recon_account_detail_records recon_account_data.select{|item| item[:type] == 'detail'} end |
#recon_transmission_data ⇒ Object
33 34 35 |
# File 'lib/bankserv/transmission/statement.rb', line 33 def recon_transmission_data data[:data][0][:data] end |