luca-jp 0.20.1 → 0.20.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/luca/jp/version.rb +1 -1
- data/lib/luca_salary/jp/insurance.rb +5 -2
- data/lib/luca_salary/jp.rb +25 -4
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a73bee2f25ed4af12e32ccc92d1c0ab5348c2bcac591c8a7607b0fb9a053c7c8
|
4
|
+
data.tar.gz: f955ad158c4d83234e838411f9de681318a13dbba546f1b0fe79d6e0cba3cb98
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7521797d4b074badbbc3e2c7f6a8e4a9469acb05df1e7a1acacef7e3570fbadbbcf167ce109de06171eb0c18d3a519907a9c233fb3c90a98611e9bd045c65aee
|
7
|
+
data.tar.gz: 2aca672676e1fafe39865b4724ff259b99c191cfb049a99bcdc364d7ace00ba85724ad7931d95db4602a0b7fbe80af55f102a6b88f7fcd4c79776f735702ebf9
|
data/lib/luca/jp/version.rb
CHANGED
@@ -23,8 +23,11 @@ class InsuranceJP < LucaRecord::Base
|
|
23
23
|
load_data(File.open(file_path))
|
24
24
|
end
|
25
25
|
|
26
|
-
def health_insurance_salary(rank)
|
27
|
-
|
26
|
+
def health_insurance_salary(rank, elder)
|
27
|
+
return nil if elder.nil?
|
28
|
+
|
29
|
+
category = elder ? 'insurance_elder_salary' : 'insurance_younger_salary'
|
30
|
+
round6(select_health_insurance(rank).dig(category))
|
28
31
|
end
|
29
32
|
|
30
33
|
def pension_salary(rank)
|
data/lib/luca_salary/jp.rb
CHANGED
@@ -21,7 +21,10 @@ class LucaSalary::Jp < LucaSalary::Base
|
|
21
21
|
扶養控除 = self.class.扶養控除対象者の数(profile['family'], Date.new(date.year, 12, 31))
|
22
22
|
{}.tap do |h|
|
23
23
|
select_code(profile, '1').each { |k, v| h[k] = v }
|
24
|
-
h['201'] = @insurance.health_insurance_salary(
|
24
|
+
h['201'] = @insurance.health_insurance_salary(
|
25
|
+
insurance_rank(profile),
|
26
|
+
介護保険?(profile['birth_date'])
|
27
|
+
)
|
25
28
|
h['202'] = @insurance.pension_salary(pension_rank(profile))
|
26
29
|
tax_base = self.class.sum_code(h, '1', income_tax_exception) - h['201'] - h['202']
|
27
30
|
h['203'] = JpNationalTax::IncomeTax.calc_kouran(tax_base, Date.today, 配偶者控除, 扶養控除)
|
@@ -29,7 +32,7 @@ class LucaSalary::Jp < LucaSalary::Base
|
|
29
32
|
select_code(profile, '3').each { |k, v| h[k] = v }
|
30
33
|
select_code(profile, '4').each { |k, v| h[k] = v }
|
31
34
|
h.merge!(amount_by_code(h))
|
32
|
-
h['id'] = profile.
|
35
|
+
h['id'] = profile.fetch('id')
|
33
36
|
end
|
34
37
|
end
|
35
38
|
|
@@ -149,14 +152,32 @@ class LucaSalary::Jp < LucaSalary::Base
|
|
149
152
|
family.map { |person| 各家族の扶養控除の額(person, date) > 0 ? 1 : 0 }.sum
|
150
153
|
end
|
151
154
|
|
152
|
-
|
153
|
-
|
155
|
+
private
|
156
|
+
|
157
|
+
# 満40歳に達したときより徴収が始まり、満65歳に達したときより徴収されなくなる
|
158
|
+
#
|
159
|
+
def 介護保険?(birth_date)
|
160
|
+
return nil if birth_date.nil?
|
161
|
+
|
162
|
+
due_init = birth_date.next_year(40).prev_day
|
163
|
+
return false if @date.year < due_init.year
|
164
|
+
return false if @date.year == due_init.year && @date.month < due_init.month
|
165
|
+
|
166
|
+
due_last = birth_date.next_year(65).prev_day
|
167
|
+
return false if @date.year > due_last.year
|
168
|
+
return false if @date.year == due_last.year && @date.month >= due_last.month
|
169
|
+
|
170
|
+
true
|
154
171
|
end
|
155
172
|
|
156
173
|
def insurance_rank(dat)
|
157
174
|
dat.dig('insurance', 'rank')
|
158
175
|
end
|
159
176
|
|
177
|
+
def income_tax_exception
|
178
|
+
%w[116 118 119 11A 11B]
|
179
|
+
end
|
180
|
+
|
160
181
|
def pension_rank(dat)
|
161
182
|
dat.dig('pension', 'rank')
|
162
183
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: luca-jp
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.20.
|
4
|
+
version: 0.20.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Chuma Takahiro
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2025-04-
|
11
|
+
date: 2025-04-23 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: lucabook
|