Beispiel #1
0
        public ActionResult Edit(Deductions obj)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    var result = iDeductions.Update(obj, "u");
                    return(Json(new
                    {
                        ErrorCode = result.ErrorCode,
                        Message = result.Msg,
                        Id = result.Id,
                        JsonRequestBehavior.AllowGet
                    }));
                }
                catch (Exception ex)
                {
                    return(Json(new { ErrorCode = 1, Message = ex.Message }, JsonRequestBehavior.AllowGet));
                }
            }
            Response.TrySkipIisCustomErrors = true;
            string messages = string.Join("; ", ModelState.Values
                                          .SelectMany(x => x.Errors)
                                          .Select(x => x.ErrorMessage));

            return(Json(new { ErrorCode = 1, Message = messages }, JsonRequestBehavior.AllowGet));
        }
Beispiel #2
0
 public PaycheckContext(EmployeeInfo employeeInfo, Earnings earnings, Deductions deductions, Taxes taxes, Benefits benefits)
 {
     EmployeeInfo = employeeInfo;
     Earnings     = earnings;
     Deductions   = deductions;
     Taxes        = taxes;
     Benefits     = benefits;
 }
Beispiel #3
0
 public ActionResult Edit(string id)
 {
     try
     {
         Deductions obj = iDeductions.GetById(id);
         return(PartialView(obj));
     }
     catch (Exception ex)
     {
         return(Json(new { ErrorCode = 1, Message = ex.Message }, JsonRequestBehavior.AllowGet));
     }
 }
Beispiel #4
0
        public Deductions GetById(string Id)
        {
            SqlParameter[] param = { new SqlParameter("@flag", SqlDbType.VarChar, 50)
                                     {
                                         Value = "s"
                                     }
                                     ,                         new SqlParameter("@Id", SqlDbType.Int)
                                     {
                                         Value = Id
                                     } };
            DataRow        result = SqlHelper.ExecuteDataRow("spDeductions", param);
            Deductions     obj    = new Deductions();

            obj.Id       = Convert.ToInt32(result["Id"]);
            obj.Name     = result["Name"].ToString();
            obj.IsActive = Convert.ToBoolean(result["IsActive"].ToString());

            return(obj);
        }
        public Deductions ComputeTaxes(UserInterpreted userInterpreted)
        {
            var input = userInterpreted;

            Incoming = input.HoursRate * input.HoursWorked;

            var d = new Deductions()
            {
                Employeelocation      = input.EmployeesLocation,
                GrossAmount           = Incoming,
                IncomeTax             = CalculateincomeTaxRate(),
                UniversalSocialCharge = CalculeteUniversalSocialCharge(),
                Pension   = CompulsoryPension(),
                NetAmount = 0
            };

            d.NetAmount = d.GrossAmount - d.IncomeTax - d.UniversalSocialCharge - d.Pension;

            return(d);
        }
Beispiel #6
0
 public DbResult Update(Deductions obj, string flag)
 {
     SqlParameter[] param = { new SqlParameter("@flag", SqlDbType.VarChar,                         20)
                              {
                                  Value = flag == "i"? "i":"u"
                              }
                              ,                         new SqlParameter("@Name",     SqlDbType.VarChar, 50)
                              {
                                  Value = obj.Name
                              }
                              ,                         new SqlParameter("@IsActive", SqlDbType.Bit)
                              {
                                  Value = obj.IsActive
                              }
                              ,                         new SqlParameter("@Id",       SqlDbType.Int)
                              {
                                  Value = obj.Id
                              } };
     return(SqlHelper.ParseDbResult("spDeductions", param));
 }
        private int checkMinutesToDeduct(int minutes)
        {
            Deductions deduct     = new Deductions();
            int        deductions = 0;

            if (minutes >= deduct.LateFrom && minutes <= deduct.LateTo)
            {
                deductions = deduct.Deduction;
            }
            else if (minutes >= deduct.LateFrom2 && minutes <= deduct.LateTo2)
            {
                deductions = deduct.Deduction2;
            }
            else if (minutes >= deduct.LateFrom3 && minutes <= deduct.LateTo3)
            {
                deductions = deduct.Deduction3;
            }
            else if (minutes >= deduct.LateFrom4 && minutes <= deduct.LateTo4)
            {
                deductions = deduct.Deduction4;
            }

            return(deductions);
        }
Beispiel #8
0
        public List <Deductions> List()
        {
            List <Deductions> lst = new List <Deductions>();

            SqlParameter[] param = { new SqlParameter("@flag", SqlDbType.VarChar, 50)
                                     {
                                         Value = "a"
                                     } };
            DataTable      result = SqlHelper.ExecuteDataTable("spDeductions", param);

            if (result != null && result.Rows.Count > 0)
            {
                foreach (DataRow drow in result.Rows)
                {
                    Deductions obj = new Deductions();
                    obj.Id       = Convert.ToInt32(drow["Id"]);
                    obj.Name     = drow["Name"].ToString();
                    obj.IsActive = Convert.ToBoolean(drow["IsActive"]);

                    lst.Add(obj);
                }
            }
            return(lst);
        }
Beispiel #9
0
        public void ComputeSalary(DateTime?start, DateTime?end)
        {
            try {
                var dailyTimeRecord = db.DailyTimeRecords.Where(a => a.DateTimeStamps >= start && a.DateTimeStamps <= end).ToList();
                var userList        = db.Employees.ToList();
                var getHoliday      = db.Holidays.ToList();
                foreach (var user in userList)
                {
                    Deductions deduction            = new Deductions();
                    double     basicSalaryPerMinute = ((user.Salary / 9) / 60);
                    int        daysPresent          = 0;
                    foreach (var dtr in dailyTimeRecord)
                    {
                        foreach (var hol in getHoliday)
                        {
                            if (dtr.Accumulated >= 400)
                            {
                                if (hol.Month.Value.Month == dtr.DateTimeStamps.Value.Month && hol.Month.Value.Day == dtr.DateTimeStamps.Value.Day)
                                {
                                    //This is a holiday.
                                    dtr.Remarks += " " + hol.HolidayName;
                                    if (hol.SalaryInrease == 30)
                                    {
                                        double percentage = 0.30 * dtr.Accumulated;
                                        // salary increase
                                        dtr.Accumulated += percentage;
                                    }
                                    else
                                    {
                                        double percentage = 1.0 * dtr.Accumulated;
                                        dtr.Accumulated += percentage;
                                    }
                                }
                            }
                        }

                        if (user.UserName == dtr.UserName)
                        {
                            if (dtr.TimeOut != null)
                            {
                                daysPresent++;
                            }
                            deduction.AllAccumulatedTimeAddition += dtr.Accumulated * basicSalaryPerMinute;
                            deduction.LateDeduction += dtr.Late * basicSalaryPerMinute;
                            if (user.SickLeaveCredit != 0)
                            {
                                deduction.AllAccumulatedTimeAddition += (540 * user.SickLeaveCredit) * basicSalaryPerMinute;
                                deduction.Remarks   += $" Added {user.SickLeave} Sick Leave/s";
                                user.SickLeaveCredit = 0;
                                db.SaveChanges();
                            }
                        }
                    }
                    deduction.TotalSalary = deduction.AllAccumulatedTimeAddition;
                    deduction.PayrollPK   = db.Payrolls.FirstOrDefault(a => a.StartPayroll == start && a.EndPayroll == end).PayrollPK;
                    deduction.UserName    = user.UserName;
                    if (end.Value.AddDays(1).Date.Day == 26)
                    {
                        double monthlySalary = user.Salary * 26;
                        deduction.SSSDeduction     = monthlySalary * 0.0363;
                        deduction.PagibigDeduction = monthlySalary * 0.0200;
                        deduction.TinDeduction     = monthlySalary * 0.01375;
                        deduction.TotalSalary     -= deduction.SSSDeduction;
                        deduction.TotalSalary     -= deduction.PagibigDeduction;
                        deduction.TotalSalary     -= deduction.TinDeduction;
                    }
                    deduction.BasicSalary = user.Salary;
                    db.Deductionss.Add(deduction);
                    db.SaveChanges();
                }
            }catch (Exception e)
            {
            }
        }
Beispiel #10
0
 public DbResult Update(Deductions entity, string flag)
 {
     return(repo.Update(entity, flag));
 }