Class: ChangeHealth::Request::Claim::Submission

Inherits:
Hashie::Trash
  • Object
show all
Defined in:
lib/change_health/request/submission.rb

Constant Summary collapse

ENDPOINT =
'/medicalnetwork/professionalclaims/v3'.freeze
HEALTH_CHECK_ENDPOINT =
ENDPOINT + '/healthcheck'.freeze
SUBMISSION_ENDPOINT =
ENDPOINT + '/submission'.freeze
VALIDATION_ENDPOINT =
ENDPOINT + '/validation'.freeze

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.health_checkObject



38
39
40
# File 'lib/change_health/request/submission.rb', line 38

def self.health_check
  ChangeHealth::Connection.new.request(endpoint: HEALTH_CHECK_ENDPOINT, verb: :get)
end

.pingObject



42
43
44
# File 'lib/change_health/request/submission.rb', line 42

def self.ping
  health_check
end

Instance Method Details

#add_provider(provider) ⇒ Object



21
22
23
24
# File 'lib/change_health/request/submission.rb', line 21

def add_provider(provider)
  self[:providers] ||= []
  self[:providers] << provider
end

#professional_headersObject



46
47
48
49
50
51
52
53
54
55
# File 'lib/change_health/request/submission.rb', line 46

def professional_headers
  if self[:headers]
    extra_headers = {}
    extra_headers['X-CHC-ClaimSubmission-SubmitterId'] = self[:headers][:submitter_id]
    extra_headers['X-CHC-ClaimSubmission-BillerId'] = self[:headers][:biller_id]
    extra_headers['X-CHC-ClaimSubmission-Username'] = self[:headers][:username]
    extra_headers['X-CHC-ClaimSubmission-Pwd'] = self[:headers][:password]
    extra_headers
  end
end

#submissionObject



26
27
28
29
30
# File 'lib/change_health/request/submission.rb', line 26

def submission
  ChangeHealth::Response::Claim::SubmissionData.new(response: ChangeHealth::Connection.new.request(
    endpoint: SUBMISSION_ENDPOINT, body: to_h, headers: professional_headers
  ))
end

#validationObject



32
33
34
35
36
# File 'lib/change_health/request/submission.rb', line 32

def validation
  ChangeHealth::Response::Claim::SubmissionData.new(response: ChangeHealth::Connection.new.request(
    endpoint: VALIDATION_ENDPOINT, body: to_h, headers: professional_headers
  ))
end