示例#1
0
        private AZSearchView BuildPublicSettingsView(ModuleInstanceView parent, AZSearchView settingsData, IDictionary<string, string> parameters)
        {
            var searchResultPageUrl = CommonUtils.AddQueryStringParameter(settingsData.GetSettingValue("SearchResultsPageUrl", string.Empty), "Letter", string.Empty, false);

            // Location context options
            var locationId = LocationContextHelper.ResolveLocationContext(parent, settingsData, parameters).Id;
            var descendantOption = LocationContextHelper.ResolveLocationDescendantOption(settingsData, parameters);

            var locationContextQuery = string.Empty;

            if (locationId.HasValue)
                locationContextQuery += "&LocationContext=" + locationId.Value.ToString() +"&LocationDescendants=" + (descendantOption == DescendantOption.IncludeDescendants ? "true" : "false");

            settingsData.Aurl = searchResultPageUrl + "A" + locationContextQuery;
            settingsData.Burl = searchResultPageUrl + "B" + locationContextQuery;
            settingsData.Curl = searchResultPageUrl + "C" + locationContextQuery;
            settingsData.Durl = searchResultPageUrl + "D" + locationContextQuery;
            settingsData.Eurl = searchResultPageUrl + "E" + locationContextQuery;
            settingsData.Furl = searchResultPageUrl + "F" + locationContextQuery;
            settingsData.Gurl = searchResultPageUrl + "G" + locationContextQuery;
            settingsData.Hurl = searchResultPageUrl + "H" + locationContextQuery;
            settingsData.Iurl = searchResultPageUrl + "I" + locationContextQuery;
            settingsData.Jurl = searchResultPageUrl + "J" + locationContextQuery;
            settingsData.Kurl = searchResultPageUrl + "K" + locationContextQuery;
            settingsData.Lurl = searchResultPageUrl + "L" + locationContextQuery;
            settingsData.Murl = searchResultPageUrl + "M" + locationContextQuery;
            settingsData.Nurl = searchResultPageUrl + "N" + locationContextQuery;
            settingsData.Ourl = searchResultPageUrl + "O" + locationContextQuery;
            settingsData.Purl = searchResultPageUrl + "P" + locationContextQuery;
            settingsData.Qurl = searchResultPageUrl + "Q" + locationContextQuery;
            settingsData.Rurl = searchResultPageUrl + "R" + locationContextQuery;
            settingsData.Surl = searchResultPageUrl + "S" + locationContextQuery;
            settingsData.Turl = searchResultPageUrl + "T" + locationContextQuery;
            settingsData.Uurl = searchResultPageUrl + "U" + locationContextQuery;
            settingsData.Vurl = searchResultPageUrl + "V" + locationContextQuery;
            settingsData.Wurl = searchResultPageUrl + "W" + locationContextQuery;
            settingsData.Xurl = searchResultPageUrl + "X" + locationContextQuery;
            settingsData.Yurl = searchResultPageUrl + "Y" + locationContextQuery;
            settingsData.Zurl = searchResultPageUrl + "Z" + locationContextQuery;

            var request = new SearchProviderSpecialtiesRequest() { OrgUnitId = locationId, DescendantOption = descendantOption };
            var response = parent.ProcessRequest<SearchProviderSpecialtiesResponse>(request);

            settingsData.ADisabled = !response.Specialties.Any(s => s.Name.StartsWith("A"));
            settingsData.BDisabled = !response.Specialties.Any(s => s.Name.StartsWith("B"));
            settingsData.CDisabled = !response.Specialties.Any(s => s.Name.StartsWith("C"));
            settingsData.DDisabled = !response.Specialties.Any(s => s.Name.StartsWith("D"));
            settingsData.EDisabled = !response.Specialties.Any(s => s.Name.StartsWith("E"));
            settingsData.FDisabled = !response.Specialties.Any(s => s.Name.StartsWith("F"));
            settingsData.GDisabled = !response.Specialties.Any(s => s.Name.StartsWith("G"));
            settingsData.HDisabled = !response.Specialties.Any(s => s.Name.StartsWith("H"));
            settingsData.IDisabled = !response.Specialties.Any(s => s.Name.StartsWith("I"));
            settingsData.JDisabled = !response.Specialties.Any(s => s.Name.StartsWith("J"));
            settingsData.KDisabled = !response.Specialties.Any(s => s.Name.StartsWith("K"));
            settingsData.LDisabled = !response.Specialties.Any(s => s.Name.StartsWith("L"));
            settingsData.MDisabled = !response.Specialties.Any(s => s.Name.StartsWith("M"));
            settingsData.NDisabled = !response.Specialties.Any(s => s.Name.StartsWith("N"));
            settingsData.ODisabled = !response.Specialties.Any(s => s.Name.StartsWith("O"));
            settingsData.PDisabled = !response.Specialties.Any(s => s.Name.StartsWith("P"));
            settingsData.QDisabled = !response.Specialties.Any(s => s.Name.StartsWith("Q"));
            settingsData.RDisabled = !response.Specialties.Any(s => s.Name.StartsWith("R"));
            settingsData.SDisabled = !response.Specialties.Any(s => s.Name.StartsWith("S"));
            settingsData.TDisabled = !response.Specialties.Any(s => s.Name.StartsWith("T"));
            settingsData.UDisabled = !response.Specialties.Any(s => s.Name.StartsWith("U"));
            settingsData.VDisabled = !response.Specialties.Any(s => s.Name.StartsWith("V"));
            settingsData.WDisabled = !response.Specialties.Any(s => s.Name.StartsWith("W"));
            settingsData.XDisabled = !response.Specialties.Any(s => s.Name.StartsWith("X"));
            settingsData.YDisabled = !response.Specialties.Any(s => s.Name.StartsWith("Y"));
            settingsData.ZDisabled = !response.Specialties.Any(s => s.Name.StartsWith("Z"));

            if (parameters.ContainsKey("Letter"))
                settingsData.ActiveLetter = parameters["Letter"];

            return settingsData;
        }
 /// <summary>
 /// Determines whether the specified <see cref="SearchProvidersRequest" /> is equal to this instance.
 /// </summary>
 /// <param name="other">The other.</param>
 /// <returns></returns>
 public bool Equals(SearchProviderSpecialtiesRequest other)
 {
     return base.Equals(other)
         && string.Equals(SpecialtyLetter, other.SpecialtyLetter, StringComparison.OrdinalIgnoreCase);
 }
        private SearchProviderSpecialtiesRequest BuildRequest(DataProxyBase dataProxy, IDictionary<string, string> parameters)
        {
            var searchRequest = new SearchProviderSpecialtiesRequest();

            //Location Context
            searchRequest.OrgUnitId = LocationContextHelper.ResolveLocationContext(dataProxy, _viewSettings, parameters).Id;
            searchRequest.DescendantOption = LocationContextHelper.ResolveLocationDescendantOption(_viewSettings, parameters);

            //Letter Alpha Search
            if (parameters.ContainsKey("Letter"))
                searchRequest.SpecialtyLetter = parameters["Letter"];

            return searchRequest;
        }