Beispiel #1
0
    protected void btnFilter_Click(object sender, EventArgs e)
    {
        var flogical = new LogicalFilter();

        //-----Selection filter
        if (ddSelect.SelectedIndex != 0)
        {
            if (ddSelect.SelectedIndex == 2)
            {
                if (_selectionFilter != null)
                {
                    _selectionFilter.IncludeValues = !_selectionFilter.IncludeValues;
                }
                else
                {
                    _selectionFilter = null;
                }
            }
            flogical.AddFilter(_selectionFilter);
        }

        //----OrderID filter
        if (!string.IsNullOrEmpty(txtOrderID.Text))
        {
            flogical.AddLogicalOperation("AND");
            flogical.AddFilter(new EqualFieldFilter {
                Value = txtOrderID.Text.TryParseInt().ToString(), ParamName = "@OrderId"
            });
        }


        _paging.Fields["ID"].Filter = flogical.FilterCount() > 0 ? flogical : null;

        //----Status filter
        var stFilter = new CompareFieldFilter();

        if (!string.IsNullOrEmpty(ddlStatusName.SelectedValue))
        {
            if (!OrderService.GetOrderStatuses(true).Any(item => item.Key.ToLower() == ddlStatusName.SelectedValue))
            {
                ddlStatusName.Items.Remove(ddlStatusName.SelectedValue);
                ddlStatusName.SelectedValue = string.Empty;
            }
            else
            if (ddlStatusName.SelectedIndex != 0)
            {
                stFilter.ParamName  = "@StatusName";
                stFilter.Expression = ddlStatusName.SelectedValue;
                _paging.Fields["StatusName"].Filter = stFilter;
            }
            else
            {
                _paging.Fields["StatusName"].Filter = null;
            }
        }
        else
        {
            _paging.Fields["StatusName"].Filter = null;
        }


        //----Sum filter
        var sumFilter = new RangeFieldFilter {
            ParamName = "@Sum"
        };

        try
        {
            int priceFrom = 0;
            sumFilter.From = int.TryParse(txtSumFrom.Text, out priceFrom) ? priceFrom : 0;
        }
        catch (Exception)
        {
        }

        try
        {
            int priceTo = 0;
            sumFilter.To = int.TryParse(txtSumTo.Text, out priceTo) ? priceTo : int.MaxValue;
        }
        catch (Exception)
        {
        }

        _paging.Fields["Sum"].Filter = sumFilter.From.HasValue || sumFilter.To.HasValue ? sumFilter : null;


        //---- Name filter
        _paging.Fields["BuyerName"].Filter = !string.IsNullOrEmpty(txtBuyerName.Text) ? new CompareFieldFilter {
            ParamName = "@BuyerName", Expression = txtBuyerName.Text
        } : null;

        //---- Billing Name filter
        _paging.Fields["BillingName"].Filter = !string.IsNullOrEmpty(txtBillingName.Text) ? new CompareFieldFilter {
            ParamName = "@BillingName", Expression = txtBillingName.Text
        } : null;

        _paging.Fields["PaymentMethod"].Filter = ddlPaymentMethod.SelectedValue != "any"
                                                     ? new EqualFieldFilter
        {
            ParamName = "@PaymentMethod",
            Value     = ddlPaymentMethod.SelectedValue
        }
                                                     : null;
        _paging.Fields["ShippingMethodName"].Filter = ddlShippingMethod.SelectedValue != "any"
                                                     ? new EqualFieldFilter
        {
            ParamName = "@ShippingMethodName",
            Value     = ddlShippingMethod.SelectedValue
        }
                                                     : null;

        _paging.Fields["PaymentDate"].Filter = ddlPayed.SelectedValue != "any"
                                                     ? ddlPayed.SelectedValue == "yes"
                                                        ? new NullFieldFilter {
            ParamName = "@PaymentDate", Null = false
        }
                                                        : new NullFieldFilter {
            ParamName = "@PaymentDate", Null = true
        }
                                                     : null;
        //---OrderDate filter
        var dfilter = new DateTimeRangeFieldFilter {
            ParamName = "@dateOrdSearch"
        };

        if (!string.IsNullOrEmpty(txtDateFrom.Text))
        {
            DateTime?d = null;
            try
            {
                d = DateTime.Parse(txtDateFrom.Text);
            }
            catch (Exception)
            {
            }
            if (d.HasValue)
            {
                var dt = new DateTime(d.Value.Year, d.Value.Month, d.Value.Day, 0, 0, 0, 0);
                dfilter.From = dt;
            }
        }

        if (!string.IsNullOrEmpty(txtDateTo.Text))
        {
            DateTime?d = null;
            try
            {
                d = DateTime.Parse(txtDateTo.Text);
            }
            catch (Exception)
            {
            }
            if (d.HasValue)
            {
                var dt = new DateTime(d.Value.Year, d.Value.Month, d.Value.Day, 23, 59, 59, 99);
                dfilter.To = dt;
            }
        }

        if (dfilter.From.HasValue || dfilter.To.HasValue)
        {
            _paging.Fields["OrderDate"].Filter = dfilter;
        }
        else
        {
            _paging.Fields["OrderDate"].Filter = null;
        }
        pageNumberer.CurrentPageIndex = 1;
        _paging.CurrentPageIndex      = 1;
    }
Beispiel #2
0
        protected void btnFilter_Click(object sender, EventArgs e)
        {
            //-----Selection filter
            if (ddSelect.SelectedIndex != 0)
            {
                if (ddSelect.SelectedIndex == 2)
                {
                    if (_selectionFilter != null)
                    {
                        _selectionFilter.IncludeValues = !_selectionFilter.IncludeValues;
                    }
                    else
                    {
                        _selectionFilter = null;
                    }
                }
                if (_selectionFilter != null)
                {
                    _paging.Fields["ID"].Filter = _selectionFilter;
                }
            }
            else
            {
                _paging.Fields["ID"].Filter = null;
            }

            //----Enabled filter
            if (ddlEnabled.SelectedIndex != 0)
            {
                var efilter = new EqualFieldFilter {
                    ParamName = "@enabled"
                };
                if (ddlEnabled.SelectedIndex == 1)
                {
                    efilter.Value = "1";
                }
                if (ddlEnabled.SelectedIndex == 2)
                {
                    efilter.Value = "0";
                }
                _paging.Fields["Enabled"].Filter = efilter;
            }
            else
            {
                _paging.Fields["Enabled"].Filter = null;
            }

            //----Price filter

            var priceFilter = new RangeFieldFilter {
                ParamName = "@price"
            };

            int priceFrom;

            priceFilter.From = int.TryParse(txtPriceFrom.Text, out priceFrom) ? priceFrom : 0;

            int priceTo;

            priceFilter.To = int.TryParse(txtPriceTo.Text, out priceTo) ? priceTo : int.MaxValue;

            if (!string.IsNullOrEmpty(txtPriceFrom.Text) || !string.IsNullOrEmpty(txtPriceTo.Text))
            {
                _paging.Fields["Price"].Filter = priceFilter;
            }
            else
            {
                _paging.Fields["Price"].Filter = null;
            }

            //----Qty filter
            var qtyFilter = new RangeFieldFilter {
                ParamName = "@Amount"
            };
            int from;

            qtyFilter.From = int.TryParse(txtQtyFrom.Text, out from) ? from : int.MinValue;

            int to;

            qtyFilter.To = int.TryParse(txtQtyTo.Text, out to) ? to : int.MaxValue;


            if (!string.IsNullOrEmpty(txtQtyFrom.Text) || !string.IsNullOrEmpty(txtQtyTo.Text))
            {
                _paging.Fields["Amount"].Filter = qtyFilter;
            }
            else
            {
                _paging.Fields["Amount"].Filter = null;
            }

            //----SortOrder filter
            var soFilter = new RangeFieldFilter {
                ParamName = "@SortOrder"
            };

            try
            {
                soFilter.From = int.Parse(txtSortOrderFrom.Text);
            }
            catch (Exception)
            {
                soFilter.From = int.MinValue;
            }

            try
            {
                soFilter.To = int.Parse(txtSortOrderTo.Text);
            }
            catch (Exception)
            {
                soFilter.To = int.MaxValue;
            }

            if (ShowMethod == EShowMethod.Normal)
            {
                if (!string.IsNullOrEmpty(txtSortOrderFrom.Text) || !string.IsNullOrEmpty(txtSortOrderTo.Text))
                {
                    _paging.Fields["ProductCategories.SortOrder"].Filter = soFilter;
                }
                else
                {
                    _paging.Fields["ProductCategories.SortOrder"].Filter = null;
                }
            }

            if (!string.IsNullOrEmpty(txtArtNo.Text))
            {
                var sfilter = new CompareFieldFilter {
                    Expression = txtArtNo.Text, ParamName = "@artno"
                };
                _paging.Fields["ArtNo"].Filter = sfilter;
            }
            else
            {
                _paging.Fields["ArtNo"].Filter = null;
            }

            //----Name filter
            if (!string.IsNullOrEmpty(txtName.Text))
            {
                var nfilter = new CompareFieldFilter {
                    Expression = txtName.Text, ParamName = "@name"
                };
                _paging.Fields["Name"].Filter = nfilter;
            }
            else
            {
                _paging.Fields["Name"].Filter = null;
            }

            //---Photo filter
            if (ddPhoto.SelectedIndex != 0)
            {
                var phfilter = new NullFieldFilter();
                if (ddPhoto.SelectedIndex == 1)
                {
                    phfilter.Null = false;
                }
                if (ddPhoto.SelectedIndex == 2)
                {
                    phfilter.Null = true;
                }
                phfilter.ParamName = "@PhotoName";
                _paging.Fields["PhotoName"].Filter = phfilter;
            }
            else
            {
                _paging.Fields["PhotoName"].Filter = null;
            }

            pageNumberer.CurrentPageIndex = 1;
            _paging.CurrentPageIndex      = 1;
            //lblFound.Text = _paging.TotalRowsCount.ToString();
            //pnlFilterCount.Visible = true;
            //pnlNormalCount.Visible = false;
        }