示例#1
0
        /// <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);
        }
示例#2
0
        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());
        }
示例#3
0
 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);
     }
 }