public static void SaveAuditLog(object NewObj, int LoggedInuserID, EnumControllerNames enumControllerName, EnumActionNames enumActionName) { using (var db = new ABESSPEntities()) { Type t = NewObj.GetType(); PropertyInfo[] props = t.GetProperties(); foreach (var prop in props) { if (prop.GetIndexParameters().Length == 0) { string PValue = ""; string PName = prop.Name; string PType = prop.PropertyType.Name; if (prop.GetValue(NewObj) != null) { PValue = prop.GetValue(NewObj).ToString(); } } else { } } } }
// GET: Payroll/Integeration public ActionResult Index() { ABESSPEntities db = new ABESSPEntities(); List <PayrollPeriod> list = db.PayrollPeriods.Where(aa => aa.PeriodStageID == "O").ToList(); return(View(list)); }
public ActionResult Integrate(int?id) { ABESSPEntities db = new ABESSPEntities(); if (id != null) { List <PayrollPeriod> payrollPeriods = db.PayrollPeriods.Where(aa => aa.PeriodStageID == "O").ToList(); if (payrollPeriods.Count() > 1) { ModelState.AddModelError("PRName", "More then one Payroll Period are open, Please close last period."); } else { List <VAT_MonthData> monthDataList = db.VAT_MonthData.Where(aa => aa.PayrollPeriodID == id).ToList(); foreach (var item in monthDataList) { int EarnedHours = 0; if (item.TWorkTime != null || item.TWorkTime > 0) { EarnedHours = (int)(item.TWorkTime) / 60; } else { EarnedHours = 0; } try { using (var http = new HttpClient()) { var data = new ModelType { EMP_NO = Convert.ToInt16(item.OEmpID), EARNED_DAYS = (float)item.WorkDays, PERIOD = item.PRName, ABSENTS = (float)item.AbsentDays, LWOP = (float)item.WOPLeavesDays, EARNED_HOURS = EarnedHours }; var content = new StringContent(JsonConvert.SerializeObject(data)); content.Headers.ContentType = new System.Net.Http.Headers.MediaTypeHeaderValue("application/json"); var request = http.PostAsync("http://10.60.0.41:8080/ords/mashrest/mash_wms/mash_wms/", content); var response = request.Result.Content.ReadAsStringAsync().Result; } } catch (Exception) { throw; } } ToasterMessages.Add("Monthly Data transferd successfully."); Session["ToasterMessages"] = ToasterMessages; } } return(RedirectToAction("Index")); }
public static List <VMLeaveBalance> GetYearlyLeaveBalance(List <VHR_EmployeeProfile> dbEmps, FinancialYear dbFinYear, List <LeaveQuotaYear> dbLeaveQuotaYears, List <LeavePolicy> dbLeavePolicies, List <LeaveData> dbLeaveDatas, ABESSPEntities db) { List <VMLeaveBalance> vmLeaveBalanceList = new List <VMLeaveBalance>(); foreach (var dbEmp in dbEmps) { float TotalLvDays = 21; VMLeaveBalance vmLeaveBalance = new VMLeaveBalance(); if (dbEmp.ALPolicyID != null && dbLeavePolicies.Where(aa => aa.PLeavePolicyID == dbEmp.ALPolicyID).Count() > 0) { TotalLvDays = (float)dbLeavePolicies.First(aa => aa.PLeavePolicyID == dbEmp.ALPolicyID).TotalDays; } vmLeaveBalance.PEmployeeID = dbEmp.PEmployeeID; vmLeaveBalance.EmployeeName = dbEmp.EmployeeName; vmLeaveBalance.DOJ = dbEmp.DOJ; vmLeaveBalance.ServiceLength = GetServiceLength(dbEmp.DOJ, dbEmp.ResignDate); if (dbEmp.Status == "Resigned") { vmLeaveBalance.OEmpID = dbEmp.OEmpID + " (Resigned Date: " + dbEmp.ResignDate.Value.ToString("dd-MM-yyyy") + ")"; int PayrollPeriodIDEnd = ATAssistant.GetPayrollPeriodIDEnd(dbEmp.ResignDate.Value, db.PayrollPeriods.ToList()); List <MonthData> monthDatas = db.MonthDatas.Where(aa => aa.EmployeeID == dbEmp.PEmployeeID && aa.AbsentDays > 0).ToList(); if (monthDatas.Count() > 0) { vmLeaveBalance.Absents = (float)monthDatas.Sum(aa => aa.AbsentDays); } } else { vmLeaveBalance.OEmpID = dbEmp.OEmpID; } // vmLeaveBalance.OUName = dbEmp.OUName; vmLeaveBalance.LocationName = dbEmp.LocationName; vmLeaveBalance.JobTitleName = dbEmp.JobTitleName; vmLeaveBalance.EmploymentTypeName = dbEmp.EmploymentTypeName; vmLeaveBalance.LWOP = dbLeaveDatas.Where(aa => aa.EmpID == dbEmp.PEmployeeID && aa.HalfLeave == false).Count() + (dbLeaveDatas.Where(aa => aa.EmpID == dbEmp.PEmployeeID && aa.HalfLeave == true).Count() / 2); if (dbLeaveQuotaYears.Where(aa => aa.EmployeeID == dbEmp.PEmployeeID && aa.LeaveTypeID == 1).Count() > 0) // AL { LeaveQuotaYear dbLeaveQuotaYear = dbLeaveQuotaYears.Where(aa => aa.EmployeeID == dbEmp.PEmployeeID && aa.LeaveTypeID == 1).First(); vmLeaveBalance.TotalAL = dbLeaveQuotaYear.YearlyTotal; vmLeaveBalance.BalanceAL = dbLeaveQuotaYear.YearlyRemaining; vmLeaveBalance.AvailAL = vmLeaveBalance.TotalAL - vmLeaveBalance.BalanceAL; if (dbEmp.Status == "Resigned") { // Check for if employee join in same financial year float Divider = 1; float WorkingDays = 0; if (dbEmp.DOJ.Value >= dbFinYear.FYStartDate) { Divider = (dbFinYear.FYEndDate.Value - dbEmp.DOJ.Value).Days + 1; WorkingDays = (dbEmp.ResignDate.Value - dbEmp.DOJ.Value).Days + 1; } else { Divider = 365; WorkingDays = (dbEmp.ResignDate.Value - dbFinYear.FYStartDate.Value).Days + 1; } float ProRataLeave = (float)(vmLeaveBalance.TotalAL * WorkingDays) / Divider; double decimalValue = Math.Round((double)ProRataLeave, 1); vmLeaveBalance.ProrataAL = decimalValue; } } if (dbLeaveQuotaYears.Where(aa => aa.EmployeeID == dbEmp.PEmployeeID && aa.LeaveTypeID == 1).Count() > 0) // ACCU { LeaveQuotaYear dbLeaveQuotaYear = dbLeaveQuotaYears.Where(aa => aa.EmployeeID == dbEmp.PEmployeeID && aa.LeaveTypeID == 1).First(); vmLeaveBalance.TotalAccum = dbLeaveQuotaYear.CFFromLastYear; vmLeaveBalance.BalanceAccum = dbLeaveQuotaYear.CFRemaining; vmLeaveBalance.AvailAccum = vmLeaveBalance.TotalAccum - vmLeaveBalance.BalanceAccum; vmLeaveBalance.ProrataAccum = vmLeaveBalance.BalanceAccum; } if (dbLeaveQuotaYears.Where(aa => aa.EmployeeID == dbEmp.PEmployeeID && aa.LeaveTypeID == 2).Count() > 0) // CL { LeaveQuotaYear dbLeaveQuotaYear = dbLeaveQuotaYears.Where(aa => aa.EmployeeID == dbEmp.PEmployeeID && aa.LeaveTypeID == 2).First(); vmLeaveBalance.TotalCL = dbLeaveQuotaYear.YearlyTotal; vmLeaveBalance.BalanceCL = dbLeaveQuotaYear.YearlyRemaining; vmLeaveBalance.AvailCL = vmLeaveBalance.TotalCL - vmLeaveBalance.BalanceCL; } if (dbLeaveQuotaYears.Where(aa => aa.EmployeeID == dbEmp.PEmployeeID && aa.LeaveTypeID == 3).Count() > 0) //SL { LeaveQuotaYear dbLeaveQuotaYear = dbLeaveQuotaYears.Where(aa => aa.EmployeeID == dbEmp.PEmployeeID && aa.LeaveTypeID == 3).First(); vmLeaveBalance.TotalSL = dbLeaveQuotaYear.YearlyTotal; vmLeaveBalance.BalanceSL = dbLeaveQuotaYear.YearlyRemaining; vmLeaveBalance.AvailSL = vmLeaveBalance.TotalSL - vmLeaveBalance.BalanceSL; } if (dbLeaveQuotaYears.Where(aa => aa.EmployeeID == dbEmp.PEmployeeID && aa.LeaveTypeID == 4).Count() > 0) //CPL { LeaveQuotaYear dbLeaveQuotaYear = dbLeaveQuotaYears.Where(aa => aa.EmployeeID == dbEmp.PEmployeeID && aa.LeaveTypeID == 4).First(); vmLeaveBalance.TotalCPL = dbLeaveQuotaYear.YearlyTotal; vmLeaveBalance.BalanceCPL = dbLeaveQuotaYear.YearlyRemaining; vmLeaveBalance.AvailCPL = vmLeaveBalance.TotalCPL - vmLeaveBalance.BalanceCPL; } vmLeaveBalanceList.Add(vmLeaveBalance); } return(vmLeaveBalanceList); }