class PayrolleeCz::TaxClaimChildConcept
Attributes
relief_code[R]
Public Class Methods
new(tag_code, values)
click to toggle source
Calls superclass method
# File lib/payrollee_cz/concepts/tax_claim_child_concept.rb, line 7 def initialize(tag_code, values) super(PayConceptGateway::REFCON_TAX_CLAIM_CHILD, tag_code) init_values(values) end
Public Instance Methods
compute_result_value(year, relief_code)
click to toggle source
# File lib/payrollee_cz/concepts/tax_claim_child_concept.rb, line 23 def compute_result_value(year, relief_code) relief_claim_amount(year, relief_code) end
dup_with_value(code, values)
click to toggle source
# File lib/payrollee_cz/concepts/tax_claim_child_concept.rb, line 16 def dup_with_value(code, values) new_concept = self.dup new_concept.init_code(code) new_concept.init_values(values) return new_concept end
evaluate(period, tag_config, results)
click to toggle source
# File lib/payrollee_cz/concepts/tax_claim_child_concept.rb, line 27 def evaluate(period, tag_config, results) relief_value = compute_result_value(period.year, relief_code) result_values = {tax_relief: relief_value} TaxClaimResult.new(@tag_code, @code, self, result_values) end
export_xml(xml_builder)
click to toggle source
# File lib/payrollee_cz/concepts/tax_claim_child_concept.rb, line 59 def export_xml(xml_builder) attributes = {} attributes[:relief_code] = @relief_code xml_builder.spec_value(attributes) end
init_values(values)
click to toggle source
# File lib/payrollee_cz/concepts/tax_claim_child_concept.rb, line 12 def init_values(values) @relief_code = values[:relief_code] || 0 end
relief_claim_amount(year, code)
click to toggle source
# File lib/payrollee_cz/concepts/tax_claim_child_concept.rb, line 35 def relief_claim_amount(year, code) relief_amount = 0 return relief_amount if code == 0 if year >= 2012 relief_amount = 1117 elsif year >= 2010 relief_amount = 967 elsif year == 2009 relief_amount = 890 elsif year == 2008 relief_amount = 890 elsif year >= 2006 relief_amount = 500 elsif year >= 2005 relief_amount = 500 else relief_amount = 0 end if code == 2 return 2*relief_amount end return relief_amount end