Class: Bankserv::Transmission::UserSet::AccountHolderVerification
- Inherits:
-
Set
- Object
- ActiveRecord::Base
- Set
- Bankserv::Transmission::UserSet::AccountHolderVerification
show all
- Defined in:
- lib/bankserv/transmission/set/account_holder_verification.rb
Instance Attribute Summary collapse
Class Method Summary
collapse
Instance Method Summary
collapse
Methods inherited from Set
#base_set, #build_header, #build_trailer, #contained_sets, #decorate_records, from_hash, #get_document, #header, #number_of_records, #parent, partial_class_name, #process, #rec_status, #record_with_sequence_number, #set_type, #to_hash, #trailer, #transactions
Instance Attribute Details
#department_code ⇒ Object
Returns the value of attribute department_code.
8
9
10
|
# File 'lib/bankserv/transmission/set/account_holder_verification.rb', line 8
def department_code
@department_code
end
|
Class Method Details
.generate(options = {}) ⇒ Object
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
# File 'lib/bankserv/transmission/set/account_holder_verification.rb', line 10
def self.generate(options = {})
arr = options[:internal] ? [:internal] : [:external]
arr.collect do |type|
ahvs = Bankserv::AccountHolderVerification.unprocessed.send(type)
if options[:rec_status] == "L"
ahvs.select!{|ahv| not ahv.request.test?}
else
ahvs.select!{|ahv| ahv.request.test?}
end
if ahvs.count > 0
set = self.new
set.(type: type)
ahvs.each{|ahv| set.build_transaction(ahv)}
set.build_trailer
set
end
end.compact
end
|
.has_test_work? ⇒ Boolean
35
36
37
|
# File 'lib/bankserv/transmission/set/account_holder_verification.rb', line 35
def self.has_test_work?
Bankserv::AccountHolderVerification.unprocessed.select{|item| item.request.test?}.any?
end
|
.has_work? ⇒ Boolean
31
32
33
|
# File 'lib/bankserv/transmission/set/account_holder_verification.rb', line 31
def self.has_work?
Bankserv::AccountHolderVerification.unprocessed.select{|item| not item.request.test?}.any?
end
|
Instance Method Details
#account_number_total ⇒ Object
61
62
63
|
# File 'lib/bankserv/transmission/set/account_holder_verification.rb', line 61
def account_number_total
transactions.inject(0) {|res, e| res + e.data[:account_number].to_i}
end
|
#build_transaction(ahv) ⇒ Object
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
|
# File 'lib/bankserv/transmission/set/account_holder_verification.rb', line 39
def build_transaction(ahv)
record_data = if ahv.external?
Absa::H2h::Transmission::AccountHolderVerification.record_type('external_account_detail').template_options
else
Absa::H2h::Transmission::AccountHolderVerification.record_type('internal_account_detail').template_options
end
record_data.merge!(
seq_no: (transactions.count + 1).to_s,
account_number: ahv.bank_account.account_number,
id_number: ahv.bank_account.id_number,
initials: ahv.bank_account.initials,
surname: ahv.bank_account.account_name,
user_ref: ahv.user_ref
)
record_data.merge!(branch_code: ahv.bank_account.branch_code) if ahv.external?
record_type = ahv.internal? ? "internal_account_detail" : "external_account_detail"
records.build(record_type: record_type, data: record_data, sourceable: ahv)
end
|