/// <summary> /// Method to construct the search criteria /// </summary> /// <returns>ContactsSearchCriteria</returns> public ContactFilter_V01 GetContactSearchCriteria() { if (Enabled == false || SearchContactsDropDown.SelectedIndex < 0 || String.IsNullOrEmpty(SearchField.Text)) { return(null); } ContactFilter_V01 searchCriteria = new ContactFilter_V01(); if (SearchContactsDropDown.SelectedValue == "NameContains") { searchCriteria.NameSearchTypeInd = ContactNameSearchType.NameContains; } else if (SearchContactsDropDown.SelectedValue == "FirstNameStartsWith") { searchCriteria.NameSearchTypeInd = ContactNameSearchType.FirstNameStartsWith; } else { searchCriteria.NameSearchTypeInd = ContactNameSearchType.LastNameStartsWith; } searchCriteria.Name = SearchField.Text.Trim(); searchCriteria.IsAdvancedSearch = false; return(searchCriteria); }
private static List <Contact_V03> FilterContacts(string DistributorID, ContactFilter_V01 contactFilter, List <Contact_V03> allContacts) { if (contactFilter == null) { return(new List <Contact_V03>()); } List <int> matchedContactIDs = null; if (ValidateContactFilter(contactFilter)) { return(allContacts); } using (var proxy = ServiceClientProvider.GetDistributorCRMServiceProxy()) { var request = new ListContactsByFilterRequest_V01(); request.DistributorID = DistributorID; request.ContactFilter = contactFilter; var response = proxy.ListContactsByFilter(new ListContactsByFilterRequest(request)).ListContactsByFilterResult as ListContactsByFilterResponse_V01; if (response != null && response.Status == ServiceResponseStatusType.Success) { matchedContactIDs = response.ContactIDs; } else { return(null); } } if (allContacts == null) { return(null); } if (matchedContactIDs.Count == 0) { return(new List <Contact_V03>()); } var result = new List <Contact_V03>(); var filteredContacts = allContacts.Where(contact => matchedContactIDs.Contains(contact.ContactID)); if (null != filteredContacts && filteredContacts.Count() > 0) { result = filteredContacts.ToList(); } return(result); }
/// <summary> /// Event Click handler for the Search button /// </summary> /// <param name="sender">object</param> /// <param name="e">EventArgs</param> protected void BasicSearch_click(object sender, EventArgs e) { if (!String.IsNullOrEmpty(SearchField.Text.Trim())) { ContactFilter_V01 searchCriteria = GetContactSearchCriteria(); //used in MyContactsBasic page RaiseBubbleEvent(this, new CommandEventArgs("BasicSearch", searchCriteria)); } else { ClearSearch_click(sender, e); } }
private static bool ValidateContactFilter(ContactFilter_V01 contactFilter) { if (string.IsNullOrEmpty(contactFilter.BirthDay) && string.IsNullOrEmpty(contactFilter.City) && string.IsNullOrEmpty(contactFilter.ContactSource) && string.IsNullOrEmpty(contactFilter.ContactType) && string.IsNullOrEmpty(contactFilter.Country) && string.IsNullOrEmpty(contactFilter.Email) && string.IsNullOrEmpty(contactFilter.FirstName) && string.IsNullOrEmpty(contactFilter.LastName) && string.IsNullOrEmpty(contactFilter.Name) && string.IsNullOrEmpty(contactFilter.State) && string.IsNullOrEmpty(contactFilter.Interest) && string.IsNullOrEmpty(contactFilter.ZipCode) && string.IsNullOrEmpty(contactFilter.PhoneNumber) && contactFilter.SearchByEmail == false) { return(true); } return(false); }
protected override bool OnBubbleEvent(object source, EventArgs args) { CommandEventArgs command = args as CommandEventArgs; if (command != null) { switch (command.CommandName) { case "LoadContacts": ContactFilter_V01 searchCriteria = contactsBasicSearch.GetContactSearchCriteria(); if (searchCriteria != null) { OnSearch(searchCriteria); } else { LoadContacts(); } ContactsListView1.DataBind(); break; case "BasicSearch": OnSearch((ContactFilter_V01)command.CommandArgument); ContactsListView1.DataBind(); break; case "ClearSearch": //begin - shan - mar 20, 2012 - clear the session value //else it is pre-select the items whenever clear button is clicked Session["ListDelete"] = null; //end LoadContacts(); ContactsListView1.DataBind(); break; case "SelectAll": ContactsListView1.SelectAll(bool.Parse(command.CommandArgument.ToString())); break; default: break; } } return(base.OnBubbleEvent(source, args)); }
protected void OnSearch(ContactFilter_V01 contactsSearchCriteria) { if (contactsSearchCriteria != null) { List <Contact_V03> filteredContacts = ContactsDataProvider.FilterContacts(DistributorID, contactsSearchCriteria); if (null != filteredContacts) { ContactsListView1.OnContactsLoaded(filteredContacts, new List <string>() { "FollowUp", "FullNameNotLinked", "CreatedDate", "Fullname", "Email", "ContactSource" }); } } else { LoadContacts(); } }
public static List <Contact_V03> GetDistributorByFilter(string distributorID, ContactFilter_V01 contactFilterV01) { var request = new ListContactsByFilterRequest_V01 { ContactFilter = contactFilterV01, DistributorID = distributorID }; using (var proxy = ServiceClientProvider.GetDistributorCRMServiceProxy()) { try { var response = proxy.ListDistributorByFilter(new ListDistributorByFilterRequest(request)).ListDistributorByFilterResult as ListContactsByOwnerResponse_V01; if (response != null && response.Status == ServiceResponseStatusType.Success) { return(response.Contacts); } } catch (Exception ex) { Log(ex, proxy); return(new List <Contact_V03>()); } } return(new List <Contact_V03>()); }
public static List <Contact_V03> FilterContacts(string DistributorID, ContactFilter_V01 contactFilter) { var contactList = GetContactsByOwner(DistributorID); return(FilterContacts(DistributorID, contactFilter, contactList)); }