Class: ChangeHealth::Response::EligibilityBenefits
- Inherits:
-
Array
- Object
- Array
- ChangeHealth::Response::EligibilityBenefits
- Defined in:
- lib/change_health/response/eligibility/eligibility_benefits.rb
Instance Method Summary collapse
- #+(other) ⇒ Object
- #find_by(**kwargs) ⇒ Object
- #in_network ⇒ Object
-
#initialize(benefits) ⇒ EligibilityBenefits
constructor
A new instance of EligibilityBenefits.
- #where(**kwargs) ⇒ Object
- #where_not(**kwargs) ⇒ Object
Constructor Details
#initialize(benefits) ⇒ EligibilityBenefits
Returns a new instance of EligibilityBenefits.
6 7 8 |
# File 'lib/change_health/response/eligibility/eligibility_benefits.rb', line 6 def initialize(benefits) super(benefits.map { |benefit| ChangeHealth::Response::EligibilityBenefit.new(benefit) }) end |
Instance Method Details
#+(other) ⇒ Object
18 19 20 |
# File 'lib/change_health/response/eligibility/eligibility_benefits.rb', line 18 def +(other) self.class.new(to_a + other.to_a) end |
#find_by(**kwargs) ⇒ Object
22 23 24 |
# File 'lib/change_health/response/eligibility/eligibility_benefits.rb', line 22 def find_by(**kwargs) find { |benefit| kwargs.all? { |k, v| benefit[k].is_a?(Array) ? benefit[k].include?(v) : v == benefit[k] } } end |
#in_network ⇒ Object
26 27 28 |
# File 'lib/change_health/response/eligibility/eligibility_benefits.rb', line 26 def in_network where(inPlanNetworkIndicatorCode: 'Y') end |
#where(**kwargs) ⇒ Object
10 11 12 |
# File 'lib/change_health/response/eligibility/eligibility_benefits.rb', line 10 def where(**kwargs) self.class.new(self.select { |benefit| kwargs.all? { |k, v| benefit_matches?(benefit, k, v) } }) end |
#where_not(**kwargs) ⇒ Object
14 15 16 |
# File 'lib/change_health/response/eligibility/eligibility_benefits.rb', line 14 def where_not(**kwargs) self.class.new(reject { |benefit| kwargs.all? { |k, v| benefit_matches?(benefit, k, v) } }) end |