ach 0.5.0 → 0.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: d124f86faf818ccd36cdf647bd6aec0f0f3d51bd
4
- data.tar.gz: 44b27266a52377d8a2dc0a420d021eb7eb69197a
3
+ metadata.gz: 9e2cd7a072f04ef91b950ec4247e12daffd7aa79
4
+ data.tar.gz: 55d4bffc69c7f7dcafbfcc455c59a1885bedb4c5
5
5
  SHA512:
6
- metadata.gz: 72c928abf357c176999451341136e3d155f11fba4d88e193f29e231625847393598cc30084e2686b66a8c2a5e5e1a3ea89425f77c5f8381d845fc82f895b321f
7
- data.tar.gz: acbc625375496d9c5358b74c109426e4309721b4cdf6a70af7a75a9922880ef6347b0f04731025a59964fcf2293c7496e53e4d6074f7965cc765f56c7b55c840
6
+ metadata.gz: ae1925efe3ec075ad960b83427cab23e021557e3508dc341c680cf811521e8ccf0a1dd8fc1ba746918617e8b9d9a41d075ade60fd823e4426be71e158079bed7
7
+ data.tar.gz: 6a52b60eadf748ed2ea016112ab7e74a937603cca925015efcdd71038d19abf39f5935c695b7dce8569b59dae94de110c6d1a3cfbd2db1887c00b6fabc770cb9
@@ -98,6 +98,11 @@ module ACH
98
98
  bh = batch.header
99
99
  bh.company_name = line[4..19].strip
100
100
  bh.company_identification = line[40..49].gsub(/\A1/, '')
101
+
102
+ # Does not try to guess if company identification is an EIN
103
+ # TODO fix differently when I feel like breaking backwards
104
+ # compatibility.
105
+ bh.full_company_identification = line[40..49]
101
106
  bh.standard_entry_class_code = line[50..52].strip
102
107
  bh.company_entry_description = line[53..62].strip
103
108
  bh.company_descriptive_date = Date.parse(line[63..68]) rescue nil # this can be various formats
@@ -4,6 +4,7 @@ module ACH
4
4
  attr_reader :addendas
5
5
  attr_reader :header
6
6
  attr_reader :control
7
+ attr_accessor :full_company_identification
7
8
 
8
9
  def initialize
9
10
  @entries = []
@@ -20,7 +20,9 @@ module ACH
20
20
 
21
21
  # setter (includes validations)
22
22
  define_method "#{name}=" do | val |
23
- if validate.kind_of?(Regexp)
23
+ if val.nil? && default
24
+ # Leave value as nil, so that default is used.
25
+ elsif validate.kind_of?(Regexp)
24
26
  unless val =~ validate
25
27
  raise InvalidError, "#{val} does not match Regexp #{validate} for field #{name}"
26
28
  end
@@ -1,5 +1,7 @@
1
1
  module ACH::Records
2
2
  class BatchHeader < Record
3
+ attr_accessor :full_company_identification
4
+
3
5
  @fields = []
4
6
 
5
7
  const_field :record_type, '5'
@@ -1,3 +1,3 @@
1
1
  module ACH
2
- VERSION = '0.5.0'.freeze
2
+ VERSION = '0.5.1'.freeze
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ach
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.0
4
+ version: 0.5.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jared Morgan
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2016-05-06 00:00:00.000000000 Z
12
+ date: 2016-08-18 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rake