private void ApplyCustomerFilter() { var filter = new CustomerFilter(); if (!IsNullOrEmpty ( customerFilterFirstNameBox.Text )){ filter.Value.FirstName = customerFilterFirstNameBox.Text; } if(!IsNullOrEmpty(customerFilterLastNameBox.Text)) { filter.Value.LastName = customerFilterLastNameBox.Text; } if(!IsNullOrEmpty(customerFilterMiddleNameBox.Text)) { filter.Value.MiddleName = customerFilterMiddleNameBox.Text; } if(!IsNullOrEmpty(customerFilterNumberBox.Text)) { filter.Value.Number = customerFilterNumberBox.Text; } control.ApplyFilter ( filter ); }
public void CustomerFilterTest() { PersistenceManager pm = PersistenceManager.GetInstance(); pm.DeleteAll(); PaymentController control = PaymentController.GetInstance(); Customer cust1 = new Customer { FirstName = "abcd", LastName = "abcd", MiddleName = "abcd", Number = "A341B" }; Customer cust2 = new Customer { FirstName = "kiyre", LastName = "fjjruei", MiddleName = "kfuenv", Number = "754438" }; Customer cust3 = new Customer { FirstName = "fdsabcdgj", LastName = "gfdhabcdfgg", MiddleName = "ghfabcddsa", Number = "1A341B" }; Customer cust4 = new Customer { FirstName = "парпнкг", LastName = "аопку", MiddleName = "памвопшк", Number = "4авп" }; Customer cust5 = new Customer { FirstName = "abcdefg", LastName = "abcdefg", MiddleName = "abcdefg", Number = "abcdefg" }; Assert.IsTrue(pm.AddCustomer(cust1)); Assert.IsTrue(pm.AddCustomer(cust2)); Assert.IsTrue(pm.AddCustomer(cust3)); Assert.IsTrue(pm.AddCustomer(cust4)); Assert.IsTrue(pm.AddCustomer(cust5)); CustomerFilter filter = new CustomerFilter(); filter.Value.FirstName = "kiyre"; control.ApplyFilter ( filter ); List <Customer> list = control.GetFilteredCustomers(); Assert.AreEqual ( 1, list.Count ); Assert.IsTrue ( list.Contains ( cust2 ) ); filter.Value.FirstName = "парпнкг"; control.ApplyFilter(filter); list = control.GetFilteredCustomers(); Assert.AreEqual(1, list.Count); Assert.IsTrue(list.Contains(cust4)); filter.Value.FirstName = "abcd"; control.ApplyFilter(filter); list = control.GetFilteredCustomers(); Assert.AreEqual(3, list.Count); Assert.IsTrue(list.Contains(cust1)); Assert.IsTrue(list.Contains(cust3)); Assert.IsTrue(list.Contains(cust5)); filter = new CustomerFilter(); filter.Value.MiddleName = "ghfabcddsa"; control.ApplyFilter(filter); list = control.GetFilteredCustomers(); Assert.AreEqual(1, list.Count); Assert.IsTrue(list.Contains(cust3)); filter.Value.MiddleName = "памвопшк"; control.ApplyFilter(filter); list = control.GetFilteredCustomers(); Assert.AreEqual(1, list.Count); Assert.IsTrue(list.Contains(cust4)); filter.Value.MiddleName = "abcd"; control.ApplyFilter(filter); list = control.GetFilteredCustomers(); Assert.AreEqual(3, list.Count); Assert.IsTrue(list.Contains(cust1)); Assert.IsTrue(list.Contains(cust3)); Assert.IsTrue(list.Contains(cust5)); filter = new CustomerFilter(); filter.Value.LastName = "аопку"; control.ApplyFilter(filter); list = control.GetFilteredCustomers(); Assert.AreEqual(1, list.Count); Assert.IsTrue(list.Contains(cust4)); filter.Value.LastName = "abcd"; control.ApplyFilter(filter); list = control.GetFilteredCustomers(); Assert.AreEqual(3, list.Count); Assert.IsTrue(list.Contains(cust1)); Assert.IsTrue(list.Contains(cust3)); Assert.IsTrue(list.Contains(cust5)); filter = new CustomerFilter(); filter.Value.Number = "4авп"; control.ApplyFilter(filter); list = control.GetFilteredCustomers(); Assert.AreEqual(1, list.Count); Assert.IsTrue(list.Contains(cust4)); filter.Value.Number = "A341B"; control.ApplyFilter(filter); list = control.GetFilteredCustomers(); Assert.AreEqual(2, list.Count); Assert.IsTrue(list.Contains(cust1)); Assert.IsTrue(list.Contains(cust3)); filter = new CustomerFilter(); filter.Value.FirstName = "ab"; filter.Value.LastName = "fg"; filter.Value.MiddleName = "abcd"; control.ApplyFilter(filter); list = control.GetFilteredCustomers(); Assert.AreEqual(2, list.Count); Assert.IsTrue(list.Contains(cust3)); Assert.IsTrue(list.Contains(cust5)); filter.Value.Number = "1"; control.ApplyFilter(filter); list = control.GetFilteredCustomers(); Assert.AreEqual(1, list.Count); Assert.IsTrue(list.Contains(cust3)); }
public void ApplyFilter(CustomerFilter filter) { var query = new StringBuilder(""); if (filter.Value.FirstName != null){ if(query.ToString().Length > 0) query.Append(" AND "); query.Append(CustomerColumns.FirstName + " LIKE '*" + filter.Value.FirstName + "*'"); } if(filter.Value.LastName != null) { if(query.ToString().Length > 0) query.Append(" AND "); query.Append(CustomerColumns.LastName + " LIKE '*" + filter.Value.LastName + "*'"); } if(filter.Value.MiddleName != null) { if(query.ToString().Length > 0) query.Append(" AND "); query.Append(CustomerColumns.MiddleName + " LIKE '*" + filter.Value.MiddleName + "*'"); } if(filter.Value.Number != null) { if(query.ToString().Length > 0) query.Append(" AND "); query.Append(CustomerColumns.Number + " LIKE '*" + filter.Value.Number + "*'"); } customersView.RowFilter = query.ToString(); }