void AddNewCustomFilter(FilterItem filterItem) { try { if (string.IsNullOrEmpty(filterItem.Name)) { int prevIndex = CustomFilters.Select(fi => Regex.Match(fi.Name, NewFilterName + @" (?<index>\d+)")).Where(m => m.Success).Select(m => int.Parse(m.Groups["index"].Value)).DefaultIfEmpty(0).Max(); filterItem.Name = NewFilterName + " " + (prevIndex + 1); } else { var existing = CustomFilters.FirstOrDefault(fi => fi.Name == filterItem.Name); if (existing != null) { CustomFilters.Remove(existing); } } CustomFilters.Add(filterItem); SaveCustomFilters(); } catch (Exception ex) { throw new Exception(ex.Message); } }
public void DuplicateFilter(FilterItem filterItem) { var newItem = filterItem.Clone("Copy of " + filterItem.Name, null); CustomFilters.Add(newItem); SaveCustomFilters(); }
public virtual void DuplicateFilter(FilterItemBase filterItem) { var newItem = CreateFilterItem("Copy of " + filterItem.Name, filterItem.FilterCriteria, null); CustomFilters.Add(newItem); SaveCustomFilters(); }
protected override void OnParametersSet() { _filterComponents = new QueryDictionary <Type>(); _filterComponents.Add("System.String", typeof(TextFilterComponent <T>)); _filterComponents.Add("System.Int32", typeof(NumberFilterComponent <T>)); _filterComponents.Add("System.Double", typeof(NumberFilterComponent <T>)); _filterComponents.Add("System.Decimal", typeof(NumberFilterComponent <T>)); _filterComponents.Add("System.Byte", typeof(NumberFilterComponent <T>)); _filterComponents.Add("System.Single", typeof(NumberFilterComponent <T>)); _filterComponents.Add("System.Float", typeof(NumberFilterComponent <T>)); _filterComponents.Add("System.Int64", typeof(NumberFilterComponent <T>)); _filterComponents.Add("System.Int16", typeof(NumberFilterComponent <T>)); _filterComponents.Add("System.UInt64", typeof(NumberFilterComponent <T>)); _filterComponents.Add("System.UInt32", typeof(NumberFilterComponent <T>)); _filterComponents.Add("System.UInt16", typeof(NumberFilterComponent <T>)); _filterComponents.Add("System.DateTime", typeof(DateTimeFilterComponent <T>)); _filterComponents.Add("System.Date", typeof(DateTimeFilterComponent <T>)); _filterComponents.Add("System.DateTimeOffset", typeof(DateTimeFilterComponent <T>)); _filterComponents.Add("System.Boolean", typeof(BooleanFilterComponent <T>)); if (CustomFilters == null) { CustomFilters = new QueryDictionary <Type>(); } if (CustomFilters.Any(r => r.Key.Equals(SelectItem.ListFilter))) { CustomFilters.Remove(SelectItem.ListFilter); } CustomFilters.Add(SelectItem.ListFilter, typeof(ListFilterComponent <T>)); foreach (var widget in CustomFilters) { if (_filterComponents.ContainsKey(widget.Key)) { _filterComponents[widget.Key] = widget.Value; } else { _filterComponents.Add(widget); } } FirstColumn = (ICGridColumn)Grid.Columns.FirstOrDefault(); _hasSubGrid = Grid.SubGridKeys != null && Grid.SubGridKeys.Length > 0; _hasTotals = Grid.IsSumEnabled || Grid.IsAverageEnabled || Grid.IsMaxEnabled || Grid.IsMinEnabled; _requiredTotalsColumn = _hasTotals && FirstColumn != null && (FirstColumn.IsSumEnabled || FirstColumn.IsAverageEnabled || FirstColumn.IsMaxEnabled || FirstColumn.IsMinEnabled); InitSubGridVars(); var queryBuilder = new CustomQueryStringBuilder(Grid.Settings.SearchSettings.Query); var exceptQueryParameters = new List <string> { GridPager.DefaultPageSizeQueryParameter }; _changePageSizeUrl = queryBuilder.GetQueryStringExcept(exceptQueryParameters); _pageSize = Grid.Pager.ChangePageSize && Grid.Pager.QueryPageSize > 0 ? Grid.Pager.QueryPageSize : Grid.Pager.PageSize; }
public IQueryable <TemplateAsset> GetResultWithoutFilter <T>(IFilter <T> filter) { var result = Base; foreach (var f in StandardFilters.Values.Concat(CustomFilters.Where(cf => cf.SelectedFilter != null).Select(cf => cf.SelectedFilter)).Except(new[] { filter })) { result = f.FilterFunc(result); } return(result); }
public void ResetCustomFilters() { if (CustomFilters.Contains(SelectedItem)) { SelectedItem = null; } settings.CustomFilters = new FilterInfoList(); CustomFilters.Clear(); settings.SaveSettings(); }
/// <summary> /// Remove the specified filter /// </summary> /// <param name="deleteMe"></param> public void DeleteFilter(IFilterIdentifier deleteMe) { if (deleteMe is CustomFilter) { CustomFilters.Remove(deleteMe.Name); } else if (deleteMe is WindowedSyncFilter) { WindowedSyncFilters.Remove(deleteMe.Name); } }
public override void OnFiltersChanged(Lazaro.Pres.Filters.FilterCollection filters) { this.CustomFilters.Clear(); if (((Lazaro.Pres.Filters.SetFilter)(filters["articulos_categorias.cache_stock_actual"])).CurrentValue == "f") { CustomFilters.AddWithValue("articulos_categorias.stock_minimo>0 AND articulos_categorias.stock_minimo>(SELECT SUM(articulos.stock_actual) FROM articulos WHERE articulos_categorias.id_categoria=id_categoria)"); } base.OnFiltersChanged(filters); }
public override void OnFiltersChanged(Lazaro.Pres.Filters.FilterCollection filters) { this.CustomFilters.Clear(); if (((Lazaro.Pres.Filters.SetFilter)(filters["pvs.tipo"])).CurrentValue != "*") { CustomFilters.AddWithValue("pvs.tipo", Lfx.Types.Parsing.ParseInt(filters[0].Value.ToString())); } base.OnFiltersChanged(filters); }
protected void AddNewCustomFilter(FilterItemBase filterItem) { var existing = CustomFilters.FirstOrDefault(fi => fi.Name == filterItem.Name); if (existing != null) { CustomFilters.Remove(existing); } CustomFilters.Add(filterItem); SaveCustomFilters(); }
public void RaiseLanguageChanged() { IsRefreshingUi = true; foreach (var filter in StandardFilters.Values) { filter.ResetFilter(); } CustomFilters.Clear(); IsRefreshingUi = false; UpdateUI(); }
public void SetItems() { var result = Base; foreach (var filter in StandardFilters.Values.Concat(CustomFilters.Where(cf => cf.SelectedFilter != null).Select(cf => cf.SelectedFilter))) { result = filter.FilterFunc(result); } //result = result.OrderBy(s => s.Text); Items = result.ToList(); }
public void DeleteCustomFilter(FilterItem filterItem) { try { CustomFilters.Remove(filterItem); SaveCustomFilters(); } catch (Exception ex) { throw new Exception(ex.Message); } }
internal void FromCustomFilters(CustomFilters cfs) { SetAllNull(); if ((cfs.And != null) && cfs.And.Value) { And = cfs.And.Value; } var i = 0; CustomFilter cf; using (var oxr = OpenXmlReader.Create(cfs)) { while (oxr.Read()) { if (oxr.ElementType == typeof(CustomFilter)) { ++i; cf = (CustomFilter)oxr.LoadCurrentElement(); if (i == 1) { OneCustomFilter = true; if (cf.Operator != null) { FirstOperator = cf.Operator.Value; } if (cf.Val != null) { FirstVal = cf.Val.Value; } } else if (i == 2) { OneCustomFilter = false; if (cf.Operator != null) { SecondOperator = cf.Operator.Value; } if (cf.Val != null) { SecondVal = cf.Val.Value; } } else { break; } } } } }
public void ResetFilters() { IsRefreshingUi = true; foreach (var filter in StandardFilters.Values) { filter.ResetFilter(); } CustomFilters.Clear(); CustomFilters.Add(CreateFilterHolder()); OrderFilter.ResetFilter(); IsRefreshingUi = false; UpdateUI(); }
public void DuplicateFilter(FilterItem filterItem) { try { var newItem = filterItem.Clone("Copy of " + filterItem.Name, null); CustomFilters.Add(newItem); SaveCustomFilters(); } catch (Exception ex) { throw new Exception(ex.Message); } }
public void UpdateUI(IFilter filter = null) { if (!IsRefreshingUi) { IsRefreshingUi = true; SetItems(); PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(nameof(Items))); foreach (var item in StandardFilters.Values.Concat(CustomFilters.Select(cf => cf.SelectedFilter)).Except(new[] { filter })) { item.UpdateUI(); } OrderFilter.UpdateUI(); IsRefreshingUi = false; } }
public IEnumerable <TemplateAsset> GetResultWithoutFilter <T>(IFilter <T> filter) { IEnumerable <TemplateAsset> result = null; foreach (var f in StandardFilters.Values.Concat(CustomFilters.Where(cf => cf.SelectedFilter != null).Select(cf => cf.SelectedFilter)).Except(new[] { filter })) { if (f.SavedItems != null) { result = result == null ? f.SavedItems : result.Intersect(f.SavedItems); } } if (result == null) { result = Base; } return(result); }
public void ResetCustomFilters() { try { if (CustomFilters.Contains(SelectedItem)) { SelectedItem = null; } settings.CustomFilters = new FilterInfoList(); CustomFilters.Clear(); settings.SaveSettings(); } catch (Exception ex) { throw new Exception(ex.Message); } }
internal void FromFilterColumn(FilterColumn fc) { SetAllNull(); if (fc.Filters != null) { Filters.FromFilters(fc.Filters); HasFilters = true; } if (fc.Top10 != null) { Top10.FromTop10(fc.Top10); HasTop10 = true; } if (fc.CustomFilters != null) { CustomFilters.FromCustomFilters(fc.CustomFilters); HasCustomFilters = true; } if (fc.DynamicFilter != null) { DynamicFilter.FromDynamicFilter(fc.DynamicFilter); HasDynamicFilter = true; } if (fc.ColorFilter != null) { ColorFilter.FromColorFilter(fc.ColorFilter); HasColorFilter = true; } if (fc.IconFilter != null) { IconFilter.FromIconFilter(fc.IconFilter); HasIconFilter = true; } ColumnId = fc.ColumnId.Value; if ((fc.HiddenButton != null) && fc.HiddenButton.Value) { HiddenButton = fc.HiddenButton.Value; } if ((fc.ShowButton != null) && !fc.ShowButton.Value) { ShowButton = fc.ShowButton.Value; } }
internal CustomFilters ToCustomFilters() { var cfs = new CustomFilters(); if ((And != null) && And.Value) { cfs.And = And.Value; } CustomFilter cf; if (OneCustomFilter) { cf = new CustomFilter(); if (HasFirstOperator) { cf.Operator = FirstOperator; } cf.Val = FirstVal; cfs.Append(cf); } else { cf = new CustomFilter(); if (HasFirstOperator) { cf.Operator = FirstOperator; } cf.Val = FirstVal; cfs.Append(cf); cf = new CustomFilter(); if (HasSecondOperator) { cf.Operator = SecondOperator; } cf.Val = SecondVal; cfs.Append(cf); } return(cfs); }
internal CustomFilters ToCustomFilters() { CustomFilters cfs = new CustomFilters(); if (this.And != null && this.And.Value) { cfs.And = this.And.Value; } CustomFilter cf; if (this.OneCustomFilter) { cf = new CustomFilter(); if (HasFirstOperator) { cf.Operator = this.FirstOperator; } cf.Val = this.FirstVal; cfs.Append(cf); } else { cf = new CustomFilter(); if (HasFirstOperator) { cf.Operator = this.FirstOperator; } cf.Val = this.FirstVal; cfs.Append(cf); cf = new CustomFilter(); if (HasSecondOperator) { cf.Operator = this.SecondOperator; } cf.Val = this.SecondVal; cfs.Append(cf); } return(cfs); }
internal FilterColumn ToFilterColumn() { var fc = new FilterColumn(); if (HasFilters) { fc.Filters = Filters.ToFilters(); } if (HasTop10) { fc.Top10 = Top10.ToTop10(); } if (HasCustomFilters) { fc.CustomFilters = CustomFilters.ToCustomFilters(); } if (HasDynamicFilter) { fc.DynamicFilter = DynamicFilter.ToDynamicFilter(); } if (HasColorFilter) { fc.ColorFilter = ColorFilter.ToColorFilter(); } if (HasIconFilter) { fc.IconFilter = IconFilter.ToIconFilter(); } fc.ColumnId = ColumnId; if ((HiddenButton != null) && HiddenButton.Value) { fc.HiddenButton = HiddenButton.Value; } if ((ShowButton != null) && !ShowButton.Value) { fc.ShowButton = ShowButton.Value; } return(fc); }
public void UpdateUI(IFilter filter = null) { if (!IsRefreshingUi) { SetItems(); this.PropertyChanged?.Invoke(this, new PropertyChangedEventArgs("Items")); if (filter == null) { foreach (var item in StandardFilters.Values.Concat(CustomFilters.Where(cf => cf.SelectedFilter != null).Select(cf => cf.SelectedFilter))) { item.UpdateUI(); } } else { foreach (var item in StandardFilters.Values.Concat(CustomFilters.Where(cf => cf.SelectedFilter != null).Select(cf => cf.SelectedFilter).Except(new[] { filter }))) { item.UpdateUI(); } } } }
internal SLFilterColumn Clone() { var fc = new SLFilterColumn(); fc.HasFilters = HasFilters; fc.Filters = Filters.Clone(); fc.HasTop10 = HasTop10; fc.Top10 = Top10.Clone(); fc.HasCustomFilters = HasCustomFilters; fc.CustomFilters = CustomFilters.Clone(); fc.HasDynamicFilter = HasDynamicFilter; fc.DynamicFilter = DynamicFilter.Clone(); fc.HasColorFilter = HasColorFilter; fc.ColorFilter = ColorFilter.Clone(); fc.HasIconFilter = HasIconFilter; fc.IconFilter = IconFilter.Clone(); fc.ColumnId = ColumnId; fc.HiddenButton = HiddenButton; fc.ShowButton = ShowButton; return(fc); }
internal void FromCustomFilters(CustomFilters cfs) { this.SetAllNull(); if (cfs.And != null && cfs.And.Value) this.And = cfs.And.Value; int i = 0; CustomFilter cf; using (OpenXmlReader oxr = OpenXmlReader.Create(cfs)) { while (oxr.Read()) { if (oxr.ElementType == typeof(CustomFilter)) { ++i; cf = (CustomFilter)oxr.LoadCurrentElement(); if (i == 1) { this.OneCustomFilter = true; if (cf.Operator != null) this.FirstOperator = cf.Operator.Value; if (cf.Val != null) this.FirstVal = cf.Val.Value; } else if (i == 2) { this.OneCustomFilter = false; if (cf.Operator != null) this.SecondOperator = cf.Operator.Value; if (cf.Val != null) this.SecondVal = cf.Val.Value; } else { break; } } } } }
private static void PopulateAutoFilter(XLAutoFilter xlAutoFilter, AutoFilter autoFilter) { var filterRange = xlAutoFilter.Range; autoFilter.Reference = filterRange.RangeAddress.ToString(); foreach (var kp in xlAutoFilter.Filters) { var filterColumn = new FilterColumn {ColumnId = (UInt32)kp.Key - 1}; var xlFilterColumn = xlAutoFilter.Column(kp.Key); var filterType = xlFilterColumn.FilterType; if (filterType == XLFilterType.Custom) { var customFilters = new CustomFilters(); foreach (var filter in kp.Value) { var customFilter = new CustomFilter {Val = filter.Value.ToString()}; if (filter.Operator != XLFilterOperator.Equal) customFilter.Operator = filter.Operator.ToOpenXml(); if (filter.Connector == XLConnector.And) customFilters.And = true; customFilters.Append(customFilter); } filterColumn.Append(customFilters); } else if (filterType == XLFilterType.TopBottom) { var top101 = new Top10 {Val = (double)xlFilterColumn.TopBottomValue}; if (xlFilterColumn.TopBottomType == XLTopBottomType.Percent) top101.Percent = true; if (xlFilterColumn.TopBottomPart == XLTopBottomPart.Bottom) top101.Top = false; filterColumn.Append(top101); } else if (filterType == XLFilterType.Dynamic) { var dynamicFilter = new DynamicFilter {Type = xlFilterColumn.DynamicType.ToOpenXml(), Val = xlFilterColumn.DynamicValue}; filterColumn.Append(dynamicFilter); } else { var filters = new Filters(); foreach (var filter in kp.Value) { filters.Append(new Filter {Val = filter.Value.ToString()}); } filterColumn.Append(filters); } autoFilter.Append(filterColumn); } if (xlAutoFilter.Sorted) { var sortState = new SortState { Reference = filterRange.Range(filterRange.FirstCell().CellBelow(), filterRange.LastCell()).RangeAddress. ToString() }; var sortCondition = new SortCondition { Reference = filterRange.Range(1, xlAutoFilter.SortColumn, filterRange.RowCount(), xlAutoFilter.SortColumn).RangeAddress.ToString() }; if (xlAutoFilter.SortOrder == XLSortOrder.Descending) sortCondition.Descending = true; sortState.Append(sortCondition); autoFilter.Append(sortState); } }
public void DeleteCustomFilter(FilterItem filterItem) { CustomFilters.Remove(filterItem); SaveCustomFilters(); }
/// <summary> /// Remove a custom filter from the request /// </summary> /// <param name="name"></param> /// <returns></returns> public ListQueryRequest RemoveCustomFilter(String name) { CustomFilters.Remove(name); return(this); }
public DemoController() { ModuleId = 10; customfilters = CustomFilters.Select(x => x.FilterId).ToArray(); }
protected ItemsHolder(List <TemplateAsset> Base) { this.Base = Base; OrderFilter = new OrderFilter(this); CustomFilters.Add(CreateFilterHolder()); }
public virtual void DeleteCustomFilter(FilterItemBase filterItem) { CustomFilters.Remove(filterItem); SaveCustomFilters(); }
internal CustomFilters ToCustomFilters() { CustomFilters cfs = new CustomFilters(); if (this.And != null && this.And.Value) cfs.And = this.And.Value; CustomFilter cf; if (this.OneCustomFilter) { cf = new CustomFilter(); if (HasFirstOperator) cf.Operator = this.FirstOperator; cf.Val = this.FirstVal; cfs.Append(cf); } else { cf = new CustomFilter(); if (HasFirstOperator) cf.Operator = this.FirstOperator; cf.Val = this.FirstVal; cfs.Append(cf); cf = new CustomFilter(); if (HasSecondOperator) cf.Operator = this.SecondOperator; cf.Val = this.SecondVal; cfs.Append(cf); } return cfs; }