Class: Formulary::QHPDrugTierCostSharing

Inherits:
Object
  • Object
show all
Defined in:
lib/formulary/qhp_drug_tier_cost_sharing.rb

Overview

Cost sharing information for a drug tier as represented by QHP data

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(data) ⇒ QHPDrugTierCostSharing

Returns a new instance of QHPDrugTierCostSharing.



8
9
10
# File 'lib/formulary/qhp_drug_tier_cost_sharing.rb', line 8

def initialize(data)
  @data = data
end

Instance Attribute Details

#dataObject (readonly)

Returns the value of attribute data.



6
7
8
# File 'lib/formulary/qhp_drug_tier_cost_sharing.rb', line 6

def data
  @data
end

Instance Method Details

#coinsurance_optionObject



16
17
18
# File 'lib/formulary/qhp_drug_tier_cost_sharing.rb', line 16

def coinsurance_option
  option_with_default_value(data[:coinsurance_opt], coinsurance_rate).downcase
end

#coinsurance_rateObject



28
29
30
# File 'lib/formulary/qhp_drug_tier_cost_sharing.rb', line 28

def coinsurance_rate
  data[:coinsurance_rate]
end

#copay_amountObject



24
25
26
# File 'lib/formulary/qhp_drug_tier_cost_sharing.rb', line 24

def copay_amount
  data[:copay_amount]
end

#copay_optionObject



12
13
14
# File 'lib/formulary/qhp_drug_tier_cost_sharing.rb', line 12

def copay_option
  option_with_default_value(data[:copay_opt], copay_amount).downcase
end

#option_with_default_value(option, rate) ⇒ Object (private)



34
35
36
37
38
# File 'lib/formulary/qhp_drug_tier_cost_sharing.rb', line 34

def option_with_default_value(option, rate)
  return option unless option.nil?

  rate.positive? ? 'AFTER-DEDUCTIBLE' : 'NO-CHARGE'
end

#pharmacy_typeObject



20
21
22
# File 'lib/formulary/qhp_drug_tier_cost_sharing.rb', line 20

def pharmacy_type
  data[:pharmacy_type].downcase
end