20260806-2930 Need to change title "Bonus & Other Allowance" to "Bonus" at fIncometaxCertificate #8
|
|
@ -1437,6 +1437,11 @@ namespace Payroll.BO
|
|||
item.BasicCurrentDeduct = nTotalUnAuthorizedLeave - item.BasicPaidDays;
|
||||
item.BasicPaidDays += item.BasicCurrentDeduct;
|
||||
item.BasicUnpaidDays = 0;
|
||||
|
||||
// Allowances set in the parameter are cut for the same days as Basic
|
||||
item.OtherCurrentDeduct = nTotalUnAuthorizedLeave - item.OtherPaidDays;
|
||||
item.OtherPaidDays += item.OtherCurrentDeduct;
|
||||
item.OtherUnpaidDays = 0;
|
||||
}
|
||||
|
||||
foreach (UnAuthorizeLeaveParamDetail detail in Param.Details)
|
||||
|
|
@ -1497,13 +1502,51 @@ namespace Payroll.BO
|
|||
detail.Type == EnumSalaryComponent.Basic ? (int)EnumSalaryItemCode.Basic_Salary : detail.AllowanceID.Integer,
|
||||
salaryDetail.SupportID.Integer, salaryDetail.Description, GlobalFunctions.Round(nAmount));
|
||||
|
||||
this.AddDetail(salary, EnumSalaryGroup.Miscellaneous, EnumSalaryItemCode.Tot_UnauthLeave_Days, Param.UnAhuthorizeLeaveID.Integer, 0, "UnAuthorized Leave Days", nThisMonthUnAuthorizedLeave);
|
||||
//if(nUnpaidDays>0)
|
||||
//{
|
||||
|
||||
// }
|
||||
}
|
||||
|
||||
// Days deducted this month, added once (not per parameter item); used by salary sheet, payslip and arrear
|
||||
if (Param.Details.Count > 0)
|
||||
this.AddDetail(salary, EnumSalaryGroup.Miscellaneous, EnumSalaryItemCode.Tot_UnauthLeave_Days, Param.UnAhuthorizeLeaveID.Integer, 0, "UnAuthorized Leave Days", item.BasicCurrentDeduct);
|
||||
|
||||
#region Deduct all allowances for unauthorized leave
|
||||
// Same days and daily-rate formula as Basic; allowances already set in the parameter are skipped to avoid double deduction
|
||||
if (item.BasicCurrentDeduct > 0)
|
||||
{
|
||||
List<SalaryMonthlyDetail> allowances = salary.Details.FindAll(delegate(SalaryMonthlyDetail dtl)
|
||||
{
|
||||
return dtl.itemGroupCode == EnumSalaryGroup.Gross && dtl.ItemCode == EnumSalaryItemCode.Allowance;
|
||||
});
|
||||
|
||||
foreach (SalaryMonthlyDetail allowance in allowances)
|
||||
{
|
||||
bool isInParam = Param.Details.Exists(delegate(UnAuthorizeLeaveParamDetail pd)
|
||||
{
|
||||
return pd.Type == EnumSalaryComponent.Allowance && pd.AllowanceID.Integer == allowance.ItemID;
|
||||
});
|
||||
if (isInParam) continue;
|
||||
|
||||
nAmount = allowance.CalculatedAmount;
|
||||
if (salary.Employee.JoiningDate > GlobalFunctions.FirstDateOfMonth(_processMonth))
|
||||
{
|
||||
double ndays = Ease.CoreV35.Utility.Global.DateFunctions.DateDiff("d", salary.Employee.JoiningDate, _processMonth) + 1;
|
||||
nAmount = nAmount / ndays;
|
||||
nAmount = nAmount * _processMonth.Day;
|
||||
}
|
||||
|
||||
nAmount = GlobalFunctions.ConevrtToDlyRateofMonth(nAmount, _processMonth) * item.BasicCurrentDeduct;
|
||||
nAmount = GlobalFunctions.Round(nAmount);
|
||||
if (nAmount <= 0) continue;
|
||||
|
||||
this.AddDetail(salary, EnumSalaryGroup.UnauthLeave, EnumSalaryItemCode.Allowance,
|
||||
allowance.ItemID, allowance.SupportID.Integer, allowance.Description, nAmount);
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
|
||||
//}
|
||||
|
||||
//item.currentDeduct = nUnpaidDays;
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load Diff
|
|
@ -385,6 +385,27 @@ namespace Payroll.Service
|
|||
|
||||
internal static DataSet GetTaxCertificate(TransactionContext tc, string empNo, int taxParamId)
|
||||
{
|
||||
//string sql = SQLParser.MakeSQL(@"SELECT * FROM(
|
||||
// SELECT CASE it.DESCRIPTION
|
||||
// WHEN 'Basic Salary' THEN 'Basic'
|
||||
// WHEN 'House Rent Allowance' THEN 'House'
|
||||
// WHEN 'Conveyance Allowance' THEN 'Conveyance'
|
||||
// WHEN 'Medical Allowance' THEN 'Medical'
|
||||
// END Description,it.TOTALAMOUNT Amount, position FROM INCOMETAXYEARLY it,employee e
|
||||
// WHERE it.EMPLOYEEID=e.EMPLOYEEID
|
||||
// AND e.EMPLOYEENO=%s
|
||||
// AND it.TAXPARAMID=%n
|
||||
// AND it.ItemCode IN(-201,-203,-205,-222)
|
||||
// UNION
|
||||
// SELECT 'Bonus & other allowance',SUM(it.TOTALAMOUNT) Amount, 200 position FROM INCOMETAXYEARLY it,employee e
|
||||
// WHERE it.EMPLOYEEID=e.EMPLOYEEID
|
||||
// AND e.EMPLOYEENO=%s
|
||||
// AND it.TAXPARAMID=%n
|
||||
// AND it.ItemCode IN(-213, -224)
|
||||
// ) tab1
|
||||
// ORDER BY position
|
||||
// ", empNo, taxParamId, empNo, taxParamId);
|
||||
//return tc.ExecuteDataSet(sql);
|
||||
string sql = SQLParser.MakeSQL(@"SELECT * FROM(
|
||||
SELECT CASE it.DESCRIPTION
|
||||
WHEN 'Basic Salary' THEN 'Basic'
|
||||
|
|
@ -397,7 +418,7 @@ namespace Payroll.Service
|
|||
AND it.TAXPARAMID=%n
|
||||
AND it.ItemCode IN(-201,-203,-205,-222)
|
||||
UNION
|
||||
SELECT 'Bonus & other allowance',SUM(it.TOTALAMOUNT) Amount, 200 position FROM INCOMETAXYEARLY it,employee e
|
||||
SELECT 'Bonus',SUM(it.TOTALAMOUNT) Amount, 200 position FROM INCOMETAXYEARLY it,employee e
|
||||
WHERE it.EMPLOYEEID=e.EMPLOYEEID
|
||||
AND e.EMPLOYEENO=%s
|
||||
AND it.TAXPARAMID=%n
|
||||
|
|
|
|||
|
|
@ -7,10 +7,8 @@
|
|||
<section name="InformationForReportTool" type="Ease.SearchTools.Objects.InformationForReportToolConfigHandler, Ease.SearchTools.Objects"/>
|
||||
</configSections>
|
||||
<dbSettings>
|
||||
<connection name="conn" provider="sql" connectionString="server=cel80;Database=CELPayroll;User ID=CELPayroll;password=4B06094270245E4D5B63" sqlSyntax="SQL"/>
|
||||
<!--<connection name="conn" provider="sql" connectionString="server=103.197.204.164,1718;Database=CELPayrol;User ID=Easeuser;Password=EaSeuSeR2025" sqlSyntax="SQL"/>-->
|
||||
|
||||
<!--<connection name="conn" provider="sql" connectionString="server=WIN-D48IJC70V70;Database=GPPayroll;integrated security=yes;" sqlSyntax="SQL"/>-->
|
||||
<!--<connection name="conn" provider="sql" connectionString="server=cel80;Database=CELPayroll;User ID=CELPayroll;password=4B06094270245E4D5B63" sqlSyntax="SQL"/>-->
|
||||
<connection name="conn" provider="sql" connectionString="server=103.197.204.164,1718;Database=CELPayrol;User ID=DBuser;Password=ceLEa&e2025" sqlSyntax="SQL"/>
|
||||
</dbSettings>
|
||||
<appSettings>
|
||||
<add key="serviceHandler" value="Payroll.Service.dll/conn"/>
|
||||
|
|
|
|||
|
|
@ -32,5 +32,5 @@ using System.Runtime.InteropServices;
|
|||
// You can specify all the values or you can default the Build and Revision Numbers
|
||||
// by using the '*' as shown below:
|
||||
// [assembly: AssemblyVersion("1.0.*")]
|
||||
[assembly: AssemblyVersion("21.6.26.0")]
|
||||
[assembly: AssemblyFileVersion("21.6.26.0")]
|
||||
[assembly: AssemblyVersion("26.10.26.0")]
|
||||
[assembly: AssemblyFileVersion("26.10.26.0")]
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user