candidhealth 0.39.5 → 0.39.7
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/lib/candidhealth/charge_capture/v_1/client.rb +8 -0
- data/lib/candidhealth/commons/types/procedure_modifier.rb +1 -0
- data/lib/candidhealth/encounters/v_4/client.rb +12 -4
- data/lib/candidhealth/encounters/v_4/types/payer_plan_group_payer_does_not_match_insurance_card_error.rb +77 -0
- data/lib/candidhealth/fee_schedules/v_3/client.rb +16 -4
- data/lib/candidhealth/fee_schedules/v_3/types/dimension_match.rb +16 -2
- data/lib/candidhealth/fee_schedules/v_3/types/dimensions.rb +16 -2
- data/lib/candidhealth/fee_schedules/v_3/types/match_payer_plan_groups.rb +85 -0
- data/lib/candidhealth/fee_schedules/v_3/types/optional_dimensions.rb +15 -2
- data/lib/candidhealth/fee_schedules/v_3/types/payer_plan_group_does_not_match_rate_payer_error.rb +75 -0
- data/lib/candidhealth/fee_schedules/v_3/types/validation_error.rb +39 -14
- data/lib/candidhealth/insurance_cards/v_2/types/insurance_card.rb +10 -2
- data/lib/candidhealth/insurance_cards/v_2/types/insurance_card_base.rb +10 -2
- data/lib/candidhealth/insurance_cards/v_2/types/insurance_card_create.rb +10 -2
- data/lib/candidhealth/organization_providers/v_2/types/license_type.rb +27 -0
- data/lib/candidhealth/pre_encounter/appointments/v_1/client.rb +98 -4
- data/lib/candidhealth/pre_encounter/appointments/v_1/types/appointment.rb +2 -2
- data/lib/candidhealth/pre_encounter/appointments/v_1/types/mutable_appointment.rb +2 -2
- data/lib/candidhealth/pre_encounter/appointments/v_1/types/visit.rb +96 -0
- data/lib/candidhealth/pre_encounter/appointments/v_1/types/visits_page.rb +98 -0
- data/lib/candidhealth/pre_encounter/common/types/external_identifier.rb +87 -0
- data/lib/candidhealth/pre_encounter/common/types/external_provider.rb +10 -2
- data/lib/candidhealth/pre_encounter/coverages/v_1/client.rb +89 -4
- data/lib/candidhealth/pre_encounter/coverages/v_1/types/address.rb +118 -0
- data/lib/candidhealth/pre_encounter/coverages/v_1/types/benefits_related_entity.rb +11 -2
- data/lib/candidhealth/pre_encounter/coverages/v_1/types/coverages_page.rb +98 -0
- data/lib/candidhealth/pre_encounter/coverages/v_1/types/expanded_member_info.rb +133 -0
- data/lib/candidhealth/pre_encounter/coverages/v_1/types/insurance_plan.rb +10 -2
- data/lib/candidhealth/pre_encounter/coverages/v_1/types/insurance_type_code.rb +1 -0
- data/lib/candidhealth/pre_encounter/coverages/v_1/types/member_info.rb +93 -0
- data/lib/candidhealth/pre_encounter/coverages/v_1/types/plan_metadata.rb +38 -3
- data/lib/candidhealth/pre_encounter/eligibility_checks/client.rb +32 -0
- data/lib/candidhealth/pre_encounter/eligibility_checks/v_1/client.rb +116 -0
- data/lib/candidhealth/pre_encounter/eligibility_checks/v_1/types/eligibility_check.rb +119 -0
- data/lib/candidhealth/pre_encounter/eligibility_checks/v_1/types/eligibility_request.rb +135 -0
- data/lib/candidhealth/pre_encounter/eligibility_checks/v_1/types/eligibility_response.rb +15 -0
- data/lib/candidhealth/pre_encounter/eligibility_checks/v_1/types/encounter.rb +83 -0
- data/lib/candidhealth/pre_encounter/eligibility_checks/v_1/types/individual_provider.rb +81 -0
- data/lib/candidhealth/pre_encounter/eligibility_checks/v_1/types/organization_provider.rb +74 -0
- data/lib/candidhealth/pre_encounter/eligibility_checks/v_1/types/parsed_response.rb +99 -0
- data/lib/candidhealth/pre_encounter/eligibility_checks/v_1/types/provider.rb +66 -0
- data/lib/candidhealth/pre_encounter/eligibility_checks/v_1/types/request_correction.rb +79 -0
- data/lib/candidhealth/pre_encounter/lists/v_1/types/appointment_list_item.rb +5 -5
- data/lib/candidhealth/pre_encounter/patients/v_1/client.rb +70 -14
- data/lib/candidhealth/pre_encounter/patients/v_1/types/mutable_patient.rb +14 -2
- data/lib/candidhealth/pre_encounter/patients/v_1/types/mutable_patient_with_mrn.rb +14 -2
- data/lib/candidhealth/pre_encounter/patients/v_1/types/patient.rb +13 -1
- data/lib/requests.rb +2 -2
- data/lib/types_export.rb +19 -0
- metadata +23 -2
@@ -1,6 +1,7 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
require_relative "related_entity_contact"
|
4
|
+
require_relative "service_type_code"
|
4
5
|
require "ostruct"
|
5
6
|
require "json"
|
6
7
|
|
@@ -18,6 +19,8 @@ module CandidApiClient
|
|
18
19
|
attr_reader :entity_name
|
19
20
|
# @return [Array<CandidApiClient::PreEncounter::Coverages::V1::Types::RelatedEntityContact>]
|
20
21
|
attr_reader :contact_information
|
22
|
+
# @return [Array<CandidApiClient::PreEncounter::Coverages::V1::Types::ServiceTypeCode>]
|
23
|
+
attr_reader :service_type_codes
|
21
24
|
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
22
25
|
attr_reader :additional_properties
|
23
26
|
# @return [Object]
|
@@ -30,20 +33,23 @@ module CandidApiClient
|
|
30
33
|
# @param entity_type [String]
|
31
34
|
# @param entity_name [String]
|
32
35
|
# @param contact_information [Array<CandidApiClient::PreEncounter::Coverages::V1::Types::RelatedEntityContact>]
|
36
|
+
# @param service_type_codes [Array<CandidApiClient::PreEncounter::Coverages::V1::Types::ServiceTypeCode>]
|
33
37
|
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
34
38
|
# @return [CandidApiClient::PreEncounter::Coverages::V1::Types::BenefitsRelatedEntity]
|
35
39
|
def initialize(entity_identifier: OMIT, entity_type: OMIT, entity_name: OMIT, contact_information: OMIT,
|
36
|
-
additional_properties: nil)
|
40
|
+
service_type_codes: OMIT, additional_properties: nil)
|
37
41
|
@entity_identifier = entity_identifier if entity_identifier != OMIT
|
38
42
|
@entity_type = entity_type if entity_type != OMIT
|
39
43
|
@entity_name = entity_name if entity_name != OMIT
|
40
44
|
@contact_information = contact_information if contact_information != OMIT
|
45
|
+
@service_type_codes = service_type_codes if service_type_codes != OMIT
|
41
46
|
@additional_properties = additional_properties
|
42
47
|
@_field_set = {
|
43
48
|
"entityIdentifier": entity_identifier,
|
44
49
|
"entityType": entity_type,
|
45
50
|
"entityName": entity_name,
|
46
|
-
"contactInformation": contact_information
|
51
|
+
"contactInformation": contact_information,
|
52
|
+
"serviceTypeCodes": service_type_codes
|
47
53
|
}.reject do |_k, v|
|
48
54
|
v == OMIT
|
49
55
|
end
|
@@ -63,11 +69,13 @@ module CandidApiClient
|
|
63
69
|
item = item.to_json
|
64
70
|
CandidApiClient::PreEncounter::Coverages::V1::Types::RelatedEntityContact.from_json(json_object: item)
|
65
71
|
end
|
72
|
+
service_type_codes = struct["serviceTypeCodes"]
|
66
73
|
new(
|
67
74
|
entity_identifier: entity_identifier,
|
68
75
|
entity_type: entity_type,
|
69
76
|
entity_name: entity_name,
|
70
77
|
contact_information: contact_information,
|
78
|
+
service_type_codes: service_type_codes,
|
71
79
|
additional_properties: struct
|
72
80
|
)
|
73
81
|
end
|
@@ -90,6 +98,7 @@ module CandidApiClient
|
|
90
98
|
obj.entity_type&.is_a?(String) != false || raise("Passed value for field obj.entity_type is not the expected type, validation failed.")
|
91
99
|
obj.entity_name&.is_a?(String) != false || raise("Passed value for field obj.entity_name is not the expected type, validation failed.")
|
92
100
|
obj.contact_information&.is_a?(Array) != false || raise("Passed value for field obj.contact_information is not the expected type, validation failed.")
|
101
|
+
obj.service_type_codes&.is_a?(Array) != false || raise("Passed value for field obj.service_type_codes is not the expected type, validation failed.")
|
93
102
|
end
|
94
103
|
end
|
95
104
|
end
|
@@ -0,0 +1,98 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative "coverage"
|
4
|
+
require "ostruct"
|
5
|
+
require "json"
|
6
|
+
|
7
|
+
module CandidApiClient
|
8
|
+
module PreEncounter
|
9
|
+
module Coverages
|
10
|
+
module V1
|
11
|
+
module Types
|
12
|
+
class CoveragesPage
|
13
|
+
# @return [Array<CandidApiClient::PreEncounter::Coverages::V1::Types::Coverage>]
|
14
|
+
attr_reader :items
|
15
|
+
# @return [String]
|
16
|
+
attr_reader :next_page_token
|
17
|
+
# @return [String]
|
18
|
+
attr_reader :prev_page_token
|
19
|
+
# @return [Integer]
|
20
|
+
attr_reader :total
|
21
|
+
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
22
|
+
attr_reader :additional_properties
|
23
|
+
# @return [Object]
|
24
|
+
attr_reader :_field_set
|
25
|
+
protected :_field_set
|
26
|
+
|
27
|
+
OMIT = Object.new
|
28
|
+
|
29
|
+
# @param items [Array<CandidApiClient::PreEncounter::Coverages::V1::Types::Coverage>]
|
30
|
+
# @param next_page_token [String]
|
31
|
+
# @param prev_page_token [String]
|
32
|
+
# @param total [Integer]
|
33
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
34
|
+
# @return [CandidApiClient::PreEncounter::Coverages::V1::Types::CoveragesPage]
|
35
|
+
def initialize(items:, total:, next_page_token: OMIT, prev_page_token: OMIT, additional_properties: nil)
|
36
|
+
@items = items
|
37
|
+
@next_page_token = next_page_token if next_page_token != OMIT
|
38
|
+
@prev_page_token = prev_page_token if prev_page_token != OMIT
|
39
|
+
@total = total
|
40
|
+
@additional_properties = additional_properties
|
41
|
+
@_field_set = {
|
42
|
+
"items": items,
|
43
|
+
"next_page_token": next_page_token,
|
44
|
+
"prev_page_token": prev_page_token,
|
45
|
+
"total": total
|
46
|
+
}.reject do |_k, v|
|
47
|
+
v == OMIT
|
48
|
+
end
|
49
|
+
end
|
50
|
+
|
51
|
+
# Deserialize a JSON object to an instance of CoveragesPage
|
52
|
+
#
|
53
|
+
# @param json_object [String]
|
54
|
+
# @return [CandidApiClient::PreEncounter::Coverages::V1::Types::CoveragesPage]
|
55
|
+
def self.from_json(json_object:)
|
56
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
57
|
+
parsed_json = JSON.parse(json_object)
|
58
|
+
items = parsed_json["items"]&.map do |item|
|
59
|
+
item = item.to_json
|
60
|
+
CandidApiClient::PreEncounter::Coverages::V1::Types::Coverage.from_json(json_object: item)
|
61
|
+
end
|
62
|
+
next_page_token = struct["next_page_token"]
|
63
|
+
prev_page_token = struct["prev_page_token"]
|
64
|
+
total = struct["total"]
|
65
|
+
new(
|
66
|
+
items: items,
|
67
|
+
next_page_token: next_page_token,
|
68
|
+
prev_page_token: prev_page_token,
|
69
|
+
total: total,
|
70
|
+
additional_properties: struct
|
71
|
+
)
|
72
|
+
end
|
73
|
+
|
74
|
+
# Serialize an instance of CoveragesPage to a JSON object
|
75
|
+
#
|
76
|
+
# @return [String]
|
77
|
+
def to_json(*_args)
|
78
|
+
@_field_set&.to_json
|
79
|
+
end
|
80
|
+
|
81
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
82
|
+
# hash and check each fields type against the current object's property
|
83
|
+
# definitions.
|
84
|
+
#
|
85
|
+
# @param obj [Object]
|
86
|
+
# @return [Void]
|
87
|
+
def self.validate_raw(obj:)
|
88
|
+
obj.items.is_a?(Array) != false || raise("Passed value for field obj.items is not the expected type, validation failed.")
|
89
|
+
obj.next_page_token&.is_a?(String) != false || raise("Passed value for field obj.next_page_token is not the expected type, validation failed.")
|
90
|
+
obj.prev_page_token&.is_a?(String) != false || raise("Passed value for field obj.prev_page_token is not the expected type, validation failed.")
|
91
|
+
obj.total.is_a?(Integer) != false || raise("Passed value for field obj.total is not the expected type, validation failed.")
|
92
|
+
end
|
93
|
+
end
|
94
|
+
end
|
95
|
+
end
|
96
|
+
end
|
97
|
+
end
|
98
|
+
end
|
@@ -0,0 +1,133 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative "address"
|
4
|
+
require "ostruct"
|
5
|
+
require "json"
|
6
|
+
|
7
|
+
module CandidApiClient
|
8
|
+
module PreEncounter
|
9
|
+
module Coverages
|
10
|
+
module V1
|
11
|
+
module Types
|
12
|
+
class ExpandedMemberInfo
|
13
|
+
# @return [String]
|
14
|
+
attr_reader :member_id
|
15
|
+
# @return [String]
|
16
|
+
attr_reader :group_number
|
17
|
+
# @return [String]
|
18
|
+
attr_reader :first_name
|
19
|
+
# @return [String]
|
20
|
+
attr_reader :middle_name
|
21
|
+
# @return [String]
|
22
|
+
attr_reader :last_name
|
23
|
+
# @return [String]
|
24
|
+
attr_reader :date_of_birth
|
25
|
+
# @return [String]
|
26
|
+
attr_reader :gender
|
27
|
+
# @return [CandidApiClient::PreEncounter::Coverages::V1::Types::Address]
|
28
|
+
attr_reader :address
|
29
|
+
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
30
|
+
attr_reader :additional_properties
|
31
|
+
# @return [Object]
|
32
|
+
attr_reader :_field_set
|
33
|
+
protected :_field_set
|
34
|
+
|
35
|
+
OMIT = Object.new
|
36
|
+
|
37
|
+
# @param member_id [String]
|
38
|
+
# @param group_number [String]
|
39
|
+
# @param first_name [String]
|
40
|
+
# @param middle_name [String]
|
41
|
+
# @param last_name [String]
|
42
|
+
# @param date_of_birth [String]
|
43
|
+
# @param gender [String]
|
44
|
+
# @param address [CandidApiClient::PreEncounter::Coverages::V1::Types::Address]
|
45
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
46
|
+
# @return [CandidApiClient::PreEncounter::Coverages::V1::Types::ExpandedMemberInfo]
|
47
|
+
def initialize(member_id: OMIT, group_number: OMIT, first_name: OMIT, middle_name: OMIT, last_name: OMIT,
|
48
|
+
date_of_birth: OMIT, gender: OMIT, address: OMIT, additional_properties: nil)
|
49
|
+
@member_id = member_id if member_id != OMIT
|
50
|
+
@group_number = group_number if group_number != OMIT
|
51
|
+
@first_name = first_name if first_name != OMIT
|
52
|
+
@middle_name = middle_name if middle_name != OMIT
|
53
|
+
@last_name = last_name if last_name != OMIT
|
54
|
+
@date_of_birth = date_of_birth if date_of_birth != OMIT
|
55
|
+
@gender = gender if gender != OMIT
|
56
|
+
@address = address if address != OMIT
|
57
|
+
@additional_properties = additional_properties
|
58
|
+
@_field_set = {
|
59
|
+
"member_id": member_id,
|
60
|
+
"group_number": group_number,
|
61
|
+
"first_name": first_name,
|
62
|
+
"middle_name": middle_name,
|
63
|
+
"last_name": last_name,
|
64
|
+
"date_of_birth": date_of_birth,
|
65
|
+
"gender": gender,
|
66
|
+
"address": address
|
67
|
+
}.reject do |_k, v|
|
68
|
+
v == OMIT
|
69
|
+
end
|
70
|
+
end
|
71
|
+
|
72
|
+
# Deserialize a JSON object to an instance of ExpandedMemberInfo
|
73
|
+
#
|
74
|
+
# @param json_object [String]
|
75
|
+
# @return [CandidApiClient::PreEncounter::Coverages::V1::Types::ExpandedMemberInfo]
|
76
|
+
def self.from_json(json_object:)
|
77
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
78
|
+
parsed_json = JSON.parse(json_object)
|
79
|
+
member_id = struct["member_id"]
|
80
|
+
group_number = struct["group_number"]
|
81
|
+
first_name = struct["first_name"]
|
82
|
+
middle_name = struct["middle_name"]
|
83
|
+
last_name = struct["last_name"]
|
84
|
+
date_of_birth = struct["date_of_birth"]
|
85
|
+
gender = struct["gender"]
|
86
|
+
if parsed_json["address"].nil?
|
87
|
+
address = nil
|
88
|
+
else
|
89
|
+
address = parsed_json["address"].to_json
|
90
|
+
address = CandidApiClient::PreEncounter::Coverages::V1::Types::Address.from_json(json_object: address)
|
91
|
+
end
|
92
|
+
new(
|
93
|
+
member_id: member_id,
|
94
|
+
group_number: group_number,
|
95
|
+
first_name: first_name,
|
96
|
+
middle_name: middle_name,
|
97
|
+
last_name: last_name,
|
98
|
+
date_of_birth: date_of_birth,
|
99
|
+
gender: gender,
|
100
|
+
address: address,
|
101
|
+
additional_properties: struct
|
102
|
+
)
|
103
|
+
end
|
104
|
+
|
105
|
+
# Serialize an instance of ExpandedMemberInfo to a JSON object
|
106
|
+
#
|
107
|
+
# @return [String]
|
108
|
+
def to_json(*_args)
|
109
|
+
@_field_set&.to_json
|
110
|
+
end
|
111
|
+
|
112
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
113
|
+
# hash and check each fields type against the current object's property
|
114
|
+
# definitions.
|
115
|
+
#
|
116
|
+
# @param obj [Object]
|
117
|
+
# @return [Void]
|
118
|
+
def self.validate_raw(obj:)
|
119
|
+
obj.member_id&.is_a?(String) != false || raise("Passed value for field obj.member_id is not the expected type, validation failed.")
|
120
|
+
obj.group_number&.is_a?(String) != false || raise("Passed value for field obj.group_number is not the expected type, validation failed.")
|
121
|
+
obj.first_name&.is_a?(String) != false || raise("Passed value for field obj.first_name is not the expected type, validation failed.")
|
122
|
+
obj.middle_name&.is_a?(String) != false || raise("Passed value for field obj.middle_name is not the expected type, validation failed.")
|
123
|
+
obj.last_name&.is_a?(String) != false || raise("Passed value for field obj.last_name is not the expected type, validation failed.")
|
124
|
+
obj.date_of_birth&.is_a?(String) != false || raise("Passed value for field obj.date_of_birth is not the expected type, validation failed.")
|
125
|
+
obj.gender&.is_a?(String) != false || raise("Passed value for field obj.gender is not the expected type, validation failed.")
|
126
|
+
obj.address.nil? || CandidApiClient::PreEncounter::Coverages::V1::Types::Address.validate_raw(obj: obj.address)
|
127
|
+
end
|
128
|
+
end
|
129
|
+
end
|
130
|
+
end
|
131
|
+
end
|
132
|
+
end
|
133
|
+
end
|
@@ -33,6 +33,8 @@ module CandidApiClient
|
|
33
33
|
attr_reader :period
|
34
34
|
# @return [String]
|
35
35
|
attr_reader :insurance_card_image_locator
|
36
|
+
# @return [String] The ID of the Candid configured payer plan group associated with this coverage
|
37
|
+
attr_reader :payer_plan_group_id
|
36
38
|
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
37
39
|
attr_reader :additional_properties
|
38
40
|
# @return [Object]
|
@@ -51,10 +53,11 @@ module CandidApiClient
|
|
51
53
|
# @param type [CandidApiClient::PreEncounter::Coverages::V1::Types::InsuranceTypeCode]
|
52
54
|
# @param period [CandidApiClient::PreEncounter::Common::Types::Period]
|
53
55
|
# @param insurance_card_image_locator [String]
|
56
|
+
# @param payer_plan_group_id [String] The ID of the Candid configured payer plan group associated with this coverage
|
54
57
|
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
55
58
|
# @return [CandidApiClient::PreEncounter::Coverages::V1::Types::InsurancePlan]
|
56
59
|
def initialize(member_id:, payer_id:, payer_name:, additional_payer_information: OMIT, group_number: OMIT,
|
57
|
-
name: OMIT, plan_type: OMIT, type: OMIT, period: OMIT, insurance_card_image_locator: OMIT, additional_properties: nil)
|
60
|
+
name: OMIT, plan_type: OMIT, type: OMIT, period: OMIT, insurance_card_image_locator: OMIT, payer_plan_group_id: OMIT, additional_properties: nil)
|
58
61
|
@member_id = member_id
|
59
62
|
@payer_id = payer_id
|
60
63
|
@payer_name = payer_name
|
@@ -65,6 +68,7 @@ module CandidApiClient
|
|
65
68
|
@type = type if type != OMIT
|
66
69
|
@period = period if period != OMIT
|
67
70
|
@insurance_card_image_locator = insurance_card_image_locator if insurance_card_image_locator != OMIT
|
71
|
+
@payer_plan_group_id = payer_plan_group_id if payer_plan_group_id != OMIT
|
68
72
|
@additional_properties = additional_properties
|
69
73
|
@_field_set = {
|
70
74
|
"member_id": member_id,
|
@@ -76,7 +80,8 @@ module CandidApiClient
|
|
76
80
|
"plan_type": plan_type,
|
77
81
|
"type": type,
|
78
82
|
"period": period,
|
79
|
-
"insurance_card_image_locator": insurance_card_image_locator
|
83
|
+
"insurance_card_image_locator": insurance_card_image_locator,
|
84
|
+
"payer_plan_group_id": payer_plan_group_id
|
80
85
|
}.reject do |_k, v|
|
81
86
|
v == OMIT
|
82
87
|
end
|
@@ -109,6 +114,7 @@ module CandidApiClient
|
|
109
114
|
period = CandidApiClient::PreEncounter::Common::Types::Period.from_json(json_object: period)
|
110
115
|
end
|
111
116
|
insurance_card_image_locator = struct["insurance_card_image_locator"]
|
117
|
+
payer_plan_group_id = struct["payer_plan_group_id"]
|
112
118
|
new(
|
113
119
|
member_id: member_id,
|
114
120
|
payer_id: payer_id,
|
@@ -120,6 +126,7 @@ module CandidApiClient
|
|
120
126
|
type: type,
|
121
127
|
period: period,
|
122
128
|
insurance_card_image_locator: insurance_card_image_locator,
|
129
|
+
payer_plan_group_id: payer_plan_group_id,
|
123
130
|
additional_properties: struct
|
124
131
|
)
|
125
132
|
end
|
@@ -148,6 +155,7 @@ module CandidApiClient
|
|
148
155
|
obj.type&.is_a?(CandidApiClient::PreEncounter::Coverages::V1::Types::InsuranceTypeCode) != false || raise("Passed value for field obj.type is not the expected type, validation failed.")
|
149
156
|
obj.period.nil? || CandidApiClient::PreEncounter::Common::Types::Period.validate_raw(obj: obj.period)
|
150
157
|
obj.insurance_card_image_locator&.is_a?(String) != false || raise("Passed value for field obj.insurance_card_image_locator is not the expected type, validation failed.")
|
158
|
+
obj.payer_plan_group_id&.is_a?(String) != false || raise("Passed value for field obj.payer_plan_group_id is not the expected type, validation failed.")
|
151
159
|
end
|
152
160
|
end
|
153
161
|
end
|
@@ -0,0 +1,93 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "date"
|
4
|
+
require "ostruct"
|
5
|
+
require "json"
|
6
|
+
|
7
|
+
module CandidApiClient
|
8
|
+
module PreEncounter
|
9
|
+
module Coverages
|
10
|
+
module V1
|
11
|
+
module Types
|
12
|
+
class MemberInfo
|
13
|
+
# @return [String]
|
14
|
+
attr_reader :member_id
|
15
|
+
# @return [String]
|
16
|
+
attr_reader :first_name
|
17
|
+
# @return [String]
|
18
|
+
attr_reader :last_name
|
19
|
+
# @return [Date]
|
20
|
+
attr_reader :date_of_birth
|
21
|
+
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
22
|
+
attr_reader :additional_properties
|
23
|
+
# @return [Object]
|
24
|
+
attr_reader :_field_set
|
25
|
+
protected :_field_set
|
26
|
+
|
27
|
+
OMIT = Object.new
|
28
|
+
|
29
|
+
# @param member_id [String]
|
30
|
+
# @param first_name [String]
|
31
|
+
# @param last_name [String]
|
32
|
+
# @param date_of_birth [Date]
|
33
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
34
|
+
# @return [CandidApiClient::PreEncounter::Coverages::V1::Types::MemberInfo]
|
35
|
+
def initialize(member_id:, first_name:, last_name:, date_of_birth:, additional_properties: nil)
|
36
|
+
@member_id = member_id
|
37
|
+
@first_name = first_name
|
38
|
+
@last_name = last_name
|
39
|
+
@date_of_birth = date_of_birth
|
40
|
+
@additional_properties = additional_properties
|
41
|
+
@_field_set = {
|
42
|
+
"member_id": member_id,
|
43
|
+
"first_name": first_name,
|
44
|
+
"last_name": last_name,
|
45
|
+
"date_of_birth": date_of_birth
|
46
|
+
}
|
47
|
+
end
|
48
|
+
|
49
|
+
# Deserialize a JSON object to an instance of MemberInfo
|
50
|
+
#
|
51
|
+
# @param json_object [String]
|
52
|
+
# @return [CandidApiClient::PreEncounter::Coverages::V1::Types::MemberInfo]
|
53
|
+
def self.from_json(json_object:)
|
54
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
55
|
+
parsed_json = JSON.parse(json_object)
|
56
|
+
member_id = struct["member_id"]
|
57
|
+
first_name = struct["first_name"]
|
58
|
+
last_name = struct["last_name"]
|
59
|
+
date_of_birth = (Date.parse(parsed_json["date_of_birth"]) unless parsed_json["date_of_birth"].nil?)
|
60
|
+
new(
|
61
|
+
member_id: member_id,
|
62
|
+
first_name: first_name,
|
63
|
+
last_name: last_name,
|
64
|
+
date_of_birth: date_of_birth,
|
65
|
+
additional_properties: struct
|
66
|
+
)
|
67
|
+
end
|
68
|
+
|
69
|
+
# Serialize an instance of MemberInfo to a JSON object
|
70
|
+
#
|
71
|
+
# @return [String]
|
72
|
+
def to_json(*_args)
|
73
|
+
@_field_set&.to_json
|
74
|
+
end
|
75
|
+
|
76
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
77
|
+
# hash and check each fields type against the current object's property
|
78
|
+
# definitions.
|
79
|
+
#
|
80
|
+
# @param obj [Object]
|
81
|
+
# @return [Void]
|
82
|
+
def self.validate_raw(obj:)
|
83
|
+
obj.member_id.is_a?(String) != false || raise("Passed value for field obj.member_id is not the expected type, validation failed.")
|
84
|
+
obj.first_name.is_a?(String) != false || raise("Passed value for field obj.first_name is not the expected type, validation failed.")
|
85
|
+
obj.last_name.is_a?(String) != false || raise("Passed value for field obj.last_name is not the expected type, validation failed.")
|
86
|
+
obj.date_of_birth.is_a?(Date) != false || raise("Passed value for field obj.date_of_birth is not the expected type, validation failed.")
|
87
|
+
end
|
88
|
+
end
|
89
|
+
end
|
90
|
+
end
|
91
|
+
end
|
92
|
+
end
|
93
|
+
end
|
@@ -2,6 +2,7 @@
|
|
2
2
|
|
3
3
|
require "date"
|
4
4
|
require_relative "plan_date"
|
5
|
+
require_relative "expanded_member_info"
|
5
6
|
require "ostruct"
|
6
7
|
require "json"
|
7
8
|
|
@@ -11,6 +12,8 @@ module CandidApiClient
|
|
11
12
|
module V1
|
12
13
|
module Types
|
13
14
|
class PlanMetadata
|
15
|
+
# @return [String]
|
16
|
+
attr_reader :payer_name
|
14
17
|
# @return [String]
|
15
18
|
attr_reader :insurance_type
|
16
19
|
# @return [String]
|
@@ -27,6 +30,10 @@ module CandidApiClient
|
|
27
30
|
attr_reader :end_date
|
28
31
|
# @return [Array<CandidApiClient::PreEncounter::Coverages::V1::Types::PlanDate>]
|
29
32
|
attr_reader :plan_dates
|
33
|
+
# @return [CandidApiClient::PreEncounter::Coverages::V1::Types::ExpandedMemberInfo]
|
34
|
+
attr_reader :subscriber
|
35
|
+
# @return [CandidApiClient::PreEncounter::Coverages::V1::Types::ExpandedMemberInfo]
|
36
|
+
attr_reader :dependent
|
30
37
|
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
31
38
|
attr_reader :additional_properties
|
32
39
|
# @return [Object]
|
@@ -35,6 +42,7 @@ module CandidApiClient
|
|
35
42
|
|
36
43
|
OMIT = Object.new
|
37
44
|
|
45
|
+
# @param payer_name [String]
|
38
46
|
# @param insurance_type [String]
|
39
47
|
# @param insurance_type_code [String]
|
40
48
|
# @param plan_name [String]
|
@@ -43,10 +51,13 @@ module CandidApiClient
|
|
43
51
|
# @param start_date [Date]
|
44
52
|
# @param end_date [Date]
|
45
53
|
# @param plan_dates [Array<CandidApiClient::PreEncounter::Coverages::V1::Types::PlanDate>]
|
54
|
+
# @param subscriber [CandidApiClient::PreEncounter::Coverages::V1::Types::ExpandedMemberInfo]
|
55
|
+
# @param dependent [CandidApiClient::PreEncounter::Coverages::V1::Types::ExpandedMemberInfo]
|
46
56
|
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
47
57
|
# @return [CandidApiClient::PreEncounter::Coverages::V1::Types::PlanMetadata]
|
48
|
-
def initialize(
|
49
|
-
group_number: OMIT, start_date: OMIT, end_date: OMIT, plan_dates: OMIT, additional_properties: nil)
|
58
|
+
def initialize(payer_name: OMIT, insurance_type: OMIT, insurance_type_code: OMIT, plan_name: OMIT,
|
59
|
+
member_id: OMIT, group_number: OMIT, start_date: OMIT, end_date: OMIT, plan_dates: OMIT, subscriber: OMIT, dependent: OMIT, additional_properties: nil)
|
60
|
+
@payer_name = payer_name if payer_name != OMIT
|
50
61
|
@insurance_type = insurance_type if insurance_type != OMIT
|
51
62
|
@insurance_type_code = insurance_type_code if insurance_type_code != OMIT
|
52
63
|
@plan_name = plan_name if plan_name != OMIT
|
@@ -55,8 +66,11 @@ module CandidApiClient
|
|
55
66
|
@start_date = start_date if start_date != OMIT
|
56
67
|
@end_date = end_date if end_date != OMIT
|
57
68
|
@plan_dates = plan_dates if plan_dates != OMIT
|
69
|
+
@subscriber = subscriber if subscriber != OMIT
|
70
|
+
@dependent = dependent if dependent != OMIT
|
58
71
|
@additional_properties = additional_properties
|
59
72
|
@_field_set = {
|
73
|
+
"payer_name": payer_name,
|
60
74
|
"insurance_type": insurance_type,
|
61
75
|
"insurance_type_code": insurance_type_code,
|
62
76
|
"plan_name": plan_name,
|
@@ -64,7 +78,9 @@ module CandidApiClient
|
|
64
78
|
"group_number": group_number,
|
65
79
|
"start_date": start_date,
|
66
80
|
"end_date": end_date,
|
67
|
-
"plan_dates": plan_dates
|
81
|
+
"plan_dates": plan_dates,
|
82
|
+
"subscriber": subscriber,
|
83
|
+
"dependent": dependent
|
68
84
|
}.reject do |_k, v|
|
69
85
|
v == OMIT
|
70
86
|
end
|
@@ -77,6 +93,7 @@ module CandidApiClient
|
|
77
93
|
def self.from_json(json_object:)
|
78
94
|
struct = JSON.parse(json_object, object_class: OpenStruct)
|
79
95
|
parsed_json = JSON.parse(json_object)
|
96
|
+
payer_name = struct["payer_name"]
|
80
97
|
insurance_type = struct["insurance_type"]
|
81
98
|
insurance_type_code = struct["insurance_type_code"]
|
82
99
|
plan_name = struct["plan_name"]
|
@@ -88,7 +105,20 @@ module CandidApiClient
|
|
88
105
|
item = item.to_json
|
89
106
|
CandidApiClient::PreEncounter::Coverages::V1::Types::PlanDate.from_json(json_object: item)
|
90
107
|
end
|
108
|
+
if parsed_json["subscriber"].nil?
|
109
|
+
subscriber = nil
|
110
|
+
else
|
111
|
+
subscriber = parsed_json["subscriber"].to_json
|
112
|
+
subscriber = CandidApiClient::PreEncounter::Coverages::V1::Types::ExpandedMemberInfo.from_json(json_object: subscriber)
|
113
|
+
end
|
114
|
+
if parsed_json["dependent"].nil?
|
115
|
+
dependent = nil
|
116
|
+
else
|
117
|
+
dependent = parsed_json["dependent"].to_json
|
118
|
+
dependent = CandidApiClient::PreEncounter::Coverages::V1::Types::ExpandedMemberInfo.from_json(json_object: dependent)
|
119
|
+
end
|
91
120
|
new(
|
121
|
+
payer_name: payer_name,
|
92
122
|
insurance_type: insurance_type,
|
93
123
|
insurance_type_code: insurance_type_code,
|
94
124
|
plan_name: plan_name,
|
@@ -97,6 +127,8 @@ module CandidApiClient
|
|
97
127
|
start_date: start_date,
|
98
128
|
end_date: end_date,
|
99
129
|
plan_dates: plan_dates,
|
130
|
+
subscriber: subscriber,
|
131
|
+
dependent: dependent,
|
100
132
|
additional_properties: struct
|
101
133
|
)
|
102
134
|
end
|
@@ -115,6 +147,7 @@ module CandidApiClient
|
|
115
147
|
# @param obj [Object]
|
116
148
|
# @return [Void]
|
117
149
|
def self.validate_raw(obj:)
|
150
|
+
obj.payer_name&.is_a?(String) != false || raise("Passed value for field obj.payer_name is not the expected type, validation failed.")
|
118
151
|
obj.insurance_type&.is_a?(String) != false || raise("Passed value for field obj.insurance_type is not the expected type, validation failed.")
|
119
152
|
obj.insurance_type_code&.is_a?(String) != false || raise("Passed value for field obj.insurance_type_code is not the expected type, validation failed.")
|
120
153
|
obj.plan_name&.is_a?(String) != false || raise("Passed value for field obj.plan_name is not the expected type, validation failed.")
|
@@ -123,6 +156,8 @@ module CandidApiClient
|
|
123
156
|
obj.start_date&.is_a?(Date) != false || raise("Passed value for field obj.start_date is not the expected type, validation failed.")
|
124
157
|
obj.end_date&.is_a?(Date) != false || raise("Passed value for field obj.end_date is not the expected type, validation failed.")
|
125
158
|
obj.plan_dates&.is_a?(Array) != false || raise("Passed value for field obj.plan_dates is not the expected type, validation failed.")
|
159
|
+
obj.subscriber.nil? || CandidApiClient::PreEncounter::Coverages::V1::Types::ExpandedMemberInfo.validate_raw(obj: obj.subscriber)
|
160
|
+
obj.dependent.nil? || CandidApiClient::PreEncounter::Coverages::V1::Types::ExpandedMemberInfo.validate_raw(obj: obj.dependent)
|
126
161
|
end
|
127
162
|
end
|
128
163
|
end
|
@@ -0,0 +1,32 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative "../../../requests"
|
4
|
+
require_relative "v_1/client"
|
5
|
+
|
6
|
+
module CandidApiClient
|
7
|
+
module PreEncounter
|
8
|
+
module EligibilityChecks
|
9
|
+
class Client
|
10
|
+
# @return [CandidApiClient::PreEncounter::EligibilityChecks::V1::V1Client]
|
11
|
+
attr_reader :v_1
|
12
|
+
|
13
|
+
# @param request_client [CandidApiClient::RequestClient]
|
14
|
+
# @return [CandidApiClient::PreEncounter::EligibilityChecks::Client]
|
15
|
+
def initialize(request_client:)
|
16
|
+
@v_1 = CandidApiClient::PreEncounter::EligibilityChecks::V1::V1Client.new(request_client: request_client)
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
20
|
+
class AsyncClient
|
21
|
+
# @return [CandidApiClient::PreEncounter::EligibilityChecks::V1::AsyncV1Client]
|
22
|
+
attr_reader :v_1
|
23
|
+
|
24
|
+
# @param request_client [CandidApiClient::AsyncRequestClient]
|
25
|
+
# @return [CandidApiClient::PreEncounter::EligibilityChecks::AsyncClient]
|
26
|
+
def initialize(request_client:)
|
27
|
+
@v_1 = CandidApiClient::PreEncounter::EligibilityChecks::V1::AsyncV1Client.new(request_client: request_client)
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|