diff --git a/server/AyaNova/kpi/WorkOrderItemLaborQuantitySummary.cs b/server/AyaNova/kpi/WorkOrderItemLaborQuantitySummary.cs index 17a3065f..bf5f06da 100644 --- a/server/AyaNova/kpi/WorkOrderItemLaborQuantitySummary.cs +++ b/server/AyaNova/kpi/WorkOrderItemLaborQuantitySummary.cs @@ -1,6 +1,7 @@ using AyaNova.Biz; using Newtonsoft.Json.Linq; using AyaNova.DataList; +using System.Collections.Generic; namespace AyaNova.KPI { @@ -35,9 +36,18 @@ namespace AyaNova.KPI var timeSpan = (string)options.Criteria["timeSpan"]; var interval = (string)options.Criteria["interval"]; + var wotags = options.Criteria["wotags"].ToObject>(); + var woitemtags = options.Criteria["woitemtags"].ToObject>(); var dateWhere = DataListSqlFilterCriteriaBuilder.DataFilterToColumnCriteria("aworkorderitemlabor.servicestopdate", UiFieldDataType.DateTime, "no-operator", timeSpan, options.ClientTimeStamp); + //optional tags + string tagsWhere = string.Empty; + if (wotags.Count > 0) + { + var q = DataListSqlFilterCriteriaBuilder.DataFilterToColumnCriteria("aworkorder.tags", UiFieldDataType.Tags, DataListFilterComparisonOperator.Contains, string.Join(",", wotags), options.ClientTimeStamp); + } + _dataQuery = @$"SELECT row_to_json(t) as res from ( select SUM(AWORKORDERITEMLABOR.serviceratequantity) y, date_trunc('{interval}',AWORKORDERITEMLABOR.servicestopdate) x