public ActionResult SearchForDriver(DataForRatingViewModel data) { var cap = context.Caps.FirstOrDefault(n => n.CapNumber == data.CapNumber); if (cap != null) { var date = context.Schedules.FirstOrDefault(n => n.Cap.Id == cap.Id && n.ShiftDate == data.DateOfDay && (n.StartTime.Hour <= data.TimeOfDay.Hour && n.EndTime.Hour >= data.TimeOfDay.Hour)); if (date == null) { ModelState.AddModelError("", "invalid entry, Try again. "); return(View(data)); } var user = date.ApplicationUser.Id; var driverInfo = new ScoringDriver { UserId = user, CapId = cap.Id, }; //create new view model for user id and cap id //instantiate it here and assig the value to it //then create the view and r return(RedirectToAction("ScoringDriver", driverInfo)); } ModelState.AddModelError("", "invalid entry, Try again. "); return(View()); }
public ActionResult SaveDriverScore(ScoringDriver driverInfo) { if (driverInfo.DriverScore > 10) { //this is not working, needs fixing ModelState.AddModelError("", "invalid score, Try again. "); return(View("ScoringDriver", driverInfo)); } var user = context.Users.FirstOrDefault(u => u.Id == driverInfo.UserId); var cap = context.Caps.FirstOrDefault(c => c.Id == driverInfo.CapId); var newRating = new Rating { DateRated = DateTime.Today, ApplicationUser = user, Cap = cap, Score = driverInfo.DriverScore }; context.Ratings.Add(newRating); context.SaveChanges(); return(RedirectToAction("ConfirmationMessage")); }
public ActionResult ScoringDriver(ScoringDriver driverInfo) { return(View(driverInfo)); }
public LapAdded(ScoringDriver driver, Lap lap) { Driver = driver; Lap = lap; }
public ReferenceLapChanged(ScoringDriver driver) { Driver = driver; }