public void ShouldFilterOutOnlyCatOwnersWhenNoneType() { List <PetOwner> expected = new List <PetOwner>(); List <PetOwner> actualList = new List <PetOwner> { new PetOwner { Gender = "male", Pets = new List <Pet>() }, new PetOwner { Gender = "female", Pets = new List <Pet>() }, new PetOwner { Gender = "unspecified", Pets = new List <Pet>() } }; List <PetOwner> actual = PetProcessor.GetOwnersByPetType(actualList, "Cat"); Assert.AreNotEqual(expected.Count, actualList.Count); Assert.AreEqual(expected.Count, actual.Count); // TODO: Add object comparison }
private async void PetProfileWindow_Loaded(object sender, RoutedEventArgs e) { pets = await PetProcessor.ShowPetsByCustomer(selectedUser.UserID, currentUser.Token); foreach (PetModel p in pets) { lstPets.Items.Add(p); } }
private string ProcessResults(List <PetOwner> owners) { owners = PetProcessor.RemoveOwnersWithoutPets(owners); owners = PetProcessor.GetOwnersByPetType(owners, Pets.cat); CatNamesByOwnerGender catNamesViewModel = CatProcessor.LoadCatNamesByOwnerGender(owners); catNamesViewModel = CatProcessor.SortCatNames(catNamesViewModel); return(HTMLProcessor.FormatHTML(catNamesViewModel)); }
private async void btnCreatePet_Click(object sender, RoutedEventArgs e) { if (IsValidPetData()) { DateTime birthdate = DateTime.Parse(txtPetDOB.Text); createdPet = new PetModel(txtPetName.Text, birthdate.ToString("yyyy-MM-dd"), txtPetColor.Text, txtPetWeight.Text, txtPetBreed.Text); lstPets.Items.Add(createdPet); lstPets.IsEnabled = true; await PetProcessor.CreatePet(createdPet.FullName, createdPet.Birthdate, createdPet.Color, createdPet.Weight, createdPet.Breed, selectedUser.UserID, currentUser.Token); btnCreatePet.IsEnabled = false; selectedPet = createdPet; } }
private async void btnSavePet_Click(object sender, RoutedEventArgs e) { updatedPet = new PetModel(txtPetName.Text, txtPetDOB.Text, txtPetColor.Text, txtPetWeight.Text, txtPetBreed.Text); bool petChanged = CompareUpdatedPet(); if (petChanged == true) { await PetProcessor.UpdatePet(selectedPet.PetID, selectedPet.FullName, selectedPet.Birthdate, selectedPet.Color, selectedPet.Weight, selectedPet.Breed, currentUser.Token); FillPetListBox(); } btnSavePet.IsEnabled = false; }
public void ShouldRemoveOwnersWhenNoPetProvided() { List <PetOwner> expected = new List <PetOwner> { new PetOwner { Gender = "female", Pets = new List <Pet> { new Pet { Name = "Rock", Type = "Dog" }, new Pet { Name = "Ket", Type = "Cat" } } } }; List <PetOwner> actualList = new List <PetOwner> { new PetOwner { Gender = "male", Pets = null }, new PetOwner { Gender = "female", Pets = new List <Pet> { new Pet { Name = "Rock", Type = "Dog" }, new Pet { Name = "Ket", Type = "Cat" } } }, new PetOwner { Gender = "unspecified", Pets = null } }; List <PetOwner> actual = PetProcessor.RemoveOwnersWithoutPets(actualList); Assert.AreEqual(expected.Count, actual.Count); // TODO: Add object comparison }
public void ShouldFilterOutOnlyCatOwnersWhenNoCatTypes() { List <PetOwner> expected = new List <PetOwner>(); List <PetOwner> actualList = new List <PetOwner> { new PetOwner { Gender = "male", Pets = new List <Pet> { new Pet { Name = "Jacky", Type = "Dog" } } }, new PetOwner { Gender = "female", Pets = new List <Pet> { new Pet { Name = "Rock", Type = "Dog" } } }, new PetOwner { Gender = "unspecified", Pets = new List <Pet> { new Pet { Name = "Stone", Type = "Horse" } } } }; List <PetOwner> actual = PetProcessor.GetOwnersByPetType(actualList, "Cat"); Assert.AreNotEqual(expected.Count, actualList.Count); Assert.AreEqual(expected.Count, actual.Count); // TODO: Add object comparison }
private async void BtnAppend_Click(object sender, RoutedEventArgs e) { // Date to use for string format try { // Validating Date & Report is Picked -- LR if (cmbReports.SelectedIndex == -1) { MessageBox.Show("Please select a report"); return; } // If In-Progress Orders is checked -- Lr if (cmbReports.SelectedIndex == 0) { if (dateStart.SelectedDate == null || dateEnd.SelectedDate == null) { MessageBox.Show("Please select a start and end date"); return; } startDate = (DateTime)dateStart.SelectedDate; endDate = (DateTime)dateEnd.SelectedDate; selectedOrders = await OrderProcessor.ShowAllProgressOrders(currentUser.Privileges, currentUser.Token); if (selectedUser == null && selectedEmployee == null) { lstReports.Items.Add("\t\t\t\t\tIn Progress Orders from " + startDate.ToString("MM/dd/yyyy") + " to " + endDate.ToString("MM/dd/yyyy")); } else if (selectedUser != null && selectedEmployee == null) { lstReports.Items.Add("\t\t\t\t\tIn Progress Orders for " + selectedUser.Firstname + " " + selectedUser.Lastname + " from " + startDate.ToString("MM/dd/yyyy") + " to " + endDate.ToString("MM/dd/yyyy")); } else if (selectedUser != null && selectedEmployee != null) { lstReports.Items.Add("\t\t\t\t\tIn Progress Orders for " + selectedUser.Firstname + " " + selectedUser.Lastname + " with " + selectedEmployee.Firstname + " " + selectedEmployee.Lastname + " from " + startDate.ToString("MM/dd/yyyy") + " to " + endDate.ToString("MM/dd/yyyy")); } FillListBox(); } // If Completed Orders is checked -- Lr if (cmbReports.SelectedIndex == 1) { if (dateStart.SelectedDate == null || dateEnd.SelectedDate == null) { MessageBox.Show("Please select a start and end date"); return; } startDate = (DateTime)dateStart.SelectedDate; endDate = (DateTime)dateEnd.SelectedDate; selectedOrders = await OrderProcessor.ShowAllCompleteOrders(currentUser.Privileges, currentUser.Token); if (selectedUser == null && selectedEmployee == null) { lstReports.Items.Add("\t\t\t\t\tCompleted Orders from " + startDate.ToString("MM/dd/yyyy") + " to " + endDate.ToString("MM/dd/yyyy")); } else if (selectedUser != null && selectedEmployee == null) { lstReports.Items.Add("\t\t\t\t\tCompleted Orders for " + selectedUser.Firstname + " " + selectedUser.Lastname + " from " + startDate.ToString("MM/dd/yyyy") + " to " + endDate.ToString("MM/dd/yyyy")); } else if (selectedUser != null && selectedEmployee != null) { lstReports.Items.Add("\t\t\t\t\tCompleted Orders for " + selectedUser.Firstname + " " + selectedUser.Lastname + " with " + selectedEmployee.Firstname + " " + selectedEmployee.Lastname + " from " + startDate.ToString("MM/dd/yyyy") + " to " + endDate.ToString("MM/dd/yyyy")); } FillListBox(); } // If Cancelled Orders is checked -- Lr if (cmbReports.SelectedIndex == 2) { if (dateStart.SelectedDate == null || dateEnd.SelectedDate == null) { MessageBox.Show("Please select a start and end date"); return; } startDate = (DateTime)dateStart.SelectedDate; endDate = (DateTime)dateEnd.SelectedDate; selectedOrders = await OrderProcessor.ShowAllCancelledOrders(currentUser.Privileges, currentUser.Token); if (selectedUser == null && selectedEmployee == null) { lstReports.Items.Add("\t\t\t\t\tCancelled Orders from " + startDate.ToString("MM/dd/yyyy") + " to " + endDate.ToString("MM/dd/yyyy")); } else if (selectedUser != null && selectedEmployee == null) { lstReports.Items.Add("\t\t\t\t\tCancelled Orders for " + selectedUser.Firstname + " " + selectedUser.Lastname + " from " + startDate.ToString("MM/dd/yyyy") + " to " + endDate.ToString("MM/dd/yyyy")); } else if (selectedUser != null && selectedEmployee != null) { lstReports.Items.Add("\t\t\t\t\tCancelled Orders for " + selectedUser.Firstname + " " + selectedUser.Lastname + " with " + selectedEmployee.Firstname + " " + selectedEmployee.Lastname + " from " + startDate.ToString("MM/dd/yyyy") + " to " + endDate.ToString("MM/dd/yyyy")); } FillListBox(); } // If Customer's Orders is checked -- Lr if (cmbReports.SelectedIndex == 3) { if (dateStart.SelectedDate == null || dateEnd.SelectedDate == null) { MessageBox.Show("Please select a start and end date"); return; } startDate = (DateTime)dateStart.SelectedDate; endDate = (DateTime)dateEnd.SelectedDate; selectedOrders = await OrderProcessor.ShowAllOrders(currentUser.Privileges, currentUser.Token); if (string.IsNullOrEmpty(txtCustomer.Text)) { MessageBox.Show("Please select a customer"); return; } lstReports.Items.Add("\t\t\t\t\t" + txtCustomer.Text + "'s orders from " + startDate.ToString("MM/dd/yyyy") + " to " + endDate.ToString("MM/dd/yyyy")); FillListBox(); } // If Pet's By Customer is checked -- Lr if (cmbReports.SelectedIndex == 4) { if (string.IsNullOrEmpty(txtCustomer.Text)) { MessageBox.Show("Please select a customer"); return; } lstReports.Items.Add("\t\t\t\t\t" + txtCustomer.Text + "'s Pets"); selectedPets = await PetProcessor.ShowPetsByCustomer(selectedUser.UserID, currentUser.Token); foreach (PetModel m in selectedPets) { lstReports.Items.Add(m); } } // If Employee Assigned Orders is checked -- Lr if (cmbReports.SelectedIndex == 5) { if (string.IsNullOrEmpty(txtEmployee.Text)) { MessageBox.Show("Please select an employee."); return; } if (dateStart.SelectedDate == null || dateEnd.SelectedDate == null) { MessageBox.Show("Please select a start and end date"); return; } startDate = (DateTime)dateStart.SelectedDate; endDate = (DateTime)dateEnd.SelectedDate; lstReports.Items.Add("\t\t\t\t\t" + txtEmployee.Text + "'s schedule from " + startDate.ToString("MM/dd/yyyy") + " to " + endDate.ToString("MM/dd/yyyy")); selectedOrders = await OrderProcessor.GetAssignedRequest(selectedEmployee.UserID, currentUser.Token); FillListBox(); } // If Paid Invoices is checked -- LR if (cmbReports.SelectedIndex == 6) { /// Validation if (dateStart.SelectedDate == null || dateEnd.SelectedDate == null) { MessageBox.Show("Please select a start and end date"); return; } if (dateStart.SelectedDate == null || dateEnd.SelectedDate == null) { MessageBox.Show("Please select a start and end date"); return; } startDate = (DateTime)dateStart.SelectedDate; endDate = (DateTime)dateEnd.SelectedDate; /// Header If Statement if (selectedUser != null) { lstReports.Items.Add("\t\t\t\t\t" + txtCustomer.Text + "'s paid invoices from " + startDate.ToString("MM/dd/yyyy") + " to " + endDate.ToString("MM/dd/yyyy")); } else { lstReports.Items.Add("\t\t\t\t\t" + "Paid Invoices from " + startDate.ToString("MM/dd/yyyy") + " to " + endDate.ToString("MM/dd/yyyy")); } /// Calling API Service for Unpaid Invoices selectedInvoices = await InvoiceProcessor.getPaidinvoices(currentUser.Privileges, currentUser.Token); /// Testing to see if there are any paid invoices for date if (selectedInvoices == null) { MessageBox.Show("There are no invoices to display."); return; } /// Adding invoices in listbox foreach (InvoiceModel m in selectedInvoices) { if (selectedUser != null) { if (m.CustomerID == selectedUser.UserID) { if (DateTime.Parse(m.InvoiceDate) >= dateStart.SelectedDate && DateTime.Parse(m.InvoiceDate) <= dateEnd.SelectedDate) { lstReports.Items.Add(m); } } } else { if (DateTime.Parse(m.InvoiceDate) >= dateStart.SelectedDate && DateTime.Parse(m.InvoiceDate) <= dateEnd.SelectedDate) { lstReports.Items.Add(m); } } } } // If Unpaid Invoices is checked -- LR if (cmbReports.SelectedIndex == 7) { /// Validation if (dateStart.SelectedDate == null || dateEnd.SelectedDate == null) { MessageBox.Show("Please select a start and end date"); return; } if (dateStart.SelectedDate == null || dateEnd.SelectedDate == null) { MessageBox.Show("Please select a start and end date"); return; } startDate = (DateTime)dateStart.SelectedDate; endDate = (DateTime)dateEnd.SelectedDate; /// Header If Statement if (selectedUser != null) { lstReports.Items.Add("\t\t\t\t\t" + txtCustomer.Text + "'s unpaid invoices from " + startDate.ToString("MM/dd/yyyy") + " to " + endDate.ToString("MM/dd/yyyy")); } else { lstReports.Items.Add("\t\t\t\t\t" + "Unpaid Invoices from " + startDate.ToString("MM/dd/yyyy") + " to " + endDate.ToString("MM/dd/yyyy")); } /// Calling API Service for Unpaid Invoices selectedInvoices = await InvoiceProcessor.getUnpaidInvoices(currentUser.Privileges, currentUser.Token); /// Testing to see if there are any paid invoices for date if (selectedInvoices == null) { MessageBox.Show("There are no invoices to display."); return; } /// Adding invoices in listbox foreach (InvoiceModel m in selectedInvoices) { if (selectedUser != null) { if (m.CustomerID == selectedUser.UserID) { if (DateTime.Parse(m.InvoiceDate) >= dateStart.SelectedDate && DateTime.Parse(m.InvoiceDate) <= dateEnd.SelectedDate) { lstReports.Items.Add(m); } } } else { if (DateTime.Parse(m.InvoiceDate) >= dateStart.SelectedDate && DateTime.Parse(m.InvoiceDate) <= dateEnd.SelectedDate) { lstReports.Items.Add(m); } } } } // test comment // If overdue invoices is checked -- LR if (cmbReports.SelectedIndex == 8) { if (dateStart.SelectedDate == null || dateEnd.SelectedDate == null) { MessageBox.Show("Please select a start and end date"); return; } startDate = (DateTime)dateStart.SelectedDate; endDate = (DateTime)dateEnd.SelectedDate; selectedInvoices = await InvoiceProcessor.getOverdueInvoices(currentUser.Privileges, currentUser.Token); if (selectedInvoices == null) { MessageBox.Show("There are no invoices to display."); return; } if (selectedUser != null) { lstReports.Items.Add("\t\t\t\t\t" + txtCustomer.Text + "'s overdue invoices from " + startDate.ToString("MM/dd/yyyy") + " to " + endDate.ToString("MM/dd/yyyy")); } else { lstReports.Items.Add("\t\t\t\t\t" + "Overdue invoices from " + startDate.ToString("MM/dd/yyyy") + " to " + endDate.ToString("MM/dd/yyyy")); } foreach (InvoiceModel m in selectedInvoices) { if (selectedUser != null) { if (m.CustomerID == selectedUser.UserID) { if (DateTime.Parse(m.InvoiceDate) >= dateStart.SelectedDate && DateTime.Parse(m.InvoiceDate) <= dateEnd.SelectedDate) { lstReports.Items.Add(m); } } } else { if (DateTime.Parse(m.InvoiceDate) >= dateStart.SelectedDate && DateTime.Parse(m.InvoiceDate) <= dateEnd.SelectedDate) { lstReports.Items.Add(m); } } } } // If due invoices is checked -- LR if (cmbReports.SelectedIndex == 9) { if (dateStart.SelectedDate == null || dateEnd.SelectedDate == null) { MessageBox.Show("Please select a start and end date"); return; } startDate = (DateTime)dateStart.SelectedDate; endDate = (DateTime)dateEnd.SelectedDate; selectedInvoices = await InvoiceProcessor.getUnderdueInvoices(currentUser.Privileges, currentUser.Token); if (selectedInvoices == null) { MessageBox.Show("There are no invoices to display."); return; } if (selectedUser != null) { lstReports.Items.Add("\t\t\t\t\t" + txtCustomer.Text + "'s due invoices (not overdue) from " + startDate.ToString("MM/dd/yyyy") + " to " + endDate.ToString("MM/dd/yyyy")); } else { lstReports.Items.Add("\t\t\t\t\t" + "Due invoices (not overdue) from " + startDate.ToString("MM/dd/yyyy") + " to " + endDate.ToString("MM/dd/yyyy")); } foreach (InvoiceModel m in selectedInvoices) { if (selectedUser != null) { if (m.CustomerID == selectedUser.UserID) { if (DateTime.Parse(m.InvoiceDate) >= dateStart.SelectedDate && DateTime.Parse(m.InvoiceDate) <= dateEnd.SelectedDate) { lstReports.Items.Add(m); } } } else { if (DateTime.Parse(m.InvoiceDate) >= dateStart.SelectedDate && DateTime.Parse(m.InvoiceDate) <= dateEnd.SelectedDate) { lstReports.Items.Add(m); } } } } } catch (Exception ex) { MessageBox.Show(ex.Message); } }