public ActionResult DeletePTO(Guid Id) { AccrualTimeJournal atj = db.AccrualTimeJournal.Find(Id); db.Entry(atj).State = System.Data.Entity.EntityState.Deleted; db.SaveChanges(); return(Json(new { code = 1, status = "success", message = "The PTO been successfully deleted!" }, JsonRequestBehavior.AllowGet)); }
public JsonResult EditPTO(Guid Id) { DateTime Date = DateTime.Parse(Request["Date"]); int Type = int.Parse(Request["Type"]); float Hours = float.Parse(Request["Hours"]); string Memo = Request["Hours"]; AccrualTimeJournal atj = db.AccrualTimeJournal.Find(Id); atj.Date = Date; atj.Type = Type; atj.Hours = Hours; atj.Memo = Memo; db.Entry <AccrualTimeJournal>(atj).State = System.Data.Entity.EntityState.Modified; db.SaveChanges(); return(Json(new { code = 1, status = "success", message = "success add!" }, JsonRequestBehavior.AllowGet)); }
public JsonResult GetEmployeePTO(Guid Id) { AppUser user = LoginUser; AccrualTimeJournal atj = db.AccrualTimeJournal.Find(Id); Dictionary <string, object> dic = new Dictionary <string, object>(); dic.Add("Id", atj.Id); dic.Add("EmployeeId", atj.EmployeeId); dic.Add("Date", TimeHelper.GetLocalTime(atj.Date, Convert.ToDouble(user.TimeZone)).ToString("yyyy-MM-dd")); dic.Add("Type", atj.Type); dic.Add("Hours", atj.Hours); dic.Add("Usage", atj.Hours < 0 ? -1 : 1); dic.Add("Memo", atj.Memo); return(Json(dic, JsonRequestBehavior.AllowGet)); }
public ActionResult addPTO(AccrualTimeJournal atj) { AppUser user = LoginUser; DateTime startTime = TimeHelper.GetUTCTime(new DateTime(atj.Date.Year, 1, 1), Convert.ToDouble(user.TimeZone)); DateTime endTime = TimeHelper.GetUTCTime(startTime.AddMonths(12), Convert.ToDouble(user.TimeZone)); Employee e = db.Employee.Where(t => t.EmployeeId == atj.EmployeeId).SingleOrDefault(); float TotalThisYear = db.AccrualTimeJournal.Where(t => t.EmployeeId == atj.EmployeeId && t.Date >= startTime && t.Date <= endTime).Sum(t => (float?)t.Hours) ?? 0; atj.Id = Guid.NewGuid(); atj.Date = TimeHelper.GetUTCTime(atj.Date, double.Parse(user.TimeZone)); atj.EmployeeName = e.FName + " " + e.LName; atj.SSN = e.SSN; atj.CreateDate = DateTime.UtcNow; double CapPTO = GetStoragePTOHours(e.EmployeeId, atj.Date.Year, user, atj.Type); if ((TotalThisYear + atj.Hours) > CapPTO) { return(Json(new { code = 3, status = "error", message = "Your remaining PTO time is only " + (CapPTO - TotalThisYear) + " hours(" + atj.Date.Year + "), Please confirm and try again ! " }, JsonRequestBehavior.AllowGet)); } db.AccrualTimeJournal.Add(atj); db.SaveChanges(); return(Json(new { code = 1, status = "success", message = "success add!" }, JsonRequestBehavior.AllowGet)); }