public static IFilter <string> CreateFilter(this string pattern, StringFilterType filterType) { switch (filterType) { case StringFilterType.Regex: return(new RegexFilter(pattern)); case StringFilterType.Wildcard: return(new WildcardFilter(pattern)); case StringFilterType.CharSequence: return(new CharSequenceFilter(pattern)); default: throw new InvalidCastException($"The filter type '{filterType}' is not mapped yet."); } }
public void applyFilterToObject(IList <TTTemplatePrintExcel> filters, Core.Domain.Search.TTSearchAdvancedDataDetails tTSearchAdvancedDataDetails, int indexFilter) { switch (tTSearchAdvancedDataDetails.ControlScreenSearchAdvanced) { case TypeControlSearchAdvanced.Text: { #region Variable Filter del Bussiness Object para Textos StringFilterType filter = new StringFilterType(); filter.Order = (FiltersPropertiesModeOrderFields)tTSearchAdvancedDataDetails.Order; if (tTSearchAdvancedDataDetails.ConditionText != TypesTextFilter.None) { if (tTSearchAdvancedDataDetails.From != "" && tTSearchAdvancedDataDetails.ConditionText != TypesTextFilter.None) { switch (tTSearchAdvancedDataDetails.ConditionText) { case TypesTextFilter.Igual: { filter.FilterType = TypesTextFilter.Igual; break; } case TypesTextFilter.Contenga: { filter.FilterType = TypesTextFilter.Contenga; break; } case TypesTextFilter.Empieze: { filter.FilterType = TypesTextFilter.Empieze; break; } case TypesTextFilter.Termine: { filter.FilterType = TypesTextFilter.Termine; break; } } filter.Text = tTSearchAdvancedDataDetails.From; } } AddFilterXDT(filters, tTSearchAdvancedDataDetails.DTID.ToString(), filter, indexFilter); #endregion break; } case TypeControlSearchAdvanced.Numeric: { #region Variable Filter del Bussiness Object para Numericos NumericFilterType filter = new NumericFilterType(); filter.Order = (FiltersPropertiesModeOrderFields)tTSearchAdvancedDataDetails.Order; if ((tTSearchAdvancedDataDetails.ConditionText == TypesTextFilter.None) && (tTSearchAdvancedDataDetails.From != "" || tTSearchAdvancedDataDetails.To != "")) { if (tTSearchAdvancedDataDetails.From != "") { filter.From = Convert.ToInt16(tTSearchAdvancedDataDetails.From); } if (tTSearchAdvancedDataDetails.To != "") { filter.To = Convert.ToInt16(tTSearchAdvancedDataDetails.To); } } AddFilterXDT(filters, tTSearchAdvancedDataDetails.DTID.ToString(), filter, indexFilter); #endregion break; } case TypeControlSearchAdvanced.Logic: { #region Variable Filter del Bussiness Object para Logicos LogicFilterType filter = new LogicFilterType(); filter.Order = (FiltersPropertiesModeOrderFields)tTSearchAdvancedDataDetails.Order; if (tTSearchAdvancedDataDetails.Yes_Not != null) { filter.Active = tTSearchAdvancedDataDetails.Yes_Not; } AddFilterXDT(filters, tTSearchAdvancedDataDetails.DTID.ToString(), filter, indexFilter); #endregion break; } case TypeControlSearchAdvanced.Money: { #region Variable Filter del Bussiness Object para Decimal FilDecimalFilterType filter = new FilDecimalFilterType(); filter.Order = (FiltersPropertiesModeOrderFields)tTSearchAdvancedDataDetails.Order; if (tTSearchAdvancedDataDetails.From != "" || tTSearchAdvancedDataDetails.To != "") { if (tTSearchAdvancedDataDetails.From != "") { filter.From = Convert.ToDecimal(tTSearchAdvancedDataDetails.From); } if (tTSearchAdvancedDataDetails.To != "") { filter.To = Convert.ToDecimal(tTSearchAdvancedDataDetails.To); } } AddFilterXDT(filters, tTSearchAdvancedDataDetails.DTID.ToString(), filter, indexFilter); #endregion break; } case TypeControlSearchAdvanced.Hour: { break; } case TypeControlSearchAdvanced.Dependiente: { #region Variable Filter del Bussiness Object para Dependientes DependentFilterType filter = new DependentFilterType(); filter.Order = (FiltersPropertiesModeOrderFields)tTSearchAdvancedDataDetails.Order; filter.DependentList = tTSearchAdvancedDataDetails.ListaDependientes.ToArray(); AddFilterXDT(filters, tTSearchAdvancedDataDetails.DTID.ToString(), filter, indexFilter); #endregion break; } case TypeControlSearchAdvanced.Decimal: { #region Variable Filter del Bussiness Object para Decimal FilDecimalFilterType filter = new FilDecimalFilterType(); filter.Order = (FiltersPropertiesModeOrderFields)tTSearchAdvancedDataDetails.Order; if (tTSearchAdvancedDataDetails.From != "" || tTSearchAdvancedDataDetails.To != "") { if (tTSearchAdvancedDataDetails.From != "") { filter.From = Convert.ToDecimal(tTSearchAdvancedDataDetails.From); } if (tTSearchAdvancedDataDetails.To != "") { filter.To = Convert.ToDecimal(tTSearchAdvancedDataDetails.To); } } AddFilterXDT(filters, tTSearchAdvancedDataDetails.DTID.ToString(), filter, indexFilter); #endregion break; } case TypeControlSearchAdvanced.Date: { #region Variable Filter del Bussiness Object para Dates FillDateFilterType filter = new FillDateFilterType(); filter.Order = (FiltersPropertiesModeOrderFields)tTSearchAdvancedDataDetails.Order; if (tTSearchAdvancedDataDetails.FromDate != null || tTSearchAdvancedDataDetails.ToDate != null) { if (tTSearchAdvancedDataDetails.FromDate != null) { filter.From = tTSearchAdvancedDataDetails.FromDate; } if (tTSearchAdvancedDataDetails.ToDate != null) { filter.To = (tTSearchAdvancedDataDetails.ToDate); } } AddFilterXDT(filters, tTSearchAdvancedDataDetails.DTID.ToString(), filter, indexFilter); #endregion break; } case TypeControlSearchAdvanced.Color: { break; } } }
public static CompoundFilterBuilder <TFilterable> And <TFilterable>(this SimpleFilterBuilder <TFilterable> simpleFilterBuilder, string propertyName, StringFilterType filterType, string filterValue) where TFilterable : class, IFilterable { return(simpleFilterBuilder.And(new StringCriterion <TFilterable>(propertyName, filterType, filterValue))); }
public static SimpleFilterBuilder <TFilterable> Where <TFilterable>(this FilterBuilder <TFilterable> filterBuilderBase, string propertyName, StringFilterType filterType, string filterValue) where TFilterable : class, IFilterable { return(filterBuilderBase.Where(new StringCriterion <TFilterable>(propertyName, filterType, filterValue))); }
private bool TryConvertMethodCallToStringFilterType(string methodName, out StringFilterType stringFilterType) { switch (methodName) { case "StartsWith": stringFilterType = StringFilterType.StartsWith; return true; case "Contains": stringFilterType = StringFilterType.Contains; return true; default: stringFilterType = StringFilterType.Equals; return false; } }
private bool TryConvertExpressionTypeToStringFilterType(ExpressionType whereType, out StringFilterType stringFilterType) { switch (whereType) { case ExpressionType.Equal: stringFilterType = StringFilterType.Equals; return true; case ExpressionType.NotEqual: stringFilterType = StringFilterType.NotEquals; return true; default: stringFilterType = StringFilterType.Equals; return false; } }
public StringCriterion(Expression <Func <TFilterable, string> > propertyNameExpression, StringFilterType filterType, string filterValue) : base(propertyNameExpression, filterType, filterValue) { }
public StringCriterion(string propertyName, StringFilterType filterType, string filterValue) : base(propertyName, filterType, filterValue) { }
public static CompoundFilterBuilder <TFilterable> Or <TFilterable>(this SimpleFilterBuilder <TFilterable> simpleFilterBuilder, Expression <Func <TFilterable, string> > propertyNameExpression, StringFilterType filterType, string filterValue) where TFilterable : class, IFilterable { return(simpleFilterBuilder.Or(new StringCriterion <TFilterable>(propertyNameExpression, filterType, filterValue))); }