public bool CreateReservation(CreateReserveInputModel inputModel, string currentMemberID) { var currentMember = _memberRepository.FindBy(x => x.EmailAddress == currentMemberID).SingleOrDefault(); var checkReservation = _reservationRepository.FindBy(x => x.MemberID == currentMember.ID && x.TeeTimeID == inputModel.TeetimeId).SingleOrDefault(); if (checkReservation == null) { //Create Reservation For Current Member var reservationMember = new Reservations { DateCreated = DateTime.UtcNow, Status = ReservationStatus.Accepted, MemberID = currentMember.ID, TeeTimeID = inputModel.TeetimeId }; _reservationRepository.Add(reservationMember); _reservationRepository.SaveChanges(); if (inputModel.Reservations.Count > 0) { foreach (var reservation in inputModel.Reservations) { var check = _reservationRepository.FindBy(x => x.MemberID == reservation.MemberId && x.TeeTimeID == inputModel.TeetimeId).SingleOrDefault(); if (check == null) { var newReservation = new Reservations { DateCreated = DateTime.UtcNow, Status = (ReservationStatus)reservation.CurrentStatus, MemberID = reservation.MemberId, TeeTimeID = inputModel.TeetimeId }; _reservationRepository.Add(newReservation); _reservationRepository.SaveChanges(); } } } return(true); } return(false); }
public ActionResult Create(CreateReserveInputModel inputModel) { if (ModelState.IsValid) { var create = _reservationService.CreateReservation(inputModel, User.Identity.Name); if (create) { return(Json("OK", JsonRequestBehavior.AllowGet)); } else { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } } else { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } }