예제 #1
0
        public async Task <HttpResponseMessage> DeclineTaskReservation(ReservationPostModel model)
        {
            var response = await agentService
                           .DeclineTaskReservation(UserIdentityID, model.TaskSID, model.ReservationSID);

            return(SendHttpResponse(response));
        }
예제 #2
0
        public Reservation Create(ReservationPostModel reservation)
        {
            Reservation reservationToAdd = ReservationPostModel.PostReservationModel(reservation);

            context.Reservations.Add(reservationToAdd);
            context.SaveChanges();
            return(reservationToAdd);
        }
예제 #3
0
        public IHttpActionResult PostReservation(ReservationPostModel reservationPostModel)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var createdReservation = reservationService.CreateReservation(reservationPostModel);

            return(CreatedAtRoute("DefaultApi", new { id = createdReservation.Id }, createdReservation));
        }
예제 #4
0
        public Reservation CreateReservation(ReservationPostModel reservationPostModel)
        {
            Reservation reservation = new Reservation();

            reservation.Screening = db.Screenings.Find(reservationPostModel.ScreeningId);
            reservation.User      = db.Users.Find(reservationPostModel.UserId);

            if (reservation.User == null)
            {
                throw new HttpResponseException(new HttpResponseMessage(HttpStatusCode.BadRequest));
            }
            if (reservation.Screening == null)
            {
                throw new HttpResponseException(new HttpResponseMessage(HttpStatusCode.BadRequest));
            }
            if (reservation.Screening.SeatsAvailable > 1)
            {
                reservation.Screening.SeatsAvailable--;
            }
            else
            {
                throw new HttpResponseException(new HttpResponseMessage(HttpStatusCode.BadRequest));
            }

            reservation.CreatedAt             = DateTime.UtcNow;
            reservation.ModifiedAt            = DateTime.UtcNow;
            reservation.ReservationIdentifier = Guid.NewGuid().ToString();


            reservation.CreatedAt             = DateTime.UtcNow;
            reservation.ModifiedAt            = DateTime.UtcNow;
            reservation.ReservationIdentifier = Guid.NewGuid().ToString();


            db.Reservations.Add(reservation);
            db.SaveChanges();
            return(reservation);
        }
예제 #5
0
 public void PostReservation([FromBody] ReservationPostModel reservation)
 {
     reservationService.Create(reservation);
 }