/// <summary> /// Get the lecture view model for a lecture /// </summary> /// <param name="lectureId">The id for the lecture</param> /// <returns>The lecture view model (or null if no lecture was found)</returns> private UpdateLectureViewModel GetUpdateViewModel(int lectureId) { UpdateLectureViewModel lvm = null; var lecture = _manager.LectureManager.Get(lectureId); if (lecture != null) { lvm = new UpdateLectureViewModel() { Class = lecture.Class, Lecture = lecture, LectureItems = new List <UpdateLectureItem>(lecture.Attendance.Count), }; foreach (var a in lecture.Attendance) { lvm.LectureItems.Add( new UpdateLectureItem { StudentId = a.Student.Id, StudentName = $"{a.Student.FirstName} {a.Student.LastName}", LectureId = lecture.Id, Present = a.Present } ); } lvm.LectureItems = lvm.LectureItems.OrderBy(item => item.StudentName).ToList(); } return(lvm); }
public ActionResult Override(UpdateLectureViewModel lvm) { var lecture = _manager.LectureManager.Get(lvm.Lecture.Id); if (lecture == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } _manager.LectureManager.Update(lecture.Id, lvm.LectureItems); return(RedirectToAction("Override", "Lecture", new { lectureId = lecture.Id })); }
public IActionResult Put([FromBody] UpdateLectureViewModel updateLectureViewModel) { var lectureDto = Mapper.Map <LectureDto>(updateLectureViewModel); var updatedLecture = _lectureService.UpdateLecture(lectureDto); updateLectureViewModel = Mapper.Map <UpdateLectureViewModel>(updatedLecture); if (updateLectureViewModel == null) { return(BadRequest()); } if (updateLectureViewModel.StartDate > updateLectureViewModel.EndDate) { BadRequest(); } return(Ok(updateLectureViewModel)); }