change_health 3.3.0 → 3.4.0

Sign up to get free protection for your applications and to get access to all the features.
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