/// <summary>
        /// Creator: Austin Gee
        /// Created: 4/27/2020
        /// Approver: Michael Thompson
        ///
        /// returns a detail view of a customer adoption appointment
        /// </summary>
        /// <remarks>
        ///
        /// Updater: NA
        /// Updated: NA
        /// Update: NA
        /// </remarks>
        /// <param name="id"></param>
        /// <returns></returns>
        public ActionResult AppointmentDetails(int id)
        {
            var appointment = _adoptionAppointmentManager.RetrieveAdoptionAppointmentByAppointmentID(id);

            ViewBag.Title = "Appointment Details";
            return(View(appointment));
        }
Beispiel #2
0
        /// <summary>
        /// NAME: Austin Gee
        /// DATE: 3/4/2020
        /// CHECKED BY: Michael Thompson
        ///
        /// Event handler that is fired when the save button is clicked. validates input, then updates appointment decision and notes
        /// and updates the application status
        /// </summary>
        /// <remarks>
        /// UPDATED BY: NA
        /// UPDATE DATE: NA
        /// WHAT WAS CHANGED: NA
        ///
        ///
        /// </remarks>
        private void btnSaveNotes_Click(object sender, RoutedEventArgs e)
        {
            if (!txtNotesMeetAndGreet.Text.IsValidString())
            {
                WPFErrorHandler.ErrorMessage("You must enter Valid notes.");
                txtNotesMeetAndGreet.Focus();
                return;
            }
            if (!cmbDecision.Text.IsValidString())
            {
                WPFErrorHandler.ErrorMessage("You Must enter a valid decision.");
                cmbDecision.Focus();
                return;
            }
            AdoptionAppointment oldAppointment = new AdoptionAppointment
            {
                AdoptionApplicationID = _adoptionAppointment.AdoptionApplicationID,
                AppointmentActive     = _adoptionAppointment.AppointmentActive,
                AppointmentDateTime   = _adoptionAppointment.AppointmentDateTime,
                AppointmentID         = _adoptionAppointment.AppointmentID,
                AppointmentTypeID     = _adoptionAppointment.AppointmentTypeID,
                Decision     = _adoptionAppointment.Decision,
                LocationID   = _adoptionAppointment.LocationID,
                LocationName = _adoptionAppointment.LocationName,
                Notes        = _adoptionAppointment.Notes
            };
            AdoptionAppointment newAppointment = new AdoptionAppointment
            {
                AdoptionApplicationID = _adoptionAppointment.AdoptionApplicationID,
                AppointmentActive     = _adoptionAppointment.AppointmentActive,
                AppointmentDateTime   = _adoptionAppointment.AppointmentDateTime,
                AppointmentID         = _adoptionAppointment.AppointmentID,
                AppointmentTypeID     = _adoptionAppointment.AppointmentTypeID,
                Decision     = cmbDecision.SelectedItem.ToString(),
                LocationID   = _adoptionAppointment.LocationID,
                LocationName = _adoptionAppointment.LocationName,
                Notes        = txtNotesMeetAndGreet.Text
            };

            try
            {
                IAdoptionAppointmentManager adoptionAppointmentManager = new AdoptionAppointmentManager();
                adoptionAppointmentManager.EditAdoptionAppointment(oldAppointment, newAppointment);

                if (newAppointment.Decision == "Approved")
                {
                    AdoptionApplicationManager adoptionApplicationManager = new AdoptionApplicationManager();
                    ApplicationVM oldApplicationVM = adoptionApplicationManager.RetrieveAdoptionApplicationByID(oldAppointment.AdoptionApplicationID);

                    string newStatus = "";

                    if (_adoptionAppointment.AppointmentTypeID == "Interview")
                    {
                        newStatus = "Home Inspection";
                    }
                    else if (_adoptionAppointment.AppointmentTypeID == "Home Inspection")
                    {
                        newStatus = "Meet and Greet";
                    }
                    else if (_adoptionAppointment.AppointmentTypeID == "Meet and Greet")
                    {
                        newStatus = "Animal Pick-up";
                    }
                    else if (_adoptionAppointment.AppointmentTypeID == "Animal Pick-up")
                    {
                        newStatus = "Adoption Complete";
                    }

                    DataTransferObjects.Application oldApplication = new DataTransferObjects.Application
                    {
                        AdoptionApplicationID = oldApplicationVM.AdoptionApplicationID,
                        AnimalID          = oldApplicationVM.AnimalID,
                        ApplicationActive = oldApplicationVM.ApplicationActive,
                        CustomerEmail     = oldApplicationVM.CustomerEmail,
                        RecievedDate      = oldApplicationVM.RecievedDate,
                        Status            = oldApplicationVM.Status
                    };


                    DataTransferObjects.Application newApplication = new DataTransferObjects.Application
                    {
                        AdoptionApplicationID = oldApplicationVM.AdoptionApplicationID,
                        AnimalID          = oldApplicationVM.AnimalID,
                        ApplicationActive = oldApplicationVM.ApplicationActive,
                        CustomerEmail     = oldApplicationVM.CustomerEmail,
                        RecievedDate      = oldApplicationVM.RecievedDate,
                        Status            = newStatus
                    };

                    adoptionApplicationManager.UpdateAdoptionApplication(oldApplication, newApplication);

                    _adoptionAppointmentManager.EditAdoptionAppointmentActive(oldAppointment.AppointmentID, false);
                }
            }
            catch (Exception)
            {
                WPFErrorHandler.ErrorMessage("Appointment update failed");
            }
            dgAppointments.Items.Refresh();
            _adoptionAppointment = _adoptionAppointmentManager.RetrieveAdoptionAppointmentByAppointmentID(_adoptionAppointment.AppointmentID);
            populateNoteFields();
            populateTextBoxes();

            disableNotes();
            btnEditNotes.Visibility = Visibility.Visible;
            btnSaveNotes.Visibility = Visibility.Hidden;
            return;
        }