public IHttpActionResult Make([FromUri] MakeReservationModel reservationModel) { MakeReservationTicketSummary summary = newTicket.Make(new ReservationTicketCreation(reservationModel.ProjId, reservationModel.SeatRow, reservationModel.SeatCol)); if (summary.isValid) { return(Ok(summary.Reservation)); } return(BadRequest(summary.Message)); }
public Guid MakeReservation(MakeReservationModel model) { using (var tran = db.Database.BeginTransaction()) { try { var reservation = new Reservation() { ReservationDate = model.ReservationDate, CheckOutDate = model.CheckOutDate, RoomId = model.RoomId }; db.Reservations.Add(reservation); db.SaveChanges(); foreach (var registerViewModel in model.RegisterViewModels) { db.ReservationDetails.Add(new ReservationDetail() { FirstName = registerViewModel.FirstName, LastName = registerViewModel.Surname, ReservationId = reservation.Id, TelephoneNumber = registerViewModel.Telephone }); db.SaveChanges(); } //Odanın boş olup olmadığını göstermek için. var room = db.Rooms.Find(model.RoomId); room.IsEmpty = false; db.SaveChanges(); tran.Commit(); return(reservation.Id); } catch (Exception ex) { tran.Rollback(); throw ex; } } }