예제 #1
0
        public ActionResult Create(NewReservation reservation)
        {
            _types = _roomType.RetrieveAllRoomTypes();
            if (ModelState.IsValid)
            {
                try
                {
                    Guest  guest = new Guest();
                    string email = User.Identity.Name;
                    guest = _guestManager.RetrieveGuestByEmail(email);
                    Reservation res = new Reservation()
                    {
                        MemberID       = guest.MemberID,
                        NumberOfGuests = reservation.NumberOfGuests,
                        ArrivalDate    = reservation.ArrivalDate.Value,
                        DepartureDate  = reservation.DepartureDate.Value,
                        Notes          = reservation.Notes
                    };
                    if (reservationManager.AddReservation(res))
                    {
                        return(RedirectToAction("Index", "MyAccount"));
                    }
                }
                catch
                {
                    throw;
                }
            }

            ViewBag.Types = _types;
            return(View(reservation));
        }
예제 #2
0
        public async Task <IActionResult> AddReservation([FromBody] ReservationViewModel model)
        {
            //Making validation in server side
            if (ModelState.IsValid)
            {
                try
                {
                    var reservationId = await _rManager.AddReservation(model);

                    if (reservationId > 0)
                    {
                        return(Ok(reservationId));
                    }
                    else
                    {
                        return(NotFound());
                    }
                }
                catch (Exception)
                {
                    return(BadRequest());
                }
            }

            return(BadRequest());
        }
        public void TestCreateReservationValidInput()
        {
            //Arrange
            Reservation newReservation = new Reservation()
            {
                ReservationID = 100004, MemberID = 100000, NumberOfGuests = 1, NumberOfPets = 0, ArrivalDate = DateTime.Now, DepartureDate = DateTime.Now.AddDays(1), Notes = "this was created in Unit Test: TestCreateReservationValidInput()"
            };

            //Act
            _reservationManager.AddReservation(newReservation);
            //Assert
            //Updates the list of Reservations
            _reservations = _reservationManager.RetrieveAllReservations();
            //Checks to see if the new Reservation is in the updated list of reservations
            Assert.IsNotNull(_reservations.Find(x => x.MemberID == newReservation.MemberID &&
                                                x.NumberOfGuests == newReservation.NumberOfGuests &&
                                                x.NumberOfPets == newReservation.NumberOfPets &&
                                                x.ArrivalDate.Day == newReservation.ArrivalDate.Day &&
                                                x.DepartureDate.Day == newReservation.DepartureDate.Day &&
                                                x.Notes == newReservation.Notes));
        }
예제 #4
0
        /// <summary>
        /// Author: Matt LaMarche
        /// Created : 1/31/2019
        /// The function which runs when Save is clicked
        /// </summary>
        private void btnSave_Click(object sender, RoutedEventArgs e)
        {
            if (((string)btnSave.Content) == "Submit")
            {
                if (!ValidateInput())
                {
                    return;
                }
                Reservation newReservation = new Reservation
                {
                    //MemberID = ((Member)txtMembers.SelectedItem).MemberID,      // Validated
                    NumberOfGuests = int.Parse(txtNumGuests.Text),              // Validated
                    NumberOfPets   = int.Parse(txtNumPets.Text),                // Validated
                    ArrivalDate    = DateTime.Parse(dtpArrivalDate.Text),       // Validated
                    DepartureDate  = DateTime.Parse(dtpDepartureDate.Text),     // Validated
                    Notes          = txtNotes.Text                              // Optional
                };
                try
                {
                    if (_existingReservation == null)
                    {
                        _reservationManager.AddReservation(newReservation);
                        SetError("");
                        MessageBox.Show("Reservation Created Successfully: " +
                                        "\nMemberID: " + newReservation.MemberID +
                                        "\nNumberOfGuests: " + newReservation.NumberOfGuests +
                                        "\nNumberOfPets: " + newReservation.NumberOfPets +
                                        "\nArrivalDate: " + newReservation.ArrivalDate.ToString("MM/dd/yyyy") +
                                        "\nDepartureDate: " + newReservation.DepartureDate.ToString("MM/dd/yyyy") +
                                        "\nNotes: " + newReservation.Notes);
                    }
                    else
                    {
                        newReservation.Active = (bool)chkActive.IsChecked;
                        _reservationManager.EditReservation(_existingReservation, newReservation);
                        SetError("");
                        MessageBox.Show("Reservation Updated Successfully: " +
                                        "\nOld MemberID: " + _existingReservation.MemberID +
                                        "\nOld NumberOfGuests: " + _existingReservation.NumberOfGuests +
                                        "\nOld NumberOfPets: " + _existingReservation.NumberOfPets +
                                        "\nOld ArrivalDate: " + _existingReservation.ArrivalDate.ToString("MM/dd/yyyy") +
                                        "\nOld DepartureDate: " + _existingReservation.DepartureDate.ToString("MM/dd/yyyy") +
                                        "\nOld Notes: " + _existingReservation.Notes +
                                        "\nNew MemberID: " + newReservation.MemberID +
                                        "\nNew NumberOfGuests: " + newReservation.NumberOfGuests +
                                        "\nNew NumberOfPets: " + newReservation.NumberOfPets +
                                        "\nNew ArrivalDate: " + newReservation.ArrivalDate.ToString("MM/dd/yyyy") +
                                        "\nNew DepartureDate: " + newReservation.DepartureDate.ToString("MM/dd/yyyy") +
                                        "\nNew Notes: " + newReservation.Notes);
                    }
                }
                catch (Exception ex)
                {
                    SetError(ex.Message);
                }

                Close();
            }
            else if (((string)btnSave.Content) == "Update")
            {
                setEditable();
            }
            else
            {
                MessageBox.Show(btnSave.Content.GetType() + " " + btnSave.Content);
            }
        }