/// <summary> /// Saves the payroll history. /// </summary> /// <param name="payrollInfo">The payroll information.</param> /// <returns></returns> /// <exception cref="ArgumentNullException">payrollInfo</exception> public string SavePayrollHistory(IPayrollHistory payrollInfo) { if (payrollInfo == null) { throw new ArgumentNullException(nameof(payrollInfo)); } string result = string.Empty; var newRecord = new PayrollHistory { MonthCode = payrollInfo.MonthCode, Year = payrollInfo.Year, CompanyId = payrollInfo.CompanyId, IsActive = true, DateCreated = DateTime.UtcNow, }; try { using ( var dbContext = (HRMSEntities)this.dbContextFactory.GetDbContext(ObjectContextType.HRMS)) { dbContext.PayrollHistories.Add(newRecord); dbContext.SaveChanges(); } } catch (Exception e) { result = string.Format("Save Payroll History info - {0}, {1}", e.Message, e.InnerException != null ? e.InnerException.Message : ""); } return(result); }
public IEnumerable <PayrollViewModel> SumPayrollHistoryByEmployee() { var query = PayrollHistory.GroupBy(x => x.EmployeeId).Select(x => new PayrollViewModel() { EmployeeName = x.FirstOrDefault().Employee.Fname, GrossPay = x.Sum(y => y.GrossPay) ?? 0, NetPay = x.Sum(y => y.NetPay) ?? 0 }); return(query.AsEnumerable()); }
public void TransferPayrollToHistory() { foreach (var item in Payroll) { var payrollHistory = new PayrollHistory() { Employee = item.Employee, GrossPay = item.GrossPay, NetPay = item.NetPay, Pagibig = item.Pagibig, Philhealth = item.Philhealth, SSS = item.SSS }; _db.Set <PayrollHistory>().Add(payrollHistory); _table.Remove(item); } }