Class: TaxJp::SocialInsurances::HealthInsurance

Inherits:
Object
  • Object
show all
Defined in:
lib/tax_jp/social_insurances/health_insurance.rb

Overview

健康保健

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(attrs) ⇒ HealthInsurance

Returns a new instance of HealthInsurance.



11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# File 'lib/tax_jp/social_insurances/health_insurance.rb', line 11

def initialize(attrs)
  @salary = nil

  if attrs.is_a?(Hash)
    @grade = attrs[:grade]
    @valid_from = attrs[:valid_from]
    @valid_until = attrs[:valid_until]
    @prefecture = attrs[:prefecture]
    @general= attrs[:general]
    @care = attrs[:care]
    @particular= attrs[:particular]
    @basic = attrs[:basic]
  elsif attrs.is_a?(Array)
    @valid_from = attrs[0]
    @valid_until = attrs[1]
    @prefecture = attrs[2]
    @general= attrs[3]
    @care = attrs[4]
    @particular= attrs[5]
    @basic = attrs[6]
  end
end

Instance Attribute Details

#basicObject (readonly)

Returns the value of attribute basic.



7
8
9
# File 'lib/tax_jp/social_insurances/health_insurance.rb', line 7

def basic
  @basic
end

#careObject (readonly)

Returns the value of attribute care.



6
7
8
# File 'lib/tax_jp/social_insurances/health_insurance.rb', line 6

def care
  @care
end

#generalObject (readonly)

Returns the value of attribute general.



6
7
8
# File 'lib/tax_jp/social_insurances/health_insurance.rb', line 6

def general
  @general
end

#gradeObject (readonly)

Returns the value of attribute grade.



3
4
5
# File 'lib/tax_jp/social_insurances/health_insurance.rb', line 3

def grade
  @grade
end

#particularObject (readonly)

Returns the value of attribute particular.



7
8
9
# File 'lib/tax_jp/social_insurances/health_insurance.rb', line 7

def particular
  @particular
end

#prefectureObject (readonly)

Returns the value of attribute prefecture.



5
6
7
# File 'lib/tax_jp/social_insurances/health_insurance.rb', line 5

def prefecture
  @prefecture
end

#salaryObject



50
51
52
# File 'lib/tax_jp/social_insurances/health_insurance.rb', line 50

def salary
  @salary || monthly_standard
end

#valid_fromObject (readonly)

Returns the value of attribute valid_from.



4
5
6
# File 'lib/tax_jp/social_insurances/health_insurance.rb', line 4

def valid_from
  @valid_from
end

#valid_untilObject (readonly)

Returns the value of attribute valid_until.



4
5
6
# File 'lib/tax_jp/social_insurances/health_insurance.rb', line 4

def valid_until
  @valid_until
end

Instance Method Details

#general_amountObject



34
35
36
# File 'lib/tax_jp/social_insurances/health_insurance.rb', line 34

def general_amount
  (salary * general).round(1)
end

#general_amount_careObject



42
43
44
# File 'lib/tax_jp/social_insurances/health_insurance.rb', line 42

def general_amount_care
  (salary * (general + care)).round(1) 
end

#general_amount_care_halfObject



46
47
48
# File 'lib/tax_jp/social_insurances/health_insurance.rb', line 46

def general_amount_care_half
  (general_amount_care / 2).floor(1) 
end

#general_amount_halfObject



38
39
40
# File 'lib/tax_jp/social_insurances/health_insurance.rb', line 38

def general_amount_half
  (general_amount / 2).floor(1)
end