era_835_parser 0.1.9 → 0.1.10
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 +4 -4
- data/README.md +1 -0
- data/lib/era_835_parser/parser.rb +21 -25
- data/lib/era_835_parser/version.rb +1 -1
- data/spec/era_835_parser_spec.rb +21 -0
- metadata +6 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1b394c2e2133a067275fc162829b81b1e2a2a6b7794c3263796f7bc307560b24
|
4
|
+
data.tar.gz: 050a54cc12e40d5d302fb90d978c2da811271a32c97248e019961ca5795a059d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 74ba8ed4f544b671ffa85bb88e9557b3a36bef85563cf5a4b6644e3167417705ed0bdc4c676614836081754dbb4f6845c75f4af6950d9ce3a6b4d067eaf096b0
|
7
|
+
data.tar.gz: 1e1f44f0771c48278b527168fe706d60178f17f4ca84e1fd74b81eb01f2aba68b27fcc59da197b1147e09fd795f9a8918ac9c268b11ba333987effc78cc70e9e
|
data/README.md
CHANGED
@@ -66,6 +66,7 @@ if !era[:checks].nil?
|
|
66
66
|
puts line_item[:total_adjustment_amount] # Total adjustment amount (integer)
|
67
67
|
puts line_item[:remark_code] # Remark code
|
68
68
|
puts line_item[:remarks] # Remarks
|
69
|
+
puts line_item[:reference_number] # Reference number
|
69
70
|
if !line_item[:adjustment_groups].nil?
|
70
71
|
line_item[:adjustment_groups].each do |adjustment_group_counter, adjustment_group|
|
71
72
|
puts adjustment_group[:adjustment_group] # Adjustment group
|
@@ -66,6 +66,7 @@ module Era835Parser
|
|
66
66
|
claim_date_end = false
|
67
67
|
service_date = false
|
68
68
|
floating_adjustment_group_code = nil
|
69
|
+
returned_reference_number = false
|
69
70
|
|
70
71
|
file_or_file_path = !file.nil? ? file : file_path
|
71
72
|
opened_file = file_or_file_path.respond_to?(:write) ? file_or_file_path : open(file_or_file_path)
|
@@ -294,7 +295,6 @@ module Era835Parser
|
|
294
295
|
# puts element_type
|
295
296
|
# puts subline
|
296
297
|
# https://www.healthpartnersplans.com/media/100017241/254_Electronic-Remittance-Advice.pdf
|
297
|
-
|
298
298
|
subline.split("*").each_with_index do |element, index|
|
299
299
|
case element_type
|
300
300
|
when "ST"
|
@@ -457,15 +457,6 @@ module Era835Parser
|
|
457
457
|
# Originating Company Supplemental Code
|
458
458
|
# puts "Originating Company Supplemental Code: #{element}"
|
459
459
|
end
|
460
|
-
when "REF"
|
461
|
-
case index
|
462
|
-
when 1
|
463
|
-
# Receiver Identification Number
|
464
|
-
# puts "Receiver Identification Number: #{element}"
|
465
|
-
when 2
|
466
|
-
# Receiver REFERENCE IDENTIFICATION
|
467
|
-
# puts "Receiver REFERENCE IDENTIFICATION: #{element}"
|
468
|
-
end
|
469
460
|
when "N1"
|
470
461
|
if !payer_identification_loop && !payee_identification_loop
|
471
462
|
payer_identification_loop = true
|
@@ -562,21 +553,6 @@ module Era835Parser
|
|
562
553
|
payee_identification_loop = true
|
563
554
|
end
|
564
555
|
end
|
565
|
-
when "REF"
|
566
|
-
case index
|
567
|
-
when 1
|
568
|
-
# Additional Payee Identification Qualifier
|
569
|
-
# puts "Additional Payee Identification Qualifier: #{element}"
|
570
|
-
when 2
|
571
|
-
# Reference Identification Code
|
572
|
-
# puts "Reference Identification Code: #{element}"
|
573
|
-
when 3
|
574
|
-
# Additional Payee Identification Qualifier
|
575
|
-
# puts "Additional Payee Identification Qualifier: #{element}"
|
576
|
-
when 4
|
577
|
-
# Reference Identification Code
|
578
|
-
# puts "Reference Identification Code: #{element}"
|
579
|
-
end
|
580
556
|
when "PER"
|
581
557
|
case index
|
582
558
|
when 1
|
@@ -980,6 +956,26 @@ module Era835Parser
|
|
980
956
|
# Original Units of Service Count
|
981
957
|
# puts "Original Units of Service Count: #{element}"
|
982
958
|
end
|
959
|
+
when "REF"
|
960
|
+
case index
|
961
|
+
when 1
|
962
|
+
# Additional Payee Identification Qualifier
|
963
|
+
# puts "Additional Payee Identification Qualifier: #{element}"
|
964
|
+
returned_reference_number = true if element == '6R'
|
965
|
+
when 2
|
966
|
+
# Reference Identification Code
|
967
|
+
# puts "Reference Identification Code: #{element}"
|
968
|
+
if individual_line_item != {} && svc_counter >= 1 && returned_reference_number && !element.nil?
|
969
|
+
individual_line_item[:reference_number] = element
|
970
|
+
returned_reference_number = false
|
971
|
+
end
|
972
|
+
when 3
|
973
|
+
# Additional Payee Identification Qualifier
|
974
|
+
# puts "Additional Payee Identification Qualifier: #{element}"
|
975
|
+
when 4
|
976
|
+
# Reference Identification Code
|
977
|
+
# puts "Reference Identification Code: #{element}"
|
978
|
+
end
|
983
979
|
end
|
984
980
|
era[:checks] = checks
|
985
981
|
end
|
data/spec/era_835_parser_spec.rb
CHANGED
@@ -128,6 +128,9 @@ RSpec.describe Era835Parser::Parser do
|
|
128
128
|
it 'returns the Remarks' do
|
129
129
|
expect(@era[:checks]['70408535'][:eras][0][:line_items][0][:remarks]).to eq(nil)
|
130
130
|
end
|
131
|
+
it 'returns the Reference number' do
|
132
|
+
expect(@era[:checks]['70408535'][:eras][0][:line_items][0][:reference_number]).to eq(nil)
|
133
|
+
end
|
131
134
|
context 'Adjustment group #0' do
|
132
135
|
it 'returns the Adjustment group' do
|
133
136
|
expect(@era[:checks]['70408535'][:eras][0][:line_items][0][:adjustment_groups][0][:adjustment_group]).to eq("Contractual Obligation")
|
@@ -279,6 +282,9 @@ RSpec.describe Era835Parser::Parser do
|
|
279
282
|
it 'returns the Remarks' do
|
280
283
|
expect(@era[:checks]['02790758'][:eras][0][:line_items][0][:remarks]).to eq(nil)
|
281
284
|
end
|
285
|
+
it 'returns the Reference number' do
|
286
|
+
expect(@era[:checks]['02790758'][:eras][0][:line_items][0][:reference_number]).to eq('0001')
|
287
|
+
end
|
282
288
|
context 'Adjustment group #0' do
|
283
289
|
it 'returns the Adjustment group' do
|
284
290
|
expect(@era[:checks]['02790758'][:eras][0][:line_items][0][:adjustment_groups][0][:adjustment_group]).to eq("Contractual Obligation")
|
@@ -336,6 +342,9 @@ RSpec.describe Era835Parser::Parser do
|
|
336
342
|
it 'returns the Remarks' do
|
337
343
|
expect(@era[:checks]['02790758'][:eras][0][:line_items][1][:remarks]).to eq(nil)
|
338
344
|
end
|
345
|
+
it 'returns the Reference number' do
|
346
|
+
expect(@era[:checks]['02790758'][:eras][0][:line_items][1][:reference_number]).to eq('0002')
|
347
|
+
end
|
339
348
|
context 'Adjustment group #0' do
|
340
349
|
it 'returns the Adjustment group' do
|
341
350
|
expect(@era[:checks]['02790758'][:eras][0][:line_items][1][:adjustment_groups][0][:adjustment_group]).to eq("Patient Responsibility")
|
@@ -376,6 +385,9 @@ RSpec.describe Era835Parser::Parser do
|
|
376
385
|
it 'returns the Remarks' do
|
377
386
|
expect(@era[:checks]['02790758'][:eras][0][:line_items][2][:remarks]).to eq(nil)
|
378
387
|
end
|
388
|
+
it 'returns the Reference number' do
|
389
|
+
expect(@era[:checks]['02790758'][:eras][0][:line_items][2][:reference_number]).to eq('0003')
|
390
|
+
end
|
379
391
|
end
|
380
392
|
end
|
381
393
|
end
|
@@ -510,6 +522,9 @@ RSpec.describe Era835Parser::Parser do
|
|
510
522
|
it 'returns the Remarks' do
|
511
523
|
expect(@era[:checks]['02790758'][:eras][0][:line_items][0][:remarks]).to eq(nil)
|
512
524
|
end
|
525
|
+
it 'returns the Reference number' do
|
526
|
+
expect(@era[:checks]['02790758'][:eras][0][:line_items][0][:reference_number]).to eq('0001')
|
527
|
+
end
|
513
528
|
context 'Adjustment group #0' do
|
514
529
|
it 'returns the Adjustment group' do
|
515
530
|
expect(@era[:checks]['02790758'][:eras][0][:line_items][0][:adjustment_groups][0][:adjustment_group]).to eq("Contractual Obligation")
|
@@ -567,6 +582,9 @@ RSpec.describe Era835Parser::Parser do
|
|
567
582
|
it 'returns the Remarks' do
|
568
583
|
expect(@era[:checks]['02790758'][:eras][0][:line_items][1][:remarks]).to eq(nil)
|
569
584
|
end
|
585
|
+
it 'returns the Reference number' do
|
586
|
+
expect(@era[:checks]['02790758'][:eras][0][:line_items][1][:reference_number]).to eq('0002')
|
587
|
+
end
|
570
588
|
context 'Adjustment group #0' do
|
571
589
|
it 'returns the Adjustment group' do
|
572
590
|
expect(@era[:checks]['02790758'][:eras][0][:line_items][1][:adjustment_groups][0][:adjustment_group]).to eq("Patient Responsibility")
|
@@ -607,6 +625,9 @@ RSpec.describe Era835Parser::Parser do
|
|
607
625
|
it 'returns the Remarks' do
|
608
626
|
expect(@era[:checks]['02790758'][:eras][0][:line_items][2][:remarks]).to eq(nil)
|
609
627
|
end
|
628
|
+
it 'returns the Reference number' do
|
629
|
+
expect(@era[:checks]['02790758'][:eras][0][:line_items][2][:reference_number]).to eq('0003')
|
630
|
+
end
|
610
631
|
end
|
611
632
|
end
|
612
633
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: era_835_parser
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.10
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Kevin S. Dias
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-
|
11
|
+
date: 2020-11-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -84,7 +84,7 @@ homepage: https://github.com/diasks2/era_835_parser
|
|
84
84
|
licenses:
|
85
85
|
- MIT
|
86
86
|
metadata: {}
|
87
|
-
post_install_message:
|
87
|
+
post_install_message:
|
88
88
|
rdoc_options: []
|
89
89
|
require_paths:
|
90
90
|
- lib
|
@@ -99,9 +99,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
99
99
|
- !ruby/object:Gem::Version
|
100
100
|
version: '0'
|
101
101
|
requirements: []
|
102
|
-
rubyforge_project:
|
102
|
+
rubyforge_project:
|
103
103
|
rubygems_version: 2.7.6
|
104
|
-
signing_key:
|
104
|
+
signing_key:
|
105
105
|
specification_version: 4
|
106
106
|
summary: Electronic Remittance Advice (ERA) 835 parser
|
107
107
|
test_files:
|