This commit is contained in:
2020-02-27 18:57:42 +00:00
parent 937f984788
commit 30e0ef3949

View File

@@ -38,9 +38,10 @@ namespace AyaNova.DataList
var fld = cm["fld"].Value<string>(); var fld = cm["fld"].Value<string>();
var dataType = objectFieldsList.Find(x => x.FieldKey.ToLowerInvariant() == fld).UiFieldDataType; var dataType = objectFieldsList.Find(x => x.FieldKey.ToLowerInvariant() == fld).UiFieldDataType;
AyaDataListFieldDefinition DataListField = objectFieldsList.FirstOrDefault(x => x.FieldKey == fld); AyaDataListFieldDefinition DataListField = objectFieldsList.FirstOrDefault(x => x.FieldKey == fld);
//No filtering on custom fields! //No filtering on custom fields!
if(DataListField.IsCustomField){ if (DataListField.IsCustomField)
{
continue; continue;
} }
#if (DEBUG) #if (DEBUG)
@@ -125,7 +126,7 @@ namespace AyaNova.DataList
ThisIsTheFirstFilterItemForThisColumn = false; ThisIsTheFirstFilterItemForThisColumn = false;
} }
if (ThereAreMultipleFilterItems) if (ThereAreMultipleFilterItems)
{ {
//The whole thing was in a group so close this group //The whole thing was in a group so close this group
@@ -146,7 +147,7 @@ namespace AyaNova.DataList
sb.Append("("); sb.Append("(");
sb.Append(ColumnWhereClauses[i]); sb.Append(ColumnWhereClauses[i]);
sb.Append(")"); sb.Append(")");
if (i < ColumnWhereClauses.Count-1) if (i < ColumnWhereClauses.Count - 1)
{ {
sb.Append(" AND "); sb.Append(" AND ");
} }
@@ -523,6 +524,9 @@ namespace AyaNova.DataList
case UiFieldDataType.Tags: case UiFieldDataType.Tags:
{ {
//Build tags filter fragment //Build tags filter fragment
//NOTE: tag filter OPERATOR is ignored, query matches if all tags are found in a tag collection that could have other tags as well
//for initial release a tag filter is inclusive of all tags only //for initial release a tag filter is inclusive of all tags only
//in other words all tags presented must be in record to match (simple AND) //in other words all tags presented must be in record to match (simple AND)
//select * from awidget where awidget.tags @> array['blah','blah3'::varchar(255)] //select * from awidget where awidget.tags @> array['blah','blah3'::varchar(255)]