0
点赞
收藏
分享

微信扫一扫

Java学习笔记:案例:计算发送工资条

您好 2022-02-12 阅读 47

应纳税所得额=基本工资+绩效工资+奖金+考勤罚款+社保-5000

个税=应纳税所得额*税率-速算扣除数

1、应纳税所得额<=3000 税率=0.03; 速算扣除数=0;

2、应纳税所得额>3000且 <=12000 税率=0.1; 速算扣除数=210;

3、 应纳税所得额>12000且 <=25000 税率=0.2; 速算扣除数=1410;

4、应纳税所得额>25000且 <=35000 税率=0.25; 速算扣除数=2660;

5、应纳税所得额>35000且 <=55000) 税率=0.3; 速算扣除数=4410;

6、应纳税所得额>55000且 <=80000) 税率=0.35; 速算扣除数=7160;

7、应纳税所得额>80000 税率=0.45; 速算扣除数=15160;

 

package Part4;

import com.yzk18.docs.ExcelHelpers;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;

public class 计算个税并发送邮件1 {
    public static void main(String[] args) {
        Workbook wb = ExcelHelpers.openFile("d:/temp/2020年4月份工资表.xlsx");
        Sheet sheet=wb.getSheetAt(0);
        //for (int i=1;i<=sheet.getLastRowNum()-2;i++)
        for (int i=1;i<=sheet.getLastRowNum();i++)
        {
            String 姓名=ExcelHelpers.getCellStringValue(sheet,i,0);
            String 部门=ExcelHelpers.getCellStringValue(sheet,i,1);
            //System.out.println(姓名);
            //遇到员工数据行结束,就break
            if (姓名==null||姓名.equals(""))
            {
                break;
            }
            double 基本工资=ExcelHelpers.getCellDoubleValue(sheet,i,2);
            double 绩效工资=ExcelHelpers.getCellDoubleValue(sheet,i,3);
            double 奖金=ExcelHelpers.getCellDoubleValue(sheet,i,4);
            Double 考勤罚款=ExcelHelpers.getCellDoubleValue(sheet,i,5);
            if (考勤罚款==null)
            {
                考勤罚款=0.0;
            }
            double 社保=ExcelHelpers.getCellDoubleValue(sheet,i,6);
            //应纳税所得额=基本工资+绩效工资+奖金+考勤罚款+社保-5000
            //个税=应纳税所得额*税率-速算扣除数
            double 应纳税所得额 = 基本工资+绩效工资+奖金+考勤罚款+社保-5000;
            double 税率;
            double 速算扣除数;
            if(应纳税所得额<=3000)
            {
                税率=0.03;
                速算扣除数=0;
            }
            else if(应纳税所得额>3000 && 应纳税所得额<=12000)
            {
                税率=0.1;
                速算扣除数=210;
            }
            //if(12000<应纳税所得额<=25000)
            else if(应纳税所得额>12000 && 应纳税所得额<=25000)
            {
                税率=0.2;
                速算扣除数=1410;
            }
            else if(应纳税所得额>25000 && 应纳税所得额 <=35000)
            {
                税率=0.25;	速算扣除数=2660;
            }
            else if(应纳税所得额>35000 &&  应纳税所得额<=55000)
            {
                税率=0.3;		速算扣除数=4410;
            }
            else if(应纳税所得额>55000 && 应纳税所得额<=80000)
            {
                税率=0.35;	速算扣除数=7160;
            }
            else
            {
                税率=0.45;	速算扣除数=15160;
            }
            double 个税=应纳税所得额*税率-速算扣除数;
            ExcelHelpers.setCellValue(sheet,i,7,个税);
            System.out.println(基本工资+","+个税);


        }
    }
}

返填回Excel表 

完整代码

package Part4;

import com.yzk18.docs.ExcelHelpers;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;

public class 计算个税并发送邮件1 {
    public static void main(String[] args) {
        Workbook wb = ExcelHelpers.openFile("d:/temp/2020年4月份工资表.xlsx");
        Sheet sheet=wb.getSheetAt(0);
        //for (int i=1;i<=sheet.getLastRowNum()-2;i++)
        for (int i=1;i<=sheet.getLastRowNum();i++)
        {
            String 姓名=ExcelHelpers.getCellStringValue(sheet,i,0);
            String 部门=ExcelHelpers.getCellStringValue(sheet,i,1);
            //System.out.println(姓名);
            //遇到员工数据行结束,就break
            if (姓名==null||姓名.equals(""))
            {
                break;
            }
            double 基本工资=ExcelHelpers.getCellDoubleValue(sheet,i,2);
            double 绩效工资=ExcelHelpers.getCellDoubleValue(sheet,i,3);
            double 奖金=ExcelHelpers.getCellDoubleValue(sheet,i,4);
            Double 考勤罚款=ExcelHelpers.getCellDoubleValue(sheet,i,5);
            if (考勤罚款==null)
            {
                考勤罚款=0.0;
            }
            double 社保=ExcelHelpers.getCellDoubleValue(sheet,i,6);
            //应纳税所得额=基本工资+绩效工资+奖金+考勤罚款+社保-5000
            //个税=应纳税所得额*税率-速算扣除数
            double 应纳税所得额 = 基本工资+绩效工资+奖金+考勤罚款+社保-5000;
            double 税率;
            double 速算扣除数;
            if(应纳税所得额<=3000)
            {
                税率=0.03;
                速算扣除数=0;
            }
            else if(应纳税所得额>3000 && 应纳税所得额<=12000)
            {
                税率=0.1;
                速算扣除数=210;
            }
            //if(12000<应纳税所得额<=25000)
            else if(应纳税所得额>12000 && 应纳税所得额<=25000)
            {
                税率=0.2;
                速算扣除数=1410;
            }
            else if(应纳税所得额>25000 && 应纳税所得额 <=35000)
            {
                税率=0.25;	速算扣除数=2660;
            }
            else if(应纳税所得额>35000 &&  应纳税所得额<=55000)
            {
                税率=0.3;		速算扣除数=4410;
            }
            else if(应纳税所得额>55000 && 应纳税所得额<=80000)
            {
                税率=0.35;	速算扣除数=7160;
            }
            else
            {
                税率=0.45;	速算扣除数=15160;
            }
            double 个税=应纳税所得额*税率-速算扣除数;
            ExcelHelpers.setCellValue(sheet,i,7,个税);
            //System.out.println(基本工资+","+个税);
        }
        ExcelHelpers.saveToFile(wb,"d:/temp/2020年4月份工资表-算完个税.xlsx");
        ExcelHelpers.close(wb);
    }
}
举报

相关推荐

0 条评论