/// <summary>
        /// Creator: Austin Gee
        /// Created On: 5/1/2020
        ///
        /// Auto generates columns
        /// </summary>
        /// <remarks>
        /// Updater Name
        /// Updated:
        /// Update:
        /// </remarks>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void CancelApplication_Click(object sender, RoutedEventArgs e)
        {
            IAdoptionAppointmentManager adoptionAppointmentManager = new AdoptionAppointmentManager();

            if (DGViewData.SelectedItem == null)
            {
                WPFErrorHandler.ErrorMessage("Please select an adoption application.");
            }
            else
            {
                System.Windows.Forms.DialogResult dialogResult = System.Windows.Forms.MessageBox.Show("Are you sure you want to cancel the Adoption Application?", "Cancel Application", System.Windows.Forms.MessageBoxButtons.YesNo);
                if (dialogResult == System.Windows.Forms.DialogResult.Yes)
                {
                    var appointments = adoptionAppointmentManager.RetrieveAdoptionAppointmentsByCustomerEmailAndActive(((ApplicationVM)DGViewData.SelectedItem).CustomerEmail);
                    foreach (var a in appointments)
                    {
                        adoptionAppointmentManager.EditAdoptionAppointmentActive(a.AppointmentID, false);
                    }
                    IAdoptionAnimalManager adoptionAnimalManager = new AdoptionAnimalManager();
                    adoptionAnimalManager.EditAnimalAdoptable(((ApplicationVM)DGViewData.SelectedItem).AnimalID, true);
                    _adoptionApplicationManager.DeactivateAdoptionApplication(((ApplicationVM)DGViewData.SelectedItem).AdoptionApplicationID);
                }
                else if (dialogResult == System.Windows.Forms.DialogResult.No)
                {
                }
            }
            DGViewData.ItemsSource = _adoptionApplicationManager.RetrieveAdoptionApplicationsByActiveWithName(true);
        }
        public void TestAdoptionAppointmentManagerEditAppointmentActive()
        {
            // arrange
            IAdoptionAppointmentManager adoptionAppointmentManager = new AdoptionAppointmentManager(_adoptionAppointmentAccessor);

            // act
            bool result = adoptionAppointmentManager.EditAdoptionAppointmentActive(000, false);

            // assert
            Assert.IsTrue(result);
        }
        public void TestAdoptionAppointmentManagerRetrievesAdoptionAppointmentsByActive()
        {
            // arrange
            IAdoptionAppointmentManager adoptionAppointmentManager = new AdoptionAppointmentManager(_adoptionAppointmentAccessor);

            // act
            var result = adoptionAppointmentManager.RetrieveAdoptionAppointmentsByActive();

            // assert
            Assert.AreEqual(1, result.Count);
        }
        public void TestAdoptionAppointmentManagerUpdatesAdoptionAppointmentDateTime()
        {
            // arrange
            IAdoptionAppointmentManager adoptionAppointmentManager = new AdoptionAppointmentManager(_adoptionAppointmentAccessor);

            // act
            bool result = adoptionAppointmentManager.EditAdoptionAppointmentDateTime(000, DateTime.Parse("7/12/1984"));

            // assert
            Assert.IsTrue(result);
        }
        public void TestAdoptionAppointmentRetrievesAdoptionAppointmentByAppointmentID()
        {
            // arrange
            AdoptionAppointmentVM       adoptionAppointmentVM;
            IAdoptionAppointmentManager adoptionAppointmentManager = new AdoptionAppointmentManager(_adoptionAppointmentAccessor);

            // act
            adoptionAppointmentVM = adoptionAppointmentManager.RetrieveAdoptionAppointmentByAppointmentID(000);

            // assert
            Assert.AreEqual(000, adoptionAppointmentVM.AppointmentID);
        }
        public void TestAdoptionAppointmentRetrievesActiveAdoptionAppointments()
        {
            // arange
            List <AdoptionAppointmentVM> adoptionAppointmentVMs;
            IAdoptionAppointmentManager  adoptionAppointmentManager = new AdoptionAppointmentManager(_adoptionAppointmentAccessor);

            // act
            adoptionAppointmentVMs = adoptionAppointmentManager.RetrieveAdoptionAppointmentsByActiveAndType(true, "Meet and Greet");

            // assert
            Assert.AreEqual(1, adoptionAppointmentVMs.Count);
        }
        public void TestAdoptionAppointmentRetrievesAdoptionAppointmentsByCustomerEmailAndActive()
        {
            // arrange
            List <AdoptionAppointmentVM> adoptionAppointmentVMs;
            IAdoptionAppointmentManager  adoptionAppointmentManager = new AdoptionAppointmentManager(_adoptionAppointmentAccessor);

            // act
            adoptionAppointmentVMs = adoptionAppointmentManager.RetrieveAdoptionAppointmentsByCustomerEmailAndActive("*****@*****.**");

            // assert
            Assert.AreEqual(1, adoptionAppointmentVMs.Count);
        }
        public void TestAdoptionAppointmentAddAdoptionAppointment()
        {
            // arrange
            bool result = false;
            var  adoptionAppointment = new AdoptionAppointment()
            {
                AdoptionApplicationID = 000,
                AppointmentActive     = true,
                AppointmentDateTime   = DateTime.Now,
                AppointmentID         = 000,
                AppointmentTypeID     = "Fake",
                Decision   = "Fake",
                LocationID = 000,
                Notes      = "Fake"
            };
            IAdoptionAppointmentManager adoptionAppointmentManager = new AdoptionAppointmentManager(_adoptionAppointmentAccessor);

            // act
            result = adoptionAppointmentManager.AddAdoptionAppointment(adoptionAppointment);

            // assert
            Assert.IsTrue(result);
        }
        public void TestAdoptionAppointmentUpdateAdoptionAppointment()
        {
            // arrange
            bool result = false;
            var  oldAdoptionAppointment = new AdoptionAppointment
            {
                AppointmentID         = 000,
                AdoptionApplicationID = 000,
                AppointmentActive     = true,
                AppointmentDateTime   = DateTime.Parse("7/12/1984"),
                AppointmentTypeID     = "FAKE",
                Decision     = "Fake",
                LocationID   = 000,
                LocationName = "Fake",
                Notes        = "Fake",
            };

            var newAdoptionAppointment = new AdoptionAppointment
            {
                AppointmentID         = 000,
                AdoptionApplicationID = 001,
                AppointmentActive     = true,
                AppointmentDateTime   = DateTime.Parse("7/12/1984"),
                AppointmentTypeID     = "FAKE",
                Decision     = "Fake",
                LocationID   = 000,
                LocationName = "Fake",
                Notes        = "Fake",
            };
            IAdoptionAppointmentManager adoptionAppointmentManager = new AdoptionAppointmentManager(_adoptionAppointmentAccessor);

            // act
            result = adoptionAppointmentManager.EditAdoptionAppointment(oldAdoptionAppointment, newAdoptionAppointment);

            // assert
            Assert.IsTrue(result);
        }
Beispiel #10
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;
        }