public GenericResponseViewModel Post(RegisterTutorshipParametersViewModel parameters) { var currentUser = userManager.FindById(User.Identity.GetUserId()); var tutorship = new Tutorship { teacherID = parameters.teacherID, studentID = currentUser.Id, courseID = parameters.courseID, reserved = parameters.reserved, tutorshipType = parameters.tutorshipType, motive = parameters.motive, date = parameters.date, hour = parameters.hour, duration = parameters.duration }; tutorialActionContext.Tutorships.Add(tutorship); tutorialActionContext.SaveChanges(); return(new GenericResponseViewModel { statusCode = "200", message = "Tutoría registrada correctamente." }); }
public IHttpActionResult Post(ReserveCompletionParametersViewModel parameters) { var currentUser = userManager.FindById(User.Identity.GetUserId()); var reserve = tutorialActionContext.Reserves.Find(parameters.reserveID); if (reserve != null && reserve.teacherID == currentUser.Id) { var tutorship = new Tutorship { teacherID = reserve.teacherID, studentID = reserve.studentID, courseID = reserve.courseID, reserved = true, tutorshipType = reserve.tutorshipType, motive = reserve.motive, date = reserve.date, hour = reserve.hour, duration = parameters.duration }; tutorialActionContext.Reserves.Remove(reserve); tutorialActionContext.Tutorships.Add(tutorship); tutorialActionContext.SaveChanges(); return(Ok(new GenericResponseViewModel { statusCode = "200", message = "Reserva completada correctamente." })); } else { return(Ok(new GenericResponseViewModel { statusCode = "400", message = "Error en la consulta: no existe una reserva con ese ID" })); } }
public List <TutorshipResponseViewModel> Get() { var currentUser = userManager.FindById(User.Identity.GetUserId()); var userRole = roleManager.FindById(currentUser.Roles.First().RoleId).Name; if (userRole == "teacher") { return(tutorialActionContext.Tutorships .Where(t => t.teacherID == currentUser.Id) .Select(Tutorship.parseToTutorshipResponseViewModel(userRole)) .ToList()); } else if (userRole == "student") { return(tutorialActionContext.Tutorships .Where(r => r.studentID == currentUser.Id) .Select(Tutorship.parseToTutorshipResponseViewModel(userRole)) .ToList()); } else { return(new List <TutorshipResponseViewModel>()); } }