change_health 3.3.0 → 3.4.0

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
  SHA256:
3
- metadata.gz: 771e550998ba619e8f20ad0482df45d2414f106588d674e8764fbe9af1fbd4d7
4
- data.tar.gz: 3c35d671b8cecbc38e9d5984756c5af8f0e4c18ed4e86ed2877f30d670ef1146
3
+ metadata.gz: 222248c389fc002887ea5d18a7816f09c0f101cf8d17d08881187b865dc0eb02
4
+ data.tar.gz: 4d25ff11a0b92fce81ca5945a659ecbf3e9c36249ff4bbaae638a7ae40efe951
5
5
  SHA512:
6
- metadata.gz: 3ece66009484991d0be79850df3b8327449099b5829c26100ddd0304ec6759be8a12e4bc0e348c044f5d2247cc8f4e923aa4a26dea5f59a008786d5d42f8fb6f
7
- data.tar.gz: d598da2e9b5051bfee077aa7da86ed663befc801d68efb6a29a476a5e6655fdeb886f62be843a65316a6e03cd8ef83a2c845d8bad05a70d7cc42fb2d78727369
6
+ metadata.gz: 0f2f0cb83a1d1145bad8ced944e9d460c78956ef46a8559bf7aedad70861a469a9f18671b6f9ca497ea9ad8ef64e82e13ac6d341fa0e34a5f86ee195de52e006
7
+ data.tar.gz: dac851fb3820730a9856fe714e6ab0f923db17a00cc76f4886053fc5c50492fae0cc54d4cd38d4cefed0add480dfd3af70abc0e4d7c2006d36147c92fd03dd4b
data/CHANGELOG.md CHANGED
@@ -4,6 +4,10 @@ All notable changes to this project will be documented in this file.
4
4
  The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
5
5
  and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
6
6
 
7
+ # [3.4.0] - 2022-03-23
8
+ ### Added
9
+ * Report835Claim - check_or_eft_trace_number & check_issue_or_eft_effective_date
10
+
7
11
  # [3.3.0] - 2022-02-11
8
12
  ### Added
9
13
  * Report277Claim - 'message' from informationClaimStatuses, clearinghouse_trace_number, patient_account_number, referenced_transaction_trace_number, trading_partner_claim_number
@@ -236,6 +240,7 @@ Added the ability to hit professional claim submission API. For more details, se
236
240
  - Authentication
237
241
  - Configuration
238
242
 
243
+ [3.4.0]: https://github.com/WeInfuse/change_health/compare/v3.3.0...v3.4.0
239
244
  [3.3.0]: https://github.com/WeInfuse/change_health/compare/v3.2.0...v3.3.0
240
245
  [3.2.0]: https://github.com/WeInfuse/change_health/compare/v3.1.0...v3.2.0
241
246
  [3.1.0]: https://github.com/WeInfuse/change_health/compare/v3.0.0...v3.1.0
@@ -2,6 +2,8 @@ module ChangeHealth
2
2
  module Response
3
3
  module Claim
4
4
  class Report835Claim < ReportClaim
5
+ property :check_issue_or_eft_effective_date, required: false
6
+ property :check_or_eft_trace_number, required: false
5
7
  property :claim_payment_remark_codes, required: false
6
8
  property :patient_control_number, required: false
7
9
  property :payer_claim_control_number, required: false
@@ -7,6 +7,18 @@ module ChangeHealth
7
7
  @raw['transactions']
8
8
  end
9
9
 
10
+ def check_or_eft_trace_number
11
+ transactions&.first&.dig('paymentAndRemitReassociationDetails', 'checkOrEFTTraceNumber')
12
+ end
13
+
14
+ def check_issue_or_eft_effective_date
15
+ ChangeHealth::Models::PARSE_DATE.call(transactions&.first&.dig('financialInformation', 'checkIssueOrEFTEffectiveDate'))
16
+ end
17
+
18
+ def payer_identification
19
+ transactions&.first&.dig('payer', 'payerIdentificationNumber')
20
+ end
21
+
10
22
  # Only one payer per report
11
23
  def payer_name
12
24
  transactions&.first&.dig('payer')&.dig('name')
@@ -28,13 +40,6 @@ module ChangeHealth
28
40
  report_claims = []
29
41
 
30
42
  transactions&.each do |transaction|
31
- payment_method_code = transaction.dig('financialInformation', 'paymentMethodCode')
32
- payer_name = transaction.dig('payer', 'name')
33
- payer_identification = transaction.dig('payer', 'payerIdentificationNumber')
34
- report_creation_date = ChangeHealth::Models::PARSE_DATE.call(transaction['productionDate'])
35
- total_actual_provider_payment_amount = transaction.dig('financialInformation',
36
- 'totalActualProviderPaymentAmount')
37
-
38
43
  transaction['detailInfo']&.each do |detail_info|
39
44
  detail_info['paymentInfo']&.each do |payment_info|
40
45
  patient_control_number = payment_info.dig('claimPaymentInfo', 'patientControlNumber')
@@ -56,8 +61,7 @@ module ChangeHealth
56
61
 
57
62
  service_date_begin = nil
58
63
  service_date_end = nil
59
- service_lines = []
60
- payment_info['serviceLines']&.each do |service_line|
64
+ service_lines = payment_info['serviceLines']&.map do |service_line|
61
65
  service_line_date = ChangeHealth::Models::PARSE_DATE.call(service_line['serviceDate'])
62
66
  if service_date_begin.nil? || service_line_date < service_date_begin
63
67
  service_date_begin = service_line_date
@@ -70,8 +74,7 @@ module ChangeHealth
70
74
  line_item_provider_payment_amount = service_line.dig('servicePaymentInformation',
71
75
  'lineItemProviderPaymentAmount')
72
76
 
73
- service_adjustments = []
74
- service_line['serviceAdjustments']&.each do |service_adjustment|
77
+ service_adjustments = service_line['serviceAdjustments']&.map do |service_adjustment|
75
78
  adjustments = {}
76
79
  service_adjustment_index = 1
77
80
  while service_adjustment["adjustmentReasonCode#{service_adjustment_index}"]
@@ -83,22 +86,21 @@ module ChangeHealth
83
86
 
84
87
  claim_adjustment_group_code = service_adjustment['claimAdjustmentGroupCode']
85
88
 
86
- service_adjustments << Report835ServiceAdjustment.new(
89
+ Report835ServiceAdjustment.new(
87
90
  adjustments: adjustments,
88
91
  claim_adjustment_group_code: claim_adjustment_group_code
89
92
  )
90
93
  end
91
94
 
92
- health_care_check_remark_codes = []
93
- service_line['healthCareCheckRemarkCodes']&.each do |health_care_check_remark_code|
94
- health_care_check_remark_codes << Report835HealthCareCheckRemarkCode.new(
95
+ health_care_check_remark_codes = service_line['healthCareCheckRemarkCodes']&.map do |health_care_check_remark_code|
96
+ Report835HealthCareCheckRemarkCode.new(
95
97
  code_list_qualifier_code: health_care_check_remark_code['codeListQualifierCode'],
96
98
  code_list_qualifier_code_value: health_care_check_remark_code['codeListQualifierCodeValue'],
97
99
  remark_code: health_care_check_remark_code['remarkCode']
98
100
  )
99
101
  end
100
102
 
101
- service_lines << Report835ServiceLine.new(
103
+ Report835ServiceLine.new(
102
104
  adjudicated_procedure_code: adjudicated_procedure_code,
103
105
  allowed_actual: allowed_actual,
104
106
  line_item_charge_amount: line_item_charge_amount,
@@ -109,6 +111,8 @@ module ChangeHealth
109
111
  end
110
112
 
111
113
  report_claims << Report835Claim.new(
114
+ check_issue_or_eft_effective_date: check_issue_or_eft_effective_date,
115
+ check_or_eft_trace_number: check_or_eft_trace_number,
112
116
  claim_payment_remark_codes: claim_payment_remark_codes,
113
117
  patient_control_number: patient_control_number,
114
118
  patient_first_name: patient_first_name,
@@ -1,3 +1,3 @@
1
1
  module ChangeHealth
2
- VERSION = '3.3.0'.freeze
2
+ VERSION = '3.4.0'.freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: change_health
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.3.0
4
+ version: 3.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mike Crockett
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-02-11 00:00:00.000000000 Z
11
+ date: 2022-03-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: httparty