This commit is contained in:
2022-02-27 18:40:52 +00:00
parent 4556c21b6e
commit 98f8d26eb8
2 changed files with 10 additions and 6 deletions

View File

@@ -957,7 +957,7 @@ namespace AyaNova.DataList
/// <summary> /// <summary>
/// Translate TAG DataFilter to PostgreSQL friendly SQL criteria /// Translate TAG DataFilter to PostgreSQL friendly SQL criteria
/// </summary> /// </summary>
private static string TagDataFilterToColumnCriteria(string SqlColumnNameToFilter, string sOperator, string sValue) public static string TagDataFilterToColumnCriteria(string SqlColumnNameToFilter, string sOperator, string sValue)
{ {
/* /*

View File

@@ -42,11 +42,15 @@ namespace AyaNova.KPI
var dateWhere = DataListSqlFilterCriteriaBuilder.DataFilterToColumnCriteria("aworkorderitemlabor.servicestopdate", UiFieldDataType.DateTime, "no-operator", timeSpan, options.ClientTimeStamp); var dateWhere = DataListSqlFilterCriteriaBuilder.DataFilterToColumnCriteria("aworkorderitemlabor.servicestopdate", UiFieldDataType.DateTime, "no-operator", timeSpan, options.ClientTimeStamp);
//optional tags //optional tags
string tagsWhere = string.Empty; string woTagsWhere = null;
if (wotags.Count > 0) if (wotags.Count > 0)
{ woTagsWhere = " AND " + DataListSqlFilterCriteriaBuilder.TagDataFilterToColumnCriteria("aworkorder.tags", DataListFilterComparisonOperator.Contains, string.Join(",", wotags));
var q = DataListSqlFilterCriteriaBuilder.DataFilterToColumnCriteria("aworkorder.tags", UiFieldDataType.Tags, DataListFilterComparisonOperator.Contains, string.Join(",", wotags), options.ClientTimeStamp);
}
string woItemTagsWhere = null;
if (woitemtags.Count > 0)
woItemTagsWhere = " AND " + DataListSqlFilterCriteriaBuilder.TagDataFilterToColumnCriteria("aworkorderitem.tags", DataListFilterComparisonOperator.Contains, string.Join(",", woitemtags));
_dataQuery = @$"SELECT row_to_json(t) as res from ( _dataQuery = @$"SELECT row_to_json(t) as res from (
@@ -54,7 +58,7 @@ namespace AyaNova.KPI
FROM AWORKORDER FROM AWORKORDER
LEFT JOIN AWORKORDERITEM ON AWORKORDER.ID = AWORKORDERITEM.WORKORDERID LEFT JOIN AWORKORDERITEM ON AWORKORDER.ID = AWORKORDERITEM.WORKORDERID
LEFT JOIN AWORKORDERITEMLABOR ON AWORKORDERITEM.ID = AWORKORDERITEMLABOR.WORKORDERITEMID LEFT JOIN AWORKORDERITEMLABOR ON AWORKORDERITEM.ID = AWORKORDERITEMLABOR.WORKORDERITEMID
WHERE AWORKORDERITEMLABOR.userid = {userId} AND {dateWhere} WHERE AWORKORDERITEMLABOR.userid = {userId} AND {dateWhere} {woTagsWhere} {woItemTagsWhere}
GROUP BY x GROUP BY x
ORDER BY x ASC ORDER BY x ASC
) t"; ) t";