public ActionResult Edit([Bind(Include = "StaffNumber,StartDateTime,EndDateTime,Hours,Reason,Remark")] DaysOffApplies daysOffApplies) { if (ModelState.IsValid) { OnDutyHours onDutyHours = db.OnDutyHours.Find(daysOffApplies.StaffNumber); daysOffApplies.Date = daysOffApplies.StartDateTime.Date; // daysOffApplies.Hours = (daysOffApplies.EndDateTime - daysOffApplies.StartDateTime).Hours; //更新这个员工的可用小时数 if (daysOffApplies.Hours > onDutyHours.AvailableHours) { ModelState.AddModelError("", "申请的调休数超过可用值班数!"); return(View(daysOffApplies)); } db.Entry(onDutyHours).State = EntityState.Modified; db.Entry(daysOffApplies).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } List <SelectListItem> item = (from s in db.BillProperties where s.BillSort.Equals("35") select new SelectListItem() { Value = s.Type, Text = s.Type + s.TypeName, }).ToList(); ViewBag.List = item; return(View(daysOffApplies)); }
public ActionResult Create([Bind(Include = "BillType,StaffNumber,Hours,StartDateTime,EndDateTime,Reason,AvailableHours,Remark")] DaysOffApplies daysOffApplies) { List <SelectListItem> item = (from s in db.BillProperties where s.BillSort.Equals("35") select new SelectListItem() { Value = s.Type, Text = s.Type + s.TypeName, }).ToList(); ViewBag.List = item; if (ModelState.IsValid) { OnDutyHours onDutyHours = db.OnDutyHours.Find(daysOffApplies.StaffNumber); if (onDutyHours == null) { ModelState.AddModelError("", "该员工没有可用的值班时数!"); return(View(daysOffApplies)); } daysOffApplies.BillNumber = GenerateBillNumber(daysOffApplies.BillType); daysOffApplies.Date = daysOffApplies.StartDateTime.Date; // daysOffApplies.Hours = (daysOffApplies.EndDateTime - daysOffApplies.StartDateTime).Hours; //更新这个员工的可用小时数 if (daysOffApplies.Hours > onDutyHours.AvailableHours) { ModelState.AddModelError("", "申请的调休数超过可用值班数!"); return(View(daysOffApplies)); } onDutyHours.AvailableHours -= daysOffApplies.Hours; db.Entry(onDutyHours).State = EntityState.Modified; db.DaysOffApplies.Add(daysOffApplies); byte status = AuditApplicationEvection(daysOffApplies); //没有找到该单据的审批模板 if (status == 7) { ViewBag.alertMessage = true; return(View(daysOffApplies)); } //需要对原表做出的修改 daysOffApplies.AuditStatus = status; try { db.SaveChanges(); } catch (Exception e) { var tmp = e; } return(RedirectToAction("Index")); } return(View(daysOffApplies)); }
public ActionResult DeleteConfirmed(int id) { DaysOffApplies daysOffApplies = db.DaysOffApplies.Find(id); OnDutyHours onDutyHours = db.OnDutyHours.Find(daysOffApplies.StaffNumber); onDutyHours.AvailableHours += daysOffApplies.Hours; db.Entry(onDutyHours).State = EntityState.Modified; db.DaysOffApplies.Remove(daysOffApplies); db.SaveChanges(); return(RedirectToAction("Index")); }
public JsonResult GetAvailableHours(string StaffNumber) { OnDutyHours hours = db.OnDutyHours.Find(StaffNumber); if (hours == null) { return(Json(new { hours = 0 })); } else { return(Json(new { hours = hours.AvailableHours })); } }