20260621-2633 Implementation of the New Tax Policy

This commit is contained in:
Shahadat Hossain 2026-06-21 13:50:33 +06:00
parent fc00f49ee4
commit 13704086c3
3 changed files with 31 additions and 4 deletions

View File

@ -913,7 +913,9 @@ namespace Payroll.BO
Exemption_LFA_Allowance = -234, Exemption_LFA_Allowance = -234,
Tax_Refund_On_Current_Year = -235, Tax_Refund_On_Current_Year = -235,
Tax_on_Tax_Net_Payable = -236, Tax_on_Tax_Net_Payable = -236,
AnnualExemption = -305 AnnualExemption = -305,
Tax_Incentive = -155
} }
[Serializable] [Serializable]

View File

@ -1930,7 +1930,32 @@ namespace Payroll.BO
EnumIncomeTaxItemGroup.Tax_Credit_On_Investment, (int)EnumIncomeTaxItemGroup.Tax_Credit_On_Investment); EnumIncomeTaxItemGroup.Tax_Credit_On_Investment, (int)EnumIncomeTaxItemGroup.Tax_Credit_On_Investment);
if (InvestItem == null) this.CalculateInvestment(); if (InvestItem == null) this.CalculateInvestment();
netPayable.ProjectedAmount = GrossTax.TotalAmount - InvestItem.TotalAmount; netPayable.ProjectedAmount = netPayable.ProjectedAmount + GrossTax.TotalAmount - InvestItem.TotalAmount;
#region Tax Incentive
ProcessItem pitem = _processItems.FirstOrDefault(x => x.ItemGroup == (int)EnumIncomeTaxSide.Dec_GrossTax && x.ItemCode == (int)EnumIncomeTaxItemGroup.Tax_Incentive);
if (netPayable.ProjectedAmount > 0 && pitem != null)
{
IncomeTax incentive = _currentYearTax.FirstOrDefault(x => x.EmployeeID == _employee.ID &&
x.ItemGroup == EnumIncomeTaxItemGroup.Tax_Incentive && x.ItemID == (int)EnumIncomeTaxItemGroup.Tax_Incentive);
if (incentive == null) incentive = this.Add(EnumIncomeTaxItemGroup.Tax_Incentive,
(int)EnumIncomeTaxItemGroup.Tax_Incentive, "Tax Incentive", 0, 0, EnumIncomeTaxSide.Dec_GrossTax);
incentive.TotalAmount = 0;
incentive.PreviousAmount = 0;
incentive.ThisMonthAmount = 0;
incentive.ProjectedAmount = 0;
incentive.ProjectedAmount = GlobalFunctions.Round(netPayable.ProjectedAmount * 0.05);
if (incentive.ProjectedAmount > 25000)
{
incentive.ProjectedAmount = 25000;
}
incentive.TotalAmount = GlobalFunctions.Round(incentive.ProjectedAmount);
netPayable.ProjectedAmount = netPayable.ProjectedAmount - incentive.TotalAmount;
}
#endregion
//netPayable.ProjectedAmount = GrossTax.TotalAmount - InvestItem.TotalAmount;
if (netPayable.ProjectedAmount < _taxParameter.MinTaxAmount) if (netPayable.ProjectedAmount < _taxParameter.MinTaxAmount)
netPayable.ProjectedAmount = _taxParameter.MinTaxAmount; netPayable.ProjectedAmount = _taxParameter.MinTaxAmount;

View File

@ -32,5 +32,5 @@ using System.Runtime.InteropServices;
// You can specify all the values or you can default the Build and Revision Numbers // You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below: // by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")] // [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("9.20.23.0")] [assembly: AssemblyVersion("21.6.26.0")]
[assembly: AssemblyFileVersion("9.20.23.0")] [assembly: AssemblyFileVersion("21.6.26.0")]