luca-jp 0.1.1 → 0.1.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/luca/jp.rb +1 -0
- data/lib/luca/jp/aoiro.rb +44 -34
- data/lib/luca/jp/chihouzei.rb +5 -50
- data/lib/luca/jp/common.rb +124 -0
- data/lib/luca/jp/it_part.rb +96 -0
- data/lib/luca/jp/templates/beppyo4.xml.erb +10 -2
- data/lib/luca/jp/templates/beppyo52.xml.erb +61 -5
- data/lib/luca/jp/util.rb +0 -5
- data/lib/luca/jp/version.rb +1 -1
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5c49087082344b219aa575860edc352d9aeaa9f6ec330198ca6564144625b1b5
|
4
|
+
data.tar.gz: '058ea66e0a93be29b3fdcdb6639b28589de79b40159e49c59f4dab1ea36563f7'
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 021d11b98374b99a0cdcc34f305a4858d615190b9911e37c4b33c80106c973997f2614d3d2e5ab0eb7a78b8bab21494bf99a4f3d009a65718ebe210a2a617679
|
7
|
+
data.tar.gz: 65477750f24b8e4c2f5d9a4cbe0268686e58999620d3beb1bd2ff2be5375dd1771923d1ee58e5bbf86b7f4d9779a7a482757c37aeb861e438072e2ff3f71ec41
|
data/lib/luca/jp.rb
CHANGED
data/lib/luca/jp/aoiro.rb
CHANGED
@@ -14,6 +14,7 @@ module Luca
|
|
14
14
|
include LucaSupport::View
|
15
15
|
include LucaSupport::Code
|
16
16
|
include Luca::Jp::Common
|
17
|
+
include Luca::Jp::ItPart
|
17
18
|
include Luca::Jp::Util
|
18
19
|
|
19
20
|
@dirname = 'journals'
|
@@ -25,13 +26,14 @@ module Luca
|
|
25
26
|
@issue_date = Date.today
|
26
27
|
@company = CGI.escapeHTML(LucaSupport::CONFIG.dig('company', 'name'))
|
27
28
|
@software = 'LucaJp'
|
28
|
-
|
29
|
-
|
29
|
+
@税額 = 税額計算
|
30
|
+
@確定法人税額 = @税額.dig(:houjin, :kokuzei)
|
30
31
|
@法人税額 = 中小企業の軽減税額 + 一般区分の税額
|
31
|
-
@確定法人税額 = (@法人税額 / 100).floor * 100
|
32
32
|
@地方法人税課税標準 = (@法人税額 / 1000).floor * 1000
|
33
33
|
@地方法人税額 = 地方法人税額(@地方法人税課税標準)
|
34
|
-
@確定地方法人税額 = (
|
34
|
+
@確定地方法人税額 = @税額.dig(:houjin, :chihou)
|
35
|
+
@法人税中間納付 = prepaid_tax('1851')
|
36
|
+
@地方法人税中間納付 = prepaid_tax('1852')
|
35
37
|
|
36
38
|
if export
|
37
39
|
{
|
@@ -48,6 +50,8 @@ module Luca
|
|
48
50
|
@procedure_code = 'RHO0012'
|
49
51
|
@procedure_name = '内国法人の確定申告(青色)'
|
50
52
|
@version = '20.0.2'
|
53
|
+
@都道府県民税中間納付 = prepaid_tax('1859') + prepaid_tax('185A')
|
54
|
+
@市民税中間納付 = prepaid_tax('185D') + prepaid_tax('185E')
|
51
55
|
@法人税期中増, @法人税期中減 = 未納法人税期中増減
|
52
56
|
@都道府県民税期中増, @都道府県民税期中減 = 未納都道府県民税期中増減
|
53
57
|
@市民税期中増, @市民税期中減 = 未納市民税期中増減
|
@@ -254,6 +258,22 @@ module Luca
|
|
254
258
|
[readable(r[:credit] || 0), readable(r[:debit] || 0)]
|
255
259
|
end
|
256
260
|
|
261
|
+
# 中間納付した金額のうち税額とならず、還付されるべき額
|
262
|
+
#
|
263
|
+
def 法人税仮払納付額
|
264
|
+
[(@法人税中間納付 + @地方法人税中間納付 - @確定法人税額 - @確定地方法人税額), 0].max
|
265
|
+
end
|
266
|
+
|
267
|
+
# 中間納付した金額のうち税額として確定した額
|
268
|
+
#
|
269
|
+
def 法人税損金納付額
|
270
|
+
[@法人税中間納付 + @地方法人税中間納付, @確定法人税額 + @確定地方法人税額].min
|
271
|
+
end
|
272
|
+
|
273
|
+
def 確定都道府県住民税
|
274
|
+
@税額.dig(:kenmin, :kintou) + @税額.dig(:kenmin, :houjinzei)
|
275
|
+
end
|
276
|
+
|
257
277
|
def 期首未納都道府県民税
|
258
278
|
readable(@start_balance.dig('5153')) || 0
|
259
279
|
end
|
@@ -267,6 +287,18 @@ module Luca
|
|
267
287
|
[readable(r[:credit] || 0), readable(r[:debit] || 0)]
|
268
288
|
end
|
269
289
|
|
290
|
+
def 都道府県民税仮払納付
|
291
|
+
[(@都道府県民税中間納付 - 確定都道府県住民税), 0].max
|
292
|
+
end
|
293
|
+
|
294
|
+
def 都道府県民税損金納付
|
295
|
+
[確定都道府県住民税, @都道府県民税中間納付].min
|
296
|
+
end
|
297
|
+
|
298
|
+
def 確定市民税
|
299
|
+
@税額.dig(:shimin, :kintou) - @税額.dig(:shimin, :houjinzei)
|
300
|
+
end
|
301
|
+
|
270
302
|
def 期首未納市民税
|
271
303
|
readable(@start_balance.dig('5154')) || 0
|
272
304
|
end
|
@@ -280,6 +312,14 @@ module Luca
|
|
280
312
|
[readable(r[:credit] || 0), readable(r[:debit] || 0)]
|
281
313
|
end
|
282
314
|
|
315
|
+
def 市民税仮払納付
|
316
|
+
[0, (@市民税中間納付 - 確定市民税)].max
|
317
|
+
end
|
318
|
+
|
319
|
+
def 市民税損金納付
|
320
|
+
[@市民税中間納付, 確定市民税].min
|
321
|
+
end
|
322
|
+
|
283
323
|
def 別表五一期首差引金額
|
284
324
|
期首繰越損益 + 期首納税充当金 - 期首未納法人税 - 期首未納都道府県民税 - 期首未納市民税
|
285
325
|
end
|
@@ -325,36 +365,6 @@ module Luca
|
|
325
365
|
[readable(r[:credit] || 0), readable(r[:debit] || 0)]
|
326
366
|
end
|
327
367
|
|
328
|
-
def 中小企業の軽減税率対象所得
|
329
|
-
if 所得金額 >= 8_000_000
|
330
|
-
8_000_000
|
331
|
-
elsif 所得金額 < 0
|
332
|
-
0
|
333
|
-
else
|
334
|
-
(所得金額 / 1000).floor * 1000
|
335
|
-
end
|
336
|
-
end
|
337
|
-
|
338
|
-
def 中小企業の軽減税額
|
339
|
-
中小企業の軽減税率対象所得 * 15 / 100
|
340
|
-
end
|
341
|
-
|
342
|
-
def 中小企業の軽減税率対象を超える所得
|
343
|
-
if 所得金額 <= 8_000_000
|
344
|
-
0
|
345
|
-
else
|
346
|
-
((所得金額 - 8_000_000) / 1000).floor * 1000
|
347
|
-
end
|
348
|
-
end
|
349
|
-
|
350
|
-
def 一般区分の税額
|
351
|
-
(中小企業の軽減税率対象を超える所得 * 23.2 / 100).to_i
|
352
|
-
end
|
353
|
-
|
354
|
-
def 地方法人税額(地方法人税課税標準)
|
355
|
-
(地方法人税課税標準 * 10.3 / 100).to_i
|
356
|
-
end
|
357
|
-
|
358
368
|
def 概況月(idx)
|
359
369
|
@start_date.next_month(idx).month
|
360
370
|
end
|
data/lib/luca/jp/chihouzei.rb
CHANGED
@@ -27,14 +27,15 @@ module Luca
|
|
27
27
|
@jimusho_code = LucaSupport::CONFIG.dig('jp', 'eltax', 'jimusho_code')
|
28
28
|
@jimusho_name = '都税事務所長'
|
29
29
|
|
30
|
-
|
30
|
+
@税額 = 税額計算
|
31
|
+
@均等割 = @税額.dig(:kenmin, :kintou)
|
31
32
|
@法人税割課税標準 = 法人税割課税標準
|
32
|
-
@確定法人税割 = (
|
33
|
+
@確定法人税割 = (@税額.dig(:kenmin, :houjinzei) / 100).floor * 100
|
33
34
|
@地方特別法人事業税中間納付 = prepaid_tax('1854')
|
34
35
|
@所得割中間納付 = prepaid_tax('1855')
|
35
36
|
@法人税割中間納付 = prepaid_tax('1859')
|
36
37
|
@均等割中間納付 = prepaid_tax('185A')
|
37
|
-
@所得割 =
|
38
|
+
@所得割 = @税額.dig(:kenmin, :shotoku)
|
38
39
|
if export
|
39
40
|
{
|
40
41
|
jigyouzei: {
|
@@ -43,7 +44,7 @@ module Luca
|
|
43
44
|
chukan: @所得割中間納付
|
44
45
|
},
|
45
46
|
tokubetsu: {
|
46
|
-
zeigaku:
|
47
|
+
zeigaku: @税額.dig(:kenmin, :tokubetsu),
|
47
48
|
chukan: @地方特別法人事業税中間納付
|
48
49
|
},
|
49
50
|
},
|
@@ -119,52 +120,6 @@ module Luca
|
|
119
120
|
(national_tax[:kokuzei][:zeigaku] / 1000).floor * 1000
|
120
121
|
end
|
121
122
|
|
122
|
-
def 法人税割
|
123
|
-
(@法人税割課税標準 * 7 / 100).floor
|
124
|
-
end
|
125
|
-
|
126
|
-
def 地方法人特別税(事業税)
|
127
|
-
((事業税 * 37 / 100) / 100).floor * 100
|
128
|
-
end
|
129
|
-
|
130
|
-
def 所得400万以下
|
131
|
-
if 所得金額 >= 4_000_000
|
132
|
-
4_000_000
|
133
|
-
else
|
134
|
-
(所得金額 / 1000).floor * 1000
|
135
|
-
end
|
136
|
-
end
|
137
|
-
|
138
|
-
def 所得割400万以下
|
139
|
-
((所得400万以下 * 3.5 / 100) / 100).floor * 100
|
140
|
-
end
|
141
|
-
|
142
|
-
def 所得800万以下
|
143
|
-
if 所得金額 <= 4_000_000
|
144
|
-
0
|
145
|
-
elsif 所得金額 >= 8_000_000
|
146
|
-
4_000_000
|
147
|
-
else
|
148
|
-
((所得金額 - 4_000_000) / 1000).floor * 1000
|
149
|
-
end
|
150
|
-
end
|
151
|
-
|
152
|
-
def 所得割800万以下
|
153
|
-
((所得800万以下 * 5.3 / 100) / 100).floor * 100
|
154
|
-
end
|
155
|
-
|
156
|
-
def 所得800万超
|
157
|
-
if 所得金額 <= 8_000_000
|
158
|
-
0
|
159
|
-
else
|
160
|
-
((所得金額 - 8_000_000) / 1000).floor * 1000
|
161
|
-
end
|
162
|
-
end
|
163
|
-
|
164
|
-
def 所得割800万超
|
165
|
-
((所得800万超 * 7.0 / 100) / 100).floor * 100
|
166
|
-
end
|
167
|
-
|
168
123
|
def 事業税中間納付
|
169
124
|
@所得割中間納付
|
170
125
|
end
|
data/lib/luca/jp/common.rb
CHANGED
@@ -7,6 +7,60 @@ module Luca
|
|
7
7
|
module Common
|
8
8
|
module_function
|
9
9
|
|
10
|
+
# 法人税、地方税の当期確定税額の計算
|
11
|
+
#
|
12
|
+
def 税額計算
|
13
|
+
所得 = 所得金額
|
14
|
+
{ houjin: {}, kenmin: {}, shimin: {} }.tap do |tax|
|
15
|
+
法人税額 = 中小企業の軽減税額(所得) + 一般区分の税額(所得)
|
16
|
+
tax[:houjin][:kokuzei] = (法人税額 / 100).floor * 100
|
17
|
+
地方法人税課税標準 = (法人税額 / 1000).floor * 1000
|
18
|
+
地方法人税 = 地方法人税額(地方法人税課税標準)
|
19
|
+
tax[:houjin][:chihou] = (地方法人税 / 100).floor * 100
|
20
|
+
|
21
|
+
tax[:kenmin][:houjinzei], tax[:shimin][:houjinzei] = 法人税割(法人税額)
|
22
|
+
tax[:kenmin][:kintou], tax[:shimin][:kintou] = 均等割
|
23
|
+
tax[:kenmin][:shotoku] = 所得割400万以下(所得) + 所得割800万以下(所得) + 所得割800万超(所得)
|
24
|
+
tax[:kenmin][:tokubetsu] = 地方法人特別税(tax[:kenmin][:shotoku])
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
# -----------------------------------------------------
|
29
|
+
# :section: 法人税額の計算
|
30
|
+
# -----------------------------------------------------
|
31
|
+
|
32
|
+
def 中小企業の軽減税率対象所得(所得 = nil)
|
33
|
+
所得 ||= 所得金額
|
34
|
+
if 所得 >= 8_000_000
|
35
|
+
8_000_000
|
36
|
+
elsif 所得 < 0
|
37
|
+
0
|
38
|
+
else
|
39
|
+
(所得 / 1000).floor * 1000
|
40
|
+
end
|
41
|
+
end
|
42
|
+
|
43
|
+
def 中小企業の軽減税額(所得 = nil)
|
44
|
+
中小企業の軽減税率対象所得(所得) * 15 / 100
|
45
|
+
end
|
46
|
+
|
47
|
+
def 中小企業の軽減税率対象を超える所得(所得 = nil)
|
48
|
+
所得 ||= 所得金額
|
49
|
+
if 所得 <= 8_000_000
|
50
|
+
0
|
51
|
+
else
|
52
|
+
((所得 - 8_000_000) / 1000).floor * 1000
|
53
|
+
end
|
54
|
+
end
|
55
|
+
|
56
|
+
def 一般区分の税額(所得 = nil)
|
57
|
+
(中小企業の軽減税率対象を超える所得(所得) * 23.2 / 100).to_i
|
58
|
+
end
|
59
|
+
|
60
|
+
def 地方法人税額(地方法人税課税標準)
|
61
|
+
(地方法人税課税標準 * 10.3 / 100).to_i
|
62
|
+
end
|
63
|
+
|
10
64
|
# 税引前当期利益をもとに計算
|
11
65
|
# 消費税を租税公課に計上している場合、控除済みの金額
|
12
66
|
# 未払/未収事業税は精算時に認識
|
@@ -16,6 +70,76 @@ module Luca
|
|
16
70
|
LucaSupport::Code.readable(@pl_data.dig('GA') - 納付事業税 + 還付事業税)
|
17
71
|
end
|
18
72
|
|
73
|
+
# -----------------------------------------------------
|
74
|
+
# :section: 地方税額の計算
|
75
|
+
# -----------------------------------------------------
|
76
|
+
|
77
|
+
def 均等割
|
78
|
+
if LucaSupport::CONFIG.dig('jp', 'eltax', 'office_23ku')
|
79
|
+
[70_000, 0]
|
80
|
+
else
|
81
|
+
[20_000, 50_000]
|
82
|
+
end
|
83
|
+
end
|
84
|
+
|
85
|
+
def 法人税割(法人税 = nil)
|
86
|
+
課税標準 = if 法人税
|
87
|
+
(法人税 / 1000).floor * 1000
|
88
|
+
else
|
89
|
+
@法人税割課税標準
|
90
|
+
end
|
91
|
+
if LucaSupport::CONFIG.dig('jp', 'eltax', 'office_23ku')
|
92
|
+
[(課税標準 * 7 / 100).floor, 0]
|
93
|
+
else
|
94
|
+
[(課税標準 * 1 / 100).floor, (課税標準 * 6 / 100).floor]
|
95
|
+
end
|
96
|
+
end
|
97
|
+
|
98
|
+
def 所得400万以下(所得 = nil)
|
99
|
+
所得 ||= 所得金額
|
100
|
+
if 所得 >= 4_000_000
|
101
|
+
4_000_000
|
102
|
+
else
|
103
|
+
(所得 / 1000).floor * 1000
|
104
|
+
end
|
105
|
+
end
|
106
|
+
|
107
|
+
def 所得割400万以下(所得 = nil)
|
108
|
+
((所得400万以下(所得) * 3.5 / 100) / 100).floor * 100
|
109
|
+
end
|
110
|
+
|
111
|
+
def 所得800万以下(所得 = nil)
|
112
|
+
所得 ||= 所得金額
|
113
|
+
if 所得 <= 4_000_000
|
114
|
+
0
|
115
|
+
elsif 所得 >= 8_000_000
|
116
|
+
4_000_000
|
117
|
+
else
|
118
|
+
((所得 - 4_000_000) / 1000).floor * 1000
|
119
|
+
end
|
120
|
+
end
|
121
|
+
|
122
|
+
def 所得割800万以下(所得 = nil)
|
123
|
+
((所得800万以下(所得) * 5.3 / 100) / 100).floor * 100
|
124
|
+
end
|
125
|
+
|
126
|
+
def 所得800万超(所得 = nil)
|
127
|
+
所得 ||= 所得金額
|
128
|
+
if 所得 <= 8_000_000
|
129
|
+
0
|
130
|
+
else
|
131
|
+
((所得 - 8_000_000) / 1000).floor * 1000
|
132
|
+
end
|
133
|
+
end
|
134
|
+
|
135
|
+
def 所得割800万超(所得 = nil)
|
136
|
+
((所得800万超(所得) * 7.0 / 100) / 100).floor * 100
|
137
|
+
end
|
138
|
+
|
139
|
+
def 地方法人特別税(事業税)
|
140
|
+
((事業税 * 37 / 100) / 100).floor * 100
|
141
|
+
end
|
142
|
+
|
19
143
|
def 消費税課税売上高(税率 = 10)
|
20
144
|
LucaSupport::Code.readable(@pl_data.dig('A0') * 100 / (100 + 税率).floor || 0)
|
21
145
|
end
|
@@ -0,0 +1,96 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'luca_support'
|
4
|
+
require 'luca_support/config'
|
5
|
+
|
6
|
+
module Luca
|
7
|
+
module Jp
|
8
|
+
module ItPart
|
9
|
+
def it_part
|
10
|
+
entries = ['<IT VR="1.4" id="IT">']
|
11
|
+
entries.concat(['zeimusho']
|
12
|
+
.map{ |key| render_it_tag(key) })
|
13
|
+
entries << teisyutsu_day
|
14
|
+
entries.concat(['nozeisha_id', 'nozeisha_bango']
|
15
|
+
.map{ |key| render_it_tag(key) })
|
16
|
+
entries.concat(['nozeisha_nm_kn', 'nozeisha_nm', 'nozeisha_zip', 'nozeisha_adr_kn', 'nozeisha_adr', 'nozeisha_tel']
|
17
|
+
.map{ |key| render_it_tag(key) })
|
18
|
+
entries.concat(['shihon_kin', 'jigyo_naiyo', 'kanpu_kinyukikan']
|
19
|
+
.map{ |key| render_it_tag(key) })
|
20
|
+
entries.concat(['daihyo_nm_kn', 'daihyo_nm', 'daihyo_zip', 'daihyo_adr', 'daihyo_tel']
|
21
|
+
.map{ |key| render_it_tag(key) })
|
22
|
+
entries << %Q(<TETSUZUKI ID="TETSUZUKI"><procedure_CD>#{@procedure_code}</procedure_CD><procedure_NM>#{@procedure_name}</procedure_NM></TETSUZUKI>)
|
23
|
+
entries.concat([jigyo_nendo_from, jigyo_nendo_to, kazei_kikan_from, kazei_kikan_to])
|
24
|
+
entries << render_it_tag('keiri_sekininsha')
|
25
|
+
entries << '<SHINKOKU_KBN ID="SHINKOKU_KBN"><kubun_CD>1</kubun_CD></SHINKOKU_KBN>'
|
26
|
+
entries << '</IT>'
|
27
|
+
entries.compact.join("\n")
|
28
|
+
end
|
29
|
+
|
30
|
+
def render_it_tag(key)
|
31
|
+
content = LucaSupport::CONFIG.dig('jp', 'it_part', key)
|
32
|
+
return nil if content.nil?
|
33
|
+
|
34
|
+
case key
|
35
|
+
when 'zeimusho'
|
36
|
+
content = parse_zeimusho(content)
|
37
|
+
when 'nozeisha_tel', 'daihyo_tel'
|
38
|
+
content = parse_tel(content)
|
39
|
+
when 'nozeisha_zip', 'daihyo_zip'
|
40
|
+
content = parse_zip(content)
|
41
|
+
when 'nozeisha_bango'
|
42
|
+
content = parse_houjinbango(content)
|
43
|
+
when 'kanpu_kinyukikan'
|
44
|
+
content = parse_kinyukikan(content)
|
45
|
+
end
|
46
|
+
|
47
|
+
tag = key.to_s.upcase
|
48
|
+
%Q(<#{tag} ID="#{tag}">#{content}</#{tag}>)
|
49
|
+
end
|
50
|
+
|
51
|
+
def parse_zeimusho(str)
|
52
|
+
items = str.split('-')
|
53
|
+
%Q(<gen:zeimusho_CD>#{items[0]}</gen:zeimusho_CD><gen:zeimusho_NM>#{items[1]}</gen:zeimusho_NM>)
|
54
|
+
end
|
55
|
+
|
56
|
+
def parse_houjinbango(str)
|
57
|
+
%Q(<gen:hojinbango>#{str}</gen:hojinbango>)
|
58
|
+
end
|
59
|
+
|
60
|
+
def parse_kinyukikan(str)
|
61
|
+
items = str.split('-')
|
62
|
+
%Q(<gen:kinyukikan_NM kinyukikan_KB="1">#{items[0]}</gen:kinyukikan_NM><gen:shiten_NM shiten_KB="2">#{items[1]}</gen:shiten_NM><gen:yokin>#{items[2]}</gen:yokin><gen:koza>#{items[3]}</gen:koza>)
|
63
|
+
end
|
64
|
+
|
65
|
+
def parse_tel(str)
|
66
|
+
num = str.split('-')
|
67
|
+
%Q(<gen:tel1>#{num[0]}</gen:tel1><gen:tel2>#{num[1]}</gen:tel2><gen:tel3>#{num[2]}</gen:tel3>)
|
68
|
+
end
|
69
|
+
|
70
|
+
def parse_zip(str)
|
71
|
+
num = str.split('-')
|
72
|
+
%Q(<gen:zip1>#{num[0]}</gen:zip1><gen:zip2>#{num[1]}</gen:zip2>)
|
73
|
+
end
|
74
|
+
|
75
|
+
def teisyutsu_day
|
76
|
+
%Q(<TEISYUTSU_DAY ID="TEISYUTSU_DAY"><gen:era>#{gengou(@issue_date)}</gen:era><gen:yy>#{wareki(@issue_date)}</gen:yy><gen:mm>#{@issue_date.month}</gen:mm><gen:dd>#{@issue_date.day}</gen:dd></TEISYUTSU_DAY>)
|
77
|
+
end
|
78
|
+
|
79
|
+
def jigyo_nendo_from
|
80
|
+
%Q(<JIGYO_NENDO_FROM ID="JIGYO_NENDO_FROM"><gen:era>#{gengou(@start_date)}</gen:era><gen:yy>#{wareki(@start_date)}</gen:yy><gen:mm>#{@start_date.month}</gen:mm><gen:dd>#{@start_date.day}</gen:dd></JIGYO_NENDO_FROM>)
|
81
|
+
end
|
82
|
+
|
83
|
+
def jigyo_nendo_to
|
84
|
+
%Q(<JIGYO_NENDO_TO ID="JIGYO_NENDO_TO"><gen:era>#{gengou(@end_date)}</gen:era><gen:yy>#{wareki(@end_date)}</gen:yy><gen:mm>#{@end_date.month}</gen:mm><gen:dd>#{@end_date.day}</gen:dd></JIGYO_NENDO_TO>)
|
85
|
+
end
|
86
|
+
|
87
|
+
def kazei_kikan_from
|
88
|
+
%Q(<KAZEI_KIKAN_FROM ID="KAZEI_KIKAN_FROM"><gen:era>#{gengou(@start_date)}</gen:era><gen:yy>#{wareki(@start_date)}</gen:yy><gen:mm>#{@start_date.month}</gen:mm><gen:dd>#{@start_date.day}</gen:dd></KAZEI_KIKAN_FROM>)
|
89
|
+
end
|
90
|
+
|
91
|
+
def kazei_kikan_to
|
92
|
+
%Q(<KAZEI_KIKAN_TO ID="KAZEI_KIKAN_TO"><gen:era>#{gengou(@end_date)}</gen:era><gen:yy>#{wareki(@end_date)}</gen:yy><gen:mm>#{@end_date.month}</gen:mm><gen:dd>#{@end_date.day}</gen:dd></KAZEI_KIKAN_TO>)
|
93
|
+
end
|
94
|
+
end
|
95
|
+
end
|
96
|
+
end
|
@@ -11,9 +11,17 @@
|
|
11
11
|
<%= render_attr('ARB00020', @当期純損益) %>
|
12
12
|
</ARB00000>
|
13
13
|
<ARC00000>
|
14
|
+
<ARC00010>
|
15
|
+
<%= render_attr('ARC00020', 法人税損金納付額) %>
|
16
|
+
<%= render_attr('ARC00030', 法人税損金納付額) %>
|
17
|
+
</ARC00010>
|
18
|
+
<ARC00040>
|
19
|
+
<%= render_attr('ARC00050', (都道府県民税損金納付 + 市民税損金納付)) %>
|
20
|
+
<%= render_attr('ARC00060', (都道府県民税損金納付 + 市民税損金納付)) %>
|
21
|
+
</ARC00040>
|
14
22
|
<ARC00100>
|
15
|
-
<%= render_attr('ARC00110', @法人税等) %>
|
16
|
-
<%= render_attr('ARC00120', @法人税等) %>
|
23
|
+
<%= render_attr('ARC00110', (@法人税等 - 法人税損金納付額 - 都道府県民税損金納付 - 市民税損金納付)) %>
|
24
|
+
<%= render_attr('ARC00120', (@法人税等 - 法人税損金納付額 - 都道府県民税損金納付 - 市民税損金納付)) %>
|
17
25
|
</ARC00100>
|
18
26
|
<%= 別表四還付事業税 %>
|
19
27
|
<ARC00325>
|
@@ -19,10 +19,24 @@
|
|
19
19
|
<%= render_attr('IEB00160', 期首未納法人税 - @法人税期中減) %>
|
20
20
|
</IEB00010>
|
21
21
|
<IEB00170>
|
22
|
+
<% if @法人税中間納付 > 0 %>
|
23
|
+
<IEB00180>
|
24
|
+
<%= render_attr('IEB00190', @法人税中間納付 + @地方法人税中間納付) %>
|
25
|
+
<IEB00200>
|
26
|
+
<IEB00240>
|
27
|
+
<%= render_attr('IEB00260', 法人税仮払納付額) %>
|
28
|
+
</IEB00240>
|
29
|
+
<IEB00270>
|
30
|
+
<%= render_attr('IEB00290', 法人税損金納付額) %>
|
31
|
+
</IEB00270>
|
32
|
+
</IEB00200>
|
33
|
+
<%= render_attr('IEB00300', (@法人税中間納付 + @地方法人税中間納付 - 法人税仮払納付額 - 法人税損金納付額)) %>
|
34
|
+
</IEB00180>
|
35
|
+
<% end %>
|
22
36
|
<IEB00310>
|
23
|
-
<%= render_attr('IEB00320',
|
37
|
+
<%= render_attr('IEB00320', (@確定法人税額 + @確定地方法人税額 - @法人税中間納付 - @地方法人税中間納付)) %>
|
24
38
|
<IEB00330>
|
25
|
-
<%= render_attr('IEB00350',
|
39
|
+
<%= render_attr('IEB00350', (@確定法人税額 + @確定地方法人税額 - @法人税中間納付 - @地方法人税中間納付)) %>
|
26
40
|
</IEB00330>
|
27
41
|
</IEB00310>
|
28
42
|
</IEB00170>
|
@@ -33,6 +47,12 @@
|
|
33
47
|
<IEB00410>
|
34
48
|
<%= render_attr('IEB00430', @法人税期中減) %>
|
35
49
|
</IEB00410>
|
50
|
+
<IEB00440>
|
51
|
+
<%= render_attr('IEB00460', 法人税仮払納付額) %>
|
52
|
+
</IEB00440>
|
53
|
+
<IEB00470>
|
54
|
+
<%= render_attr('IEB00490', 法人税損金納付額) %>
|
55
|
+
</IEB00470>
|
36
56
|
</IEB00400>
|
37
57
|
<IEB00500>
|
38
58
|
<%= render_attr('IEB00520', 期末未納法人税) %>
|
@@ -52,8 +72,20 @@
|
|
52
72
|
<%= render_attr('IEC00160', 期首未納都道府県民税 - @都道府県民税期中減) %>
|
53
73
|
</IEC00010>
|
54
74
|
<IEC00170>
|
75
|
+
<IEC00310>
|
76
|
+
<%= render_attr('IEC00320', @都道府県民税中間納付) %>
|
77
|
+
<IEC00330>
|
78
|
+
<IEC00370>
|
79
|
+
<%= render_attr('IEC00390', 都道府県民税仮払納付) %>
|
80
|
+
</IEC00370>
|
81
|
+
<IEC00400>
|
82
|
+
<%= render_attr('IEC00420', 都道府県民税損金納付) %>
|
83
|
+
</IEC00400>
|
84
|
+
</IEC00330>
|
85
|
+
<%= render_attr('IEC00430', (@都道府県民税中間納付 - 都道府県民税仮払納付 - 都道府県民税損金納付)) %>
|
86
|
+
</IEC00310>
|
55
87
|
<IEC00440>
|
56
|
-
<%= render_attr('IEC00450',
|
88
|
+
<%= render_attr('IEC00450', (確定都道府県住民税 - @都道府県民税中間納付)) %>
|
57
89
|
<IEC00460>
|
58
90
|
<%= render_attr('IEC00480', 期末未納都道府県民税) %>
|
59
91
|
</IEC00460>
|
@@ -66,6 +98,12 @@
|
|
66
98
|
<IEC00540>
|
67
99
|
<%= render_attr('IEC00560', @都道府県民税期中減) %>
|
68
100
|
</IEC00540>
|
101
|
+
<IEC00570>
|
102
|
+
<%= render_attr('IEC00590', 都道府県民税損金納付) %>
|
103
|
+
</IEC00570>
|
104
|
+
<IEC00600>
|
105
|
+
<%= render_attr('IEC00620', 都道府県民税仮払納付) %>
|
106
|
+
</IEC00600>
|
69
107
|
</IEC00530>
|
70
108
|
<IEC00630>
|
71
109
|
<%= render_attr('IEC00650', 期末未納都道府県民税) %>
|
@@ -85,10 +123,22 @@
|
|
85
123
|
<%= render_attr('IED00160', 期首未納市民税 - @市民税期中減) %>
|
86
124
|
</IED00010>
|
87
125
|
<IED00170>
|
126
|
+
<IED00180>
|
127
|
+
<%= render_attr('IED00190', @市民税中間納付) %>
|
128
|
+
<IED00200>
|
129
|
+
<IED00240>
|
130
|
+
<%= render_attr('IED00260', 市民税仮払納付) %>
|
131
|
+
</IED00240>
|
132
|
+
<IED00270>
|
133
|
+
<%= render_attr('IED00290', 市民税損金納付) %>
|
134
|
+
</IED00270>
|
135
|
+
</IED00200>
|
136
|
+
<%= render_attr('IED00300', (@市民税中間納付 - 市民税仮払納付 - 市民税損金納付)) %>
|
137
|
+
</IED00180>
|
88
138
|
<IED00310>
|
89
|
-
<%= render_attr('IED00320',
|
139
|
+
<%= render_attr('IED00320', (確定市民税 - @市民税中間納付)) %>
|
90
140
|
<IED00330>
|
91
|
-
<%= render_attr('IED00350',
|
141
|
+
<%= render_attr('IED00350', (確定市民税 - @市民税中間納付)) %>
|
92
142
|
</IED00330>
|
93
143
|
</IED00310>
|
94
144
|
</IED00170>
|
@@ -99,6 +149,12 @@
|
|
99
149
|
<IED00410>
|
100
150
|
<%= render_attr('IED00430', @市民税期中減) %>
|
101
151
|
</IED00410>
|
152
|
+
<IED00440>
|
153
|
+
<%= render_attr('IED00460', 市民税仮払納付) %>
|
154
|
+
</IED00440>
|
155
|
+
<IED00470>
|
156
|
+
<%= render_attr('IED00490', 市民税損金納付) %>
|
157
|
+
</IED00470>
|
102
158
|
</IED00400>
|
103
159
|
<IED00500>
|
104
160
|
<%= render_attr('IED00520', 期末未納市民税) %>
|
data/lib/luca/jp/util.rb
CHANGED
@@ -52,11 +52,6 @@ module Luca
|
|
52
52
|
def etax_date(date)
|
53
53
|
"<gen:era>#{gengou(date)}</gen:era><gen:yy>#{wareki(date)}</gen:yy><gen:mm>#{date.month}</gen:mm><gen:dd>#{date.day}</gen:dd>"
|
54
54
|
end
|
55
|
-
# TODO: supply instance variables related to each procedure
|
56
|
-
#
|
57
|
-
def it_part
|
58
|
-
render_erb(search_template('it-part.xtx.erb'))
|
59
|
-
end
|
60
55
|
end
|
61
56
|
end
|
62
57
|
end
|
data/lib/luca/jp/version.rb
CHANGED
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.1.
|
4
|
+
version: 0.1.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: 2021-03-
|
11
|
+
date: 2021-03-14 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: lucabook
|
@@ -83,6 +83,7 @@ files:
|
|
83
83
|
- lib/luca/jp/aoiro.rb
|
84
84
|
- lib/luca/jp/chihouzei.rb
|
85
85
|
- lib/luca/jp/common.rb
|
86
|
+
- lib/luca/jp/it_part.rb
|
86
87
|
- lib/luca/jp/kessan.rb
|
87
88
|
- lib/luca/jp/syouhizei.rb
|
88
89
|
- lib/luca/jp/templates/aoiro.xtx.erb
|