class PayrolleeCz::PayTagGateway

Constants

REF_HOURS_ABSENCE
REF_HOURS_WORKING
REF_INCOME_GROSS
REF_INCOME_NETTO
REF_INSURANCE_HEALTH
REF_INSURANCE_HEALTH_BASE
REF_INSURANCE_SOCIAL
REF_INSURANCE_SOCIAL_BASE
REF_SALARY_BASE
REF_SAVINGS_PENSIONS
REF_SCHEDULE_TERM
REF_SCHEDULE_WORK
REF_TAX_ADVANCE
REF_TAX_ADVANCE_BASE
REF_TAX_ADVANCE_FINAL
REF_TAX_BONUS_CHILD
REF_TAX_CLAIM_CHILD
REF_TAX_CLAIM_DISABILITY
REF_TAX_CLAIM_PAYER
REF_TAX_CLAIM_STUDYING
REF_TAX_EMPLOYERS_HEALTH
REF_TAX_EMPLOYERS_SOCIAL
REF_TAX_INCOME_BASE
REF_TAX_RELIEF_CHILD
REF_TAX_RELIEF_PAYER
REF_TAX_WITHHOLD
REF_TAX_WITHHOLD_BASE
REF_TIMESHEET_PERIOD
REF_TIMESHEET_WORK
REF_UNKNOWN
TAG_HOURS_ABSENCE

Absence Hours

TAG_HOURS_WORKING

Work Hours

TAG_INCOME_GROSS
TAG_INCOME_NETTO
TAG_INSURANCE_HEALTH
TAG_INSURANCE_HEALTH_BASE
TAG_INSURANCE_SOCIAL
TAG_INSURANCE_SOCIAL_BASE
TAG_SALARY_BASE

Salary Amount

TAG_SAVINGS_PENSIONS
TAG_SCHEDULE_TERM

Work Time Interval

TAG_SCHEDULE_WORK

Work Shift Schedule

TAG_TAX_ADVANCE
TAG_TAX_ADVANCE_BASE
TAG_TAX_ADVANCE_FINAL
TAG_TAX_BONUS_CHILD
TAG_TAX_CLAIM_CHILD
TAG_TAX_CLAIM_DISABILITY
TAG_TAX_CLAIM_PAYER
TAG_TAX_CLAIM_STUDYING
TAG_TAX_EMPLOYERS_HEALTH
TAG_TAX_EMPLOYERS_SOCIAL
TAG_TAX_INCOME_BASE
TAG_TAX_RELIEF_CHILD
TAG_TAX_RELIEF_PAYER
TAG_TAX_WITHHOLD
TAG_TAX_WITHHOLD_BASE
TAG_TIMESHEET_PERIOD

Job Time Sheet

TAG_TIMESHEET_WORK

Work Time Sheet

TAG_UNKNOWN

Attributes

models[R]

Public Class Methods

new() click to toggle source
# File lib/payrollee_cz/core/pay_tag_gateway.rb, line 92
def initialize
  load_pay_tags
  @models = Hash.new
  @models[TAG_UNKNOWN] = UnknownTag.new
end

Public Instance Methods

classname_for(tag_code_name) click to toggle source
# File lib/payrollee_cz/core/pay_tag_gateway.rb, line 104
def classname_for(tag_code_name)
  tag_name = tag_code_name.match(/TAG_(.*)/)[1]
  class_name = tag_name.underscore.camelize + 'Tag'
  class_name
end
empty_tag_for(term_tag) click to toggle source
# File lib/payrollee_cz/core/pay_tag_gateway.rb, line 136
def empty_tag_for(term_tag)
  empty_tag = tag_for(term_tag.name)
  return empty_tag
end
find_tag(tag_code) click to toggle source
# File lib/payrollee_cz/core/pay_tag_gateway.rb, line 127
def find_tag(tag_code)
  if models.include?(tag_code)
    base_tag = models[tag_code]
  else
    base_tag = models[TAG_UNKNOWN]
  end
  base_tag
end
load_pay_tags() click to toggle source
# File lib/payrollee_cz/core/pay_tag_gateway.rb, line 110
def load_pay_tags
  lib_dir = File.dirname(__FILE__)
  full_pattern = File.join(lib_dir, '../pay_tags', '*.rb')
  Dir.glob(full_pattern).each {|file| require file}
end
tag_for(tag_code_name) click to toggle source
# File lib/payrollee_cz/core/pay_tag_gateway.rb, line 98
def tag_for(tag_code_name)
  tag_class = classname_for(tag_code_name)
  tag_class = self.class.const_get(tag_class)
  tag_class.new
end
tag_from_models(term_tag) click to toggle source

pay tag cache

# File lib/payrollee_cz/core/pay_tag_gateway.rb, line 117
def tag_from_models(term_tag)
  if !models.include?(term_tag.code)
    base_tag = empty_tag_for(term_tag)
    models[term_tag.code] = base_tag
  else
    base_tag = models[term_tag.code]
  end
  base_tag
end