税率计算

//1 根据税前换是税后进行计算
if(newValue =='PI9701'){//税前
    taxPreAmount = expenseAmount;
    if(taxType=='PI9601'){//劳务
        /** 应纳税额 = 应纳税所得额 * 适用税率 - 速算扣除数
         *  应纳税所得额= 合同金额 - 800           (每次收入<= 4000)
         *  应纳税所得额= 合同金额 * 20% - 0       (每次收入<= 20000)
         *  应纳税所得额= 合同金额 * 30% - 2000    (20000 < 每次收入<= 50000)
         *  应纳税所得额= 合同金额 * 40% - 7000    (每次收入 > 50000)
         */
        if(expenseAmount < 4000){
            taxAmount = (expenseAmount-800)>0?(expenseAmount-800)*taxRate:0;;
        }else if(expenseAmount <= 20000){
            taxAmount = expenseAmount*0.8*taxRate;
        }else if(expenseAmount <= 50000){
            taxRate = Number(0.3);
            taxAmount = expenseAmount*0.8*taxRate-2000;
        }else{
            taxRate = Number(0.4);
            taxAmount = expenseAmount*0.8*taxRate-7000;
        }
    }else if(taxType=='PI9602'){//稿酬
        /** 应纳税额 = 应纳税所得额 * 20% * 70%
         *  应纳税所得额= 合同金额 - 800           (每次收入<= 4000)
         *  应纳税所得额= 合同金额 * (1-20%)           (每次收入> 4000)
         */
        if(expenseAmount < 4000){
            taxAmount = (((expenseAmount-800)>0?(expenseAmount-800):0)*0.2)*0.7;
        }else{
            taxAmount = (expenseAmount*0.8)*0.2*0.7;
        }
    }
    taxEndAmount = expenseAmount - taxAmount;
}else{//税后
    taxEndAmount = expenseAmount;
    if(taxType=='PI9601'){//劳务
        taxRate = Number(0.2);
        if(expenseAmount <= 3360){
            taxPreAmount = (expenseAmount - taxRate*800)/(1-taxRate);
        }else if(expenseAmount <= 16800){
            taxPreAmount = expenseAmount/(1-taxRate*(1-taxRate));
        }else if(expenseAmount <= 40000){
            taxRate = Number(0.3);
            taxPreAmount = (expenseAmount-2000)/(1-taxRate*(1-taxRate));
        }else{
            taxRate = Number(0.4);
            taxPreAmount = (expenseAmount-7000)/(1-taxRate*(1-taxRate));
        }
    }else if(taxType=='PI9602'){//稿酬
        if(expenseAmount <= 800){
            taxPreAmount = expenseAmount;
        }else if(expenseAmount <= 3552){
            taxPreAmount = (expenseAmount-800*0.2*0.7)/(1-0.2*0.7);
        }else{
            taxPreAmount = expenseAmount/(1-0.2*0.7*0.8);
        }
    }
    taxAmount = taxPreAmount - expenseAmount;
}

转载于:https://my.oschina.net/marlon520/blog/1800180

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值