200 lines
9.4 KiB
C#
200 lines
9.4 KiB
C#
|
|
//using Ease.Core.Model;
|
|
|
|
|
|
//using System;
|
|
//using System.Collections.Generic;
|
|
//using System.Data;
|
|
//using System.IO;
|
|
//using System.Threading;
|
|
|
|
//namespace HRM.BO
|
|
//{
|
|
// public class OvertimeProcess
|
|
// {
|
|
// private List<EmployeeOverTime> _EmpOvertimes = null;
|
|
// private List<OTProcess> _OtProcess = null;
|
|
|
|
// public OvertimeProcess()
|
|
// {
|
|
|
|
// }
|
|
|
|
// public List<OTProcess> ProcessData
|
|
// {
|
|
// get
|
|
// {
|
|
// return _OtProcess;
|
|
// }
|
|
// }
|
|
|
|
// //public List<Term> GetTerms(int nEmpID)
|
|
// //{
|
|
// // Employee oEmp = Employee.Get(nEmpID);
|
|
// // if (oEmp != null && !oEmp.ID.IsUnassigned && oEmp.ID.Integer>0 && !oEmp.GradeID.IsUnassigned && oEmp.GradeID.Integer>0)
|
|
// // {
|
|
// // return GetTerms(oEmp);
|
|
// // }
|
|
// // return null;
|
|
// //}
|
|
|
|
// //public List<Term> GetTerms(Employee oEmp)
|
|
// //{
|
|
// // List<Term> terms = null;
|
|
// // if (oEmp != null && !oEmp.ID.IsUnassigned && oEmp.ID.Integer > 0 && !oEmp.GradeID.IsUnassigned && oEmp.GradeID.Integer > 0)
|
|
// // {
|
|
// // List<TermParameter> termParams = TermParameter.GetByGradeID(oEmp.GradeID);
|
|
// // if (termParams != null)
|
|
// // {
|
|
// // terms = new List<Term>();
|
|
// // foreach (TermParameter param in termParams)
|
|
// // {
|
|
// // if (!terms.Exists(delegate(Term trm) { return trm.ID.Integer == param.Term.ID.Integer; }))
|
|
// // {
|
|
// // terms.Add(param.Term);
|
|
// // }
|
|
// // }
|
|
// // }
|
|
// // }
|
|
// // return terms;
|
|
// //}
|
|
|
|
// //public List<TermParameter> GetTermParameters(Employee oEmp)
|
|
// //{
|
|
// // if (oEmp != null && !oEmp.ID.IsUnassigned && oEmp.ID.Integer > 0 && !oEmp.GradeID.IsUnassigned && oEmp.GradeID.Integer > 0)
|
|
// // {
|
|
// // List<TermParameter> termParams = TermParameter.GetByGradeID(oEmp.GradeID);
|
|
// // return termParams;
|
|
// // }
|
|
// // return null;
|
|
// //}
|
|
|
|
// //public List<TermParameter> GetTermParameters(int nEmpID)
|
|
// //{
|
|
// // Employee oEmp = Employee.Get(nEmpID);
|
|
// // return GetTermParameters(oEmp);
|
|
// //}
|
|
|
|
// //public void Process()
|
|
// //{
|
|
// // TermParameter.EntryType = ConfigurationManager.GetStringValue("overtime", "entrytype", EnumConfigurationType.Logic);
|
|
// // bool calOnEarnedBasic = ConfigurationManager.GetBoolValue("overtime", "earnedbasic", EnumConfigurationType.Logic);
|
|
// // int basicOnMonth = ConfigurationManager.GetIntValue("overtime", "basicondate", EnumConfigurationType.Logic);
|
|
// // if (basicOnMonth == 0) basicOnMonth = 1;
|
|
|
|
// // List<Employee> omployees = Employee.Get();
|
|
// // _OtProcess = new List<OTProcess>();
|
|
// // _EmpOvertimes = EmployeeOverTime.Get(SystemInformation.CurrentSysInfo.NextPayProcessDate,Payroll.BO.SystemInformation.CurrentSysInfo.PayrollTypeID);
|
|
// // double basicSalary = 0;
|
|
// // if (_EmpOvertimes != null && _EmpOvertimes.Count > 0)
|
|
// // {
|
|
// // foreach (EmployeeOverTime ot in _EmpOvertimes)
|
|
// // {
|
|
// // basicSalary = 0;
|
|
// // DateTime basicDate = new DateTime(ot.OTMonth.Year, ot.OTMonth.Month, basicOnMonth);
|
|
// // if (calOnEarnedBasic == false)
|
|
// // {
|
|
// // Employee omp = omployees.FirstOrDefault(x => x.ID.Integer == ot.EmployeeID.Integer);
|
|
// // if (omp != null)
|
|
// // basicSalary = omp.BasicSalary;
|
|
|
|
// // //EmployeeGradeSalary gs = EmployeeGradeSalary.Get(ot.EmployeeID,
|
|
// // // basicDate, EnumArrearType.NotPresent);
|
|
// // //if (gs == null) gs = EmployeeGradeSalary.Get(ot.EmployeeID,
|
|
// // // PayrollPayrollGlobalFunctions.PayrollLastDateOfMonth(ot.OTMonth), EnumArrearType.ToCalculate);
|
|
|
|
// // //if (gs == null)
|
|
// // //{
|
|
// // // if (ot.Employee.BasicSalary == 0)
|
|
// // // {
|
|
// // // throw new ServiceException(" Basic salary not found for the employee:" + ot.Employee.Name
|
|
// // // + "( " + ot.Employee.EmployeeNo + ") on month" + ot.OTMonth.ToString("MMM yyyy"));
|
|
// // // }
|
|
// // // else
|
|
// // // {
|
|
// // // //DateTime dMonth = SystemInformation.CurrentSysInfo.NextPayProcessDate;
|
|
// // // //if(ot.Employee.JoiningDate.Month == SystemInformation.CurrentSysInfo.NextPayProcessDate.Month &&
|
|
// // // // ot.Employee.JoiningDate.Month == SystemInformation.CurrentSysInfo.NextPayProcessDate.Month)
|
|
// // // // dMonth =ot.Employee.JoiningDate;
|
|
// // // basicSalary = ot.Employee.BasicSalary;
|
|
// // // }
|
|
// // //}
|
|
// // ////else basicSalary = gs.BasicSalary * PayrollPayrollGlobalFunctions.GetFractinalOfMonth(gs.EffectDate);
|
|
// // //// doesn't need to fractionate, cause it is not base on earned basic;
|
|
// // //else basicSalary = gs.BasicSalary ;
|
|
// // //else basicSalary = ot.Employee.BasicSalary; // for redisha back process
|
|
// // }
|
|
// // else
|
|
// // {
|
|
// // SalaryMonthly salary = SalaryMonthly.Get(ot.EmployeeID, PayrollPayrollGlobalFunctions.PayrollLastDateOfMonth(ot.OTMonth));
|
|
// // if (salary == null)
|
|
// // {
|
|
// // EmployeeGradeSalary gs = EmployeeGradeSalary.Get(ot.EmployeeID,
|
|
// // PayrollPayrollGlobalFunctions.PayrollLastDateOfMonth(ot.OTMonth), EnumArrearType.NotPresent);
|
|
|
|
// // if (gs == null) gs=EmployeeGradeSalary.Get(ot.EmployeeID,
|
|
// // PayrollPayrollGlobalFunctions.PayrollLastDateOfMonth(ot.OTMonth), EnumArrearType.ToCalculate);
|
|
|
|
// // if (gs == null)
|
|
// // {
|
|
// // if (ot.Employee.BasicSalary == 0)
|
|
// // {
|
|
// // throw new ServiceException(" Basic salary not found for the employee:" + ot.Employee.Name
|
|
// // + "( " + ot.Employee.EmployeeNo + ") on month" + ot.OTMonth.ToString("MMM yyyy"));
|
|
// // }
|
|
// // else basicSalary = ot.Employee.BasicSalary;//* PayrollPayrollGlobalFunctions.GetFractinalOfMonth(ot.Employee.JoiningDate);
|
|
// // }
|
|
// // else basicSalary = gs.BasicSalary * PayrollPayrollGlobalFunctions.GetFractinalOfMonth(gs.EffectDate);
|
|
// // }
|
|
// // else
|
|
// // {
|
|
// // basicSalary = salary.GetGrossAmount(EnumSalaryItemCode.Basic_Salary, (int)EnumSalaryItemCode.Basic_Salary);
|
|
// // }
|
|
|
|
// // }
|
|
// // _OtProcess.Add(CreateObject(ot, basicSalary));
|
|
// // }
|
|
// // }
|
|
// //}
|
|
|
|
// //public List<OTProcess> Process(Employee oEmp)
|
|
// //{
|
|
// // _OtProcess = new List<OTProcess>();
|
|
// // _EmpOvertimes = EmployeeOverTime.GetByEmpID(oEmp.ID, SystemInformation.CurrentSysInfo.NextPayProcessDate);
|
|
// // if (_EmpOvertimes != null && _EmpOvertimes.Count > 0)
|
|
// // {
|
|
// // foreach (EmployeeOverTime ot in _EmpOvertimes)
|
|
// // {
|
|
// // _OtProcess.Add(CreateObject(ot, ot.Employee.BasicSalary));
|
|
// // }
|
|
// // OTProcess.Save(_OtProcess);
|
|
// // }
|
|
// // return _OtProcess;
|
|
// //}
|
|
|
|
// //public OTProcess ProcessArrear(OTProcess process,Double nBasic)
|
|
// //{
|
|
|
|
// // OTProcess oNewProcess= CreateObject(process.EmpOverTime, nBasic);
|
|
// // process.Amount = oNewProcess.Amount -process.Amount;
|
|
// // return process;
|
|
// //}
|
|
|
|
// //private OTProcess CreateObject(EmployeeOverTime ot,Double nBasic)
|
|
// //{
|
|
// // OTProcess process = new OTProcess();
|
|
// // process.EmployeeID = ot.EmployeeID;
|
|
// // process.EmpOverTimeID = ot.ID;
|
|
// // process.MonthDate =PayrollPayrollGlobalFunctions.PayrollLastDateOfMonth(ot.MonthDate);
|
|
// // process.OTMonth =PayrollPayrollGlobalFunctions.PayrollLastDateOfMonth(ot.OTMonth);
|
|
// // process.TermID = ot.TermID;
|
|
// // process.TermParameterID = ot.TermParameterID;
|
|
// // process.TotalHour = ot.OTHours;
|
|
// // process.Amount = ot.TermParam.GetPayableAmount(ot, nBasic);
|
|
// // process.PayrollTypeID = Payroll.BO.SystemInformation.CurrentSysInfo.PayrollTypeID;
|
|
|
|
// // return process;
|
|
// //}
|
|
// }
|
|
//}
|