Published Date : 2021年4月2日10:57

パート17: 給与所得者の所得税と住民税を計算するAndroidアプリ
Part 17: Android App Calculates Income and Resident Taxes for Salaried Workers


This blog has an English translation


ニコニコ動画にアップした動画のまとめ記事です。

This is a summary blog post about a video I uploaded to NicoNico.

細かい部分は動画を参考にしてください。

Please refer to the video for details.


目次

Table of Contents




① 動画の説明
① Video Description



警告:

今回説明する給与所得者の所得税及び住民税を計算するツールは、あくまで簡易的なお遊び用のツールです。

正確な数値、計算方法は各自で調べて下さい。

このツールは大雑把に大体の見積りを計算して楽しむ為のツールです。

決して従業員の年末調整や個人の確定申告等に使用しないでください。

さらに、税金の計算方法は変更される場合があり、控除についても同様です。

また、控除や税金の計算方法が間違っている可能性もありますので、

あまり信用せずに、各自で調べてから実験してみてください。

このツールを使って何かしらの損害が発生したとしても、私は一切の責任を負いません。

Warning:

​The tool I'm going to show you for calculating income and residence taxes for salaried workers is just a simple tool for playing.

​Please check the exact number and calculation method by yourself.

​This tool is used to calculate rough estimates and enjoy them.

​Do not use for year-end adjustment of employees or for individual tax return.

In addition, the method of calculating taxes and deductions may change.

Also, there is a possibility that the deduction and tax calculation methods are incorrect.

Don't trust it too much, and test it yourself.

​I will not be liable for any damage caused by using this tool.

前回の続きです。

Continued from last time.

所得税、住民税、控除額、課税額、手取り年収等の総額を表示するメソッドを作成します。

Create a method that displays the total amount of income tax, resident tax, deductions, taxable income tax and taxable resident tax, and take-home pay.


Responsive image

いつも通りに新しいクラスファイルを作成します。

Create a new class file as usual.


Responsive image

所得税と所得税控除額及び課税額の計算を行うクラスファイルを作成しましょう。

Create a class file to calculate income tax and income deduction and taxable income tax.

コンストラクタを作成します。

Create a constructor.

メンバ変数とゲッターを作成します。

private int incomeTax = 0;
    private int specialIncomeTaxForReconstruction = 0;
    private int sitfrincomeTax = 0;
    private int incomeTaxDeduction = 0;
    private int taxableIncomeForIncomeTax = 0;
    private int totalOtherPayments = 0;

    public int getTotalOtherPayments() { return totalOtherPayments; }
    public int getSitfrincomeTax() {
    return sitfrincomeTax;
}

Create member variables and getters.

所得税と所得税控除額及び課税額の計算を行うメソッドを作成します。

Create methods to calculate income tax and income deduction and taxable income tax.

全ての控除額を集めて、全体の所得税控除額と所得税課税額を計算します。

Collect all deductions and calculate the total income deductions and taxable income taxes.

各クラスからゲッターを使用して値を足し合わせていきます。

Add up the values using getters from each class.

public void setIncomeTaxesAndDeductions() {
    incomeTaxDeduction = 0;
    taxableIncomeForIncomeTax = super.getProvisionalTaxableIncome() - super.getBasicIncomeDeduction();
    totalOtherPayments = 0;

    incomeTaxDeduction += super.getBasicIncomeDeduction();
    incomeTaxDeduction += super.getSocialInsuranceDeduction();
    taxableIncomeForIncomeTax -= super.getSocialInsuranceDeduction();

    ---------------------------------------------------------------------------------------------------

    
}

課税額がマイナスになってしまったら値をゼロにします。

If the taxable income tax amount becomes negative, the value is set to zero.

if (taxableIncomeForIncomeTax < 0) {
    taxableIncomeForIncomeTax = 0;
}

そして所得税控除額及び課税額を計算します。

And calculate the amount of income tax deduction and the amount of taxable income tax.

計算された所得税控除額及び課税額を基に所得税を計算します。

Calculate income tax based on the calculated deductions and taxable income taxes.

復興特別所得税を計算します。

Calculate the special income tax for reconstruction.

計算された結果をMap型の変数に格納してメソッドの返り値とします。

Store the computed result in a variable of type Map as the return value of the method.

クラスの継承も前回の時と同様に変えます。

Change class inheritance as before.


Responsive image

所得税等を表示するTextViewに計算結果のテキストをセットします。

Set the text of the calculation result to the TextView that displays income tax, etc.

必要なTextViewをインスタンス化していきます。

Instantiate the required TextView

アプリの動作を確かめてみましょう。

Let's check how the application works.

今度は住民税と住民税控除額及び課税額を計算するクラスファイルを作成しましょう。

Now let's create a class file to calculate the resident tax, the amount of deduction for the resident tax and the amount of taxable resident tax.

いつもの通りクラスファイルを作成してください。

Create a class file as usual.

メンバ変数とゲッターを作成します。

Create member variables and getters.

パート18へ続く。

Continue to Part 18.



以上です。お疲れ様です。

That's all. Thank you for your hard work.