コード例 #1
0
ファイル: FilterHelper.cs プロジェクト: tuxevil/Grundfos
        public static IList <IFilter> GetFiltersState(ControlCollection filtersControls, SearchParameters searchParameters)
        {
            IList <IFilter> lastfilters = new List <IFilter>();

            IFilter f = FindFilter(filtersControls, typeof(Family), "ID");

            if (searchParameters.Categories[0] != 0)
            {
                f.Values = searchParameters.Categories[0];
                lastfilters.Add(f);
            }
            else if (f != null)
            {
                f.Clear();
            }

            f = FindFilter(filtersControls, typeof(CatalogPage), "ID");
            if (searchParameters.Categories[1] != 0)
            {
                f.Values = searchParameters.Categories[1];
                lastfilters.Add(f);
            }
            else if (f != null)
            {
                f.Clear();
            }

            f = FindFilter(filtersControls, typeof(ProductType), "ID");
            if (searchParameters.Categories[2] != 0)
            {
                f.Values = searchParameters.Categories[2];
                lastfilters.Add(f);
            }
            else if (f != null)
            {
                f.Clear();
            }

            f = FindFilter(filtersControls, typeof(Application), "ID");
            if (searchParameters.Categories[3] != 0)
            {
                f.Values = searchParameters.Categories[3];
                lastfilters.Add(f);
            }
            else if (f != null)
            {
                f.Clear();
            }

            f = FindFilter(filtersControls, typeof(Line), "ID");
            if (searchParameters.Categories[4] != 0)
            {
                f.Values = searchParameters.Categories[4];
                lastfilters.Add(f);
            }
            else if (f != null)
            {
                f.Clear();
            }

            f = FindFilter(filtersControls, typeof(Area), "ID");
            if (searchParameters.Categories[5] != 0)
            {
                f.Values = searchParameters.Categories[5];
                lastfilters.Add(f);
            }
            else if (f != null)
            {
                f.Clear();
            }

            f = FindFilter(filtersControls, typeof(Country), "ID");
            if (searchParameters.Country != 0)
            {
                f.Values = searchParameters.Country;
                lastfilters.Add(f);
            }
            else if (f != null)
            {
                f.Clear();
            }

            f = FindFilter(filtersControls, typeof(CtrRange), "ID");
            if (searchParameters.CtrRange != 0)
            {
                f.Values = searchParameters.CtrRange;
                lastfilters.Add(f);
            }
            else if (f != null)
            {
                f.Clear();
            }

            f = FindFilter(filtersControls, typeof(Currency), "ID");
            if (searchParameters.Currency != 0)
            {
                f.Values = searchParameters.Currency;
                lastfilters.Add(f);
            }
            else if (f != null)
            {
                f.Clear();
            }

            f = FindFilter(filtersControls, typeof(Product), "Description");
            if (!string.IsNullOrEmpty(searchParameters.Description))
            {
                f.Values = searchParameters.Description;
                lastfilters.Add(f);
            }
            else if (f != null)
            {
                f.Clear();
            }

            f = FindFilter(filtersControls, typeof(Distributor), "ID");
            if (searchParameters.Distributor != 0)
            {
                f.Values = searchParameters.Distributor;
                lastfilters.Add(f);
            }
            else if (f != null)
            {
                f.Clear();
            }

            f = FindFilter(filtersControls, typeof(DistributorStatus), "ID");
            if (searchParameters.DistributorStatus != null)
            {
                f.Values = searchParameters.DistributorStatus;
                lastfilters.Add(f);
            }
            else if (f != null)
            {
                f.Clear();
            }

            f = FindFilter(filtersControls, typeof(Incoterm), "ID");
            if (searchParameters.Incoterm != null)
            {
                f.Values = searchParameters.Incoterm;
                lastfilters.Add(f);
            }
            else if (f != null)
            {
                f.Clear();
            }

            f = FindFilter(filtersControls, typeof(IndexPrice), "ID");
            if (searchParameters.IndexPrice != 0)
            {
                f.Values = searchParameters.IndexPrice;
                lastfilters.Add(f);
            }
            else if (f != null)
            {
                f.Clear();
            }

            f = FindFilter(filtersControls, typeof(Lookup), "Payment");
            if (searchParameters.PaymentTerm != null)
            {
                f.Values = searchParameters.PaymentTerm.ID;
                lastfilters.Add(f);
            }
            else if (f != null)
            {
                f.Clear();
            }

            f = FindFilter(filtersControls, typeof(PriceBaseStatus), "ID");
            if (searchParameters.PriceBaseStatus != null)
            {
                f.Values = searchParameters.PriceBaseStatus;
                lastfilters.Add(f);
            }
            else if (f != null)
            {
                f.Clear();
            }

            f = FindFilter(filtersControls, typeof(PriceGroup), "ID");
            if (searchParameters.PriceGroup != 0)
            {
                f.Values = searchParameters.PriceGroup;
                lastfilters.Add(f);
            }
            else if (f != null)
            {
                f.Clear();
            }

            f = FindFilter(filtersControls, typeof(PriceImport), "ID");
            if (searchParameters.PriceImport != Guid.Empty)
            {
                f.Values = searchParameters.PriceImport;
                lastfilters.Add(f);
            }
            else if (f != null)
            {
                f.Clear();
            }

            f = FindFilter(filtersControls, typeof(PriceList), "ID");
            if (searchParameters.PriceList != 0)
            {
                f.Values = searchParameters.PriceList;
                lastfilters.Add(f);
            }
            else if (f != null)
            {
                f.Clear();
            }

            f = FindFilter(filtersControls, typeof(Frequency), "ID");
            if (searchParameters.Frequency != null)
            {
                f.Values = searchParameters.Frequency;
                lastfilters.Add(f);
            }
            else if (f != null)
            {
                f.Clear();
            }

            f = FindFilter(filtersControls, typeof(ProductStatus), "ID");
            if (searchParameters.ProductStatus != null)
            {
                f.Values = searchParameters.ProductStatus;
                lastfilters.Add(f);
            }
            else if (f != null)
            {
                f.Clear();
            }

            f = FindFilter(filtersControls, typeof(Provider), "ID");
            if (searchParameters.Provider != 0)
            {
                f.Values = searchParameters.Provider;
                lastfilters.Add(f);
            }
            else if (f != null)
            {
                f.Clear();
            }

            f = FindFilter(filtersControls, typeof(PublishList), "ID");
            if (searchParameters.PublishList != 0)
            {
                f.Values = searchParameters.PublishList.ToString();
                lastfilters.Add(f);
            }
            else if (f != null)
            {
                f.Clear();
            }

            f = FindFilter(filtersControls, typeof(PublishListStatus), "ID");
            if (searchParameters.PublishListStatus != null)
            {
                f.Values = searchParameters.PublishListStatus;
                lastfilters.Add(f);
            }
            else if (f != null)
            {
                f.Clear();
            }

            f = FindFilter(filtersControls, typeof(Pair), "TimeStampCheck");
            if (f != null && (searchParameters.SearchDateTo != null || searchParameters.SearchDate != null))
            {
                Pair p = new Pair();
                if (searchParameters.SearchDate != null)
                {
                    p.First = searchParameters.SearchDate.Value.ToShortDateString();
                }
                if (searchParameters.SearchDateTo != null)
                {
                    p.Second = searchParameters.SearchDateTo.Value.ToShortDateString();
                }

                f.Values = p;
                lastfilters.Add(f);
            }
            else if (f != null)
            {
                f.Clear();
            }

            f = FindFilter(filtersControls, typeof(Selection), "ID");
            if (searchParameters.Selection > 0)
            {
                f.Values = searchParameters.Selection;
                lastfilters.Add(f);
            }
            else if (f != null)
            {
                f.Clear();
            }

            f = FindFilter(filtersControls, typeof(WorkListItemStatus), "ID");
            if (searchParameters.WorkListItemStatus != null)
            {
                f.Values = searchParameters.WorkListItemStatus;
                lastfilters.Add(f);
            }
            else if (f != null)
            {
                f.Clear();
            }

            f = FindFilter(filtersControls, typeof(CategoryBase), "ID");
            if (searchParameters.CategoryBase != 0)
            {
                f.Values = searchParameters.CategoryBase;
                lastfilters.Add(f);
            }
            else if (f != null)
            {
                f.Clear();
            }

            f = FindFilter(filtersControls, typeof(Type), "FullName");
            if (!string.IsNullOrEmpty(searchParameters.CategoryType))
            {
                f.Values = Type.GetType(searchParameters.CategoryType);
                lastfilters.Add(f);
            }
            else if (f != null)
            {
                f.Clear();
            }

            f = FindFilter(filtersControls, typeof(Lookup), "ID");
            if (searchParameters.Type > 0)
            {
                f.Values = searchParameters.Type;
                lastfilters.Add(f);
            }
            else if (f != null)
            {
                f.Clear();
            }

            f = FindFilter(filtersControls, typeof(LookupType), "ID");
            if (searchParameters.LookupType != null)
            {
                f.Values = searchParameters.LookupType;
                lastfilters.Add(f);
            }
            else if (f != null)
            {
                f.Clear();
            }

            f = FindFilter(filtersControls, typeof(PriceCalculationPriority), "ID");
            if (searchParameters.PriceCalculationPriority != null)
            {
                f.Values = searchParameters.PriceCalculationPriority;
                lastfilters.Add(f);
            }
            else if (f != null)
            {
                f.Clear();
            }

            f = FindFilter(filtersControls, typeof(ProviderStatus), "ID");
            if (searchParameters.ProviderStatus != null)
            {
                f.Values = searchParameters.ProviderStatus;
                lastfilters.Add(f);
            }
            else if (f != null)
            {
                f.Clear();
            }

            f = FindFilter(filtersControls, typeof(QuoteStatus), "ID");
            if (searchParameters.QuoteStatus != null)
            {
                f.Values = searchParameters.QuoteStatus;
                lastfilters.Add(f);
            }
            else if (f != null)
            {
                f.Clear();
            }

            f = FindFilter(filtersControls, typeof(Guid), "UserId");
            if (searchParameters.MembershipHelperUser != null)
            {
                f.Values = searchParameters.MembershipHelperUser;
                lastfilters.Add(f);
            }
            else if (f != null)
            {
                f.Clear();
            }

            f = FindFilter(filtersControls, typeof(ImportStatus), "ID");
            if (searchParameters.ImportStatus != null)
            {
                f.Values = searchParameters.ImportStatus;
                lastfilters.Add(f);
            }
            else if (f != null)
            {
                f.Clear();
            }

            f = FindFilter(filtersControls, typeof(CatalogPage), "Parent");
            if (searchParameters.CatalogPage != 0)
            {
                f.Values = searchParameters.CatalogPage;
                lastfilters.Add(f);
            }
            else if (f != null)
            {
                f.Clear();
            }

            f = FindFilter(filtersControls, typeof(CategoryPageStatus), "ID");
            if (searchParameters.CategoryPageStatus != null)
            {
                f.Values = searchParameters.CategoryPageStatus;
                lastfilters.Add(f);
            }
            else if (f != null)
            {
                f.Clear();
            }

            return(lastfilters);
        }