using System;
|
using System.Collections.Generic;
|
using System.Linq;
|
using System.Text;
|
|
namespace CY.Config
|
{
|
/// <summary>
|
/// 税率计算器
|
/// </summary>
|
public class TaxCalculator
|
{
|
/// <summary>
|
/// 根据工资金额获取税后工资
|
/// </summary>
|
/// <param name="StaffMoney"></param>
|
/// <returns></returns>
|
public static decimal GetAfterTaxByMoney(decimal StaffMoney)
|
{
|
decimal AfterTax = 0;
|
|
if ((StaffMoney - decimal.Parse(WebInfo.Instance.TaxBasic.ToString())) > WebInfo.Instance.TaxLV7Over)
|
{
|
AfterTax = StaffMoney - ((StaffMoney - decimal.Parse(WebInfo.Instance.TaxBasic.ToString())) * decimal.Parse(WebInfo.Instance.TaxLV7Rate.ToString()) / 100) + WebInfo.Instance.TaxLV7Deduction;
|
}
|
else if ((StaffMoney - decimal.Parse(WebInfo.Instance.TaxBasic.ToString())) > WebInfo.Instance.TaxLV6Over)
|
{
|
AfterTax = StaffMoney - ((StaffMoney - decimal.Parse(WebInfo.Instance.TaxBasic.ToString())) * decimal.Parse(WebInfo.Instance.TaxLV6Rate.ToString()) / 100) + WebInfo.Instance.TaxLV6Deduction;
|
}
|
else if ((StaffMoney - decimal.Parse(WebInfo.Instance.TaxBasic.ToString())) > WebInfo.Instance.TaxLV5Over)
|
{
|
AfterTax = StaffMoney - ((StaffMoney - decimal.Parse(WebInfo.Instance.TaxBasic.ToString())) * decimal.Parse(WebInfo.Instance.TaxLV5Rate.ToString()) / 100) + WebInfo.Instance.TaxLV5Deduction;
|
}
|
else if ((StaffMoney - decimal.Parse(WebInfo.Instance.TaxBasic.ToString())) > WebInfo.Instance.TaxLV4Over)
|
{
|
AfterTax = StaffMoney - ((StaffMoney - decimal.Parse(WebInfo.Instance.TaxBasic.ToString())) * decimal.Parse(WebInfo.Instance.TaxLV4Rate.ToString()) / 100) + WebInfo.Instance.TaxLV4Deduction;
|
}
|
else if ((StaffMoney - decimal.Parse(WebInfo.Instance.TaxBasic.ToString())) > WebInfo.Instance.TaxLV3Over)
|
{
|
AfterTax = StaffMoney - ((StaffMoney - decimal.Parse(WebInfo.Instance.TaxBasic.ToString())) * decimal.Parse(WebInfo.Instance.TaxLV3Rate.ToString()) / 100) + WebInfo.Instance.TaxLV3Deduction;
|
}
|
else if ((StaffMoney - decimal.Parse(WebInfo.Instance.TaxBasic.ToString())) > WebInfo.Instance.TaxLV2Over)
|
{
|
AfterTax = StaffMoney - ((StaffMoney - decimal.Parse(WebInfo.Instance.TaxBasic.ToString())) * decimal.Parse(WebInfo.Instance.TaxLV2Rate.ToString()) / 100) + WebInfo.Instance.TaxLV2Deduction;
|
}
|
else if ((StaffMoney - decimal.Parse(WebInfo.Instance.TaxBasic.ToString())) > WebInfo.Instance.TaxLV1Over)
|
{
|
AfterTax = StaffMoney - ((StaffMoney - decimal.Parse(WebInfo.Instance.TaxBasic.ToString())) * decimal.Parse(WebInfo.Instance.TaxLV1Rate.ToString()) / 100) + WebInfo.Instance.TaxLV1Deduction;
|
}
|
else
|
{
|
AfterTax = StaffMoney;
|
}
|
|
return AfterTax;
|
}
|
}
|
}
|