Class: ChangeHealth::Request::Claim::Submission
- Inherits:
-
Hashie::Trash
- Object
- Hashie::Trash
- ChangeHealth::Request::Claim::Submission
- Defined in:
- lib/change_health/request/submission.rb
Constant Summary collapse
- PROFESSIONAL_ENDPOINT =
'/medicalnetwork/professionalclaims/v3'.freeze
- INSTITUTIONAL_ENDPOINT =
'/medicalnetwork/institutionalclaims/v1'.freeze
- HEALTH_CHECK_SUFFIX =
'/healthcheck'.freeze
- SUBMISSION_SUFFIX =
'/submission'.freeze
- VALIDATION_SUFFIX =
'/validation'.freeze
- ENDPOINT =
Deprecated but still here for backwards compatibility
PROFESSIONAL_ENDPOINT- HEALTH_CHECK_ENDPOINT =
ENDPOINT + '/healthcheck'.freeze
- SUBMISSION_ENDPOINT =
ENDPOINT + '/submission'.freeze
- VALIDATION_ENDPOINT =
ENDPOINT + '/validation'.freeze
Class Method Summary collapse
Instance Method Summary collapse
- #add_provider(provider) ⇒ Object
- #institutional_headers ⇒ Object
- #professional_headers ⇒ Object
- #submission(is_professional: true) ⇒ Object
- #validation(is_professional: true) ⇒ Object
Class Method Details
.health_check(is_professional: true) ⇒ Object
62 63 64 65 66 |
# File 'lib/change_health/request/submission.rb', line 62 def self.health_check(is_professional: true) endpoint = is_professional ? PROFESSIONAL_ENDPOINT : INSTITUTIONAL_ENDPOINT endpoint += HEALTH_CHECK_SUFFIX ChangeHealth::Connection.new.request(endpoint: endpoint, verb: :get) end |
.ping(is_professional: true) ⇒ Object
68 69 70 |
# File 'lib/change_health/request/submission.rb', line 68 def self.ping(is_professional: true) health_check(is_professional: is_professional) end |
Instance Method Details
#add_provider(provider) ⇒ Object
33 34 35 36 |
# File 'lib/change_health/request/submission.rb', line 33 def add_provider(provider) self[:providers] ||= [] self[:providers] << provider end |
#institutional_headers ⇒ Object
83 84 85 86 87 88 89 90 91 92 |
# File 'lib/change_health/request/submission.rb', line 83 def institutional_headers return unless self[:headers] { 'X-CHC-InstitutionalClaims-BillerId' => self[:headers][:biller_id], 'X-CHC-InstitutionalClaims-Pwd' => self[:headers][:password], 'X-CHC-InstitutionalClaims-SubmitterId' => self[:headers][:submitter_id], 'X-CHC-InstitutionalClaims-Username' => self[:headers][:username] } end |
#professional_headers ⇒ Object
72 73 74 75 76 77 78 79 80 81 |
# File 'lib/change_health/request/submission.rb', line 72 def professional_headers return unless self[:headers] { 'X-CHC-ClaimSubmission-BillerId' => self[:headers][:biller_id], 'X-CHC-ClaimSubmission-Pwd' => self[:headers][:password], 'X-CHC-ClaimSubmission-SubmitterId' => self[:headers][:submitter_id], 'X-CHC-ClaimSubmission-Username' => self[:headers][:username] } end |
#submission(is_professional: true) ⇒ Object
38 39 40 41 42 43 44 45 46 47 48 |
# File 'lib/change_health/request/submission.rb', line 38 def submission(is_professional: true) endpoint = is_professional ? PROFESSIONAL_ENDPOINT : INSTITUTIONAL_ENDPOINT endpoint += SUBMISSION_SUFFIX ChangeHealth::Response::Claim::SubmissionData.new( response: ChangeHealth::Connection.new.request( endpoint: endpoint, body: to_h, headers: is_professional ? professional_headers : institutional_headers ) ) end |
#validation(is_professional: true) ⇒ Object
50 51 52 53 54 55 56 57 58 59 60 |
# File 'lib/change_health/request/submission.rb', line 50 def validation(is_professional: true) endpoint = is_professional ? PROFESSIONAL_ENDPOINT : INSTITUTIONAL_ENDPOINT endpoint += VALIDATION_SUFFIX ChangeHealth::Response::Claim::SubmissionData.new( response: ChangeHealth::Connection.new.request( endpoint: endpoint, body: to_h, headers: is_professional ? professional_headers : institutional_headers ) ) end |