zoukankan      html  css  js  c++  java
  • 个人所得税计算

    写成一个方法calcMoney

    data(){

    return{

    index:-1, // 个人所得税所属的纳税阶段,
    incomeData:[{incomeTax: "0.5",money: 30000}, {incomeTax: "0.8",money: 66000}, {incomeTax: "1",money: 100000}], //个人所得税计算区间,是活的,后台返回的
    formData:{
    demandBudget:0, // 预算金额,不是固定的,是活的,输入预算金额计算个人所得税,
    income:0,// 个人所得税金额

    }

    }

    }

    
    
    // 个人所得税计算

    calcMoney() {

    for(let i=0;i<this.incomeData.length;i++){
    if(this.formData.demandBudget<=this.incomeData[i].money){
    this.index = i;
    break;
    }else{
    this.index = -1;
    }
    }
    if(this.index === 0){
    // 还未到纳税标准
    this.formData.income = 0
    }
    else if(this.index>0){
    // 在纳税区间内,未超过最高纳税标准
    let money1 = 0;
    let money2 = 0;
    money1 = (this.formData.demandBudget - this.incomeData[this.index-1].money)*this.incomeData[this.index-1].incomeTax*0.01;
    for(let i =0;i<=this.index;i++){
    if(i-2>=0){
    money2 = money2+((this.incomeData[i-1].money-this.incomeData[i-2].money)*this.incomeData[i-2].incomeTax*0.01);
    }

    }
    this.formData.income = money1 + money2;
    }
    else{
    // 已超过最高纳税金额
    if(this.formData.demandBudget>0){
    let money1 = 0;
    let money2 = 0;
    let leng = this.incomeData.length; // 个人所得税纳税标准条数
    money1 = (this.formData.demandBudget - this.incomeData[leng-1].money)*this.incomeData[leng-1].incomeTax*0.01;
    for(let i =0;i<=leng;i++){
    if(i-2>=0){
    money2 = money2+((this.incomeData[i-1].money-this.incomeData[i-2].money)*this.incomeData[i-2].incomeTax*0.01)
    }

    }
    this.formData.income = money1 + money2;

    }
    }

     

    }

  • 相关阅读:
    在Centos7下源代码安装配置Nginx
    mysql5.7.21源码安装
    数据库设计三大范式
    电商项目中使用Redis实现秒杀功能
    PHP和Redis实现在高并发下的抢购及秒杀功能示例详解
    PHP面向对象(抽象类与抽象方法、接口的实现)
    php面向对象 封装继承多态 接口、重载、抽象类、最终类总结
    利用VHD虚拟文件加密自己的个人信息
    Chrome常用快捷键
    stl本子
  • 原文地址:https://www.cnblogs.com/xiaoleilei123/p/13571921.html
Copyright © 2011-2022 走看看