This commit is contained in:
@@ -28,39 +28,25 @@ AuthorizationRoles.TechRestricted;
|
||||
public string ErrorMessage => _errorMessage;
|
||||
|
||||
public void BuildQuery(KPIRequestOptions options, long userId)
|
||||
{
|
||||
//build data and meta queries
|
||||
|
||||
//validate criteria exists
|
||||
{
|
||||
if (!options.Criteria.ContainsKey("wostatus"))
|
||||
{
|
||||
_errorMessage = "Missing 'wostatus' criteria";
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
var wostatus = (int?)options.Criteria["wostatus"];
|
||||
|
||||
var wotags = options.Criteria["wotags"].ToObject<List<string>>();
|
||||
var woitemtags = options.Criteria["woitemtags"].ToObject<List<string>>();
|
||||
|
||||
// var dateWhere = DataListSqlFilterCriteriaBuilder.DataFilterToColumnCriteria("aworkorderitemlabor.servicestopdate", UiFieldDataType.DateTime, "no-operator", timeSpan, options.ClientTimeStamp);
|
||||
|
||||
var wostatus = (int?)options.Criteria["wostatus"];
|
||||
string statusWhere = string.Empty;
|
||||
if (wostatus != null)
|
||||
{
|
||||
statusWhere = $"AND LASTSTATUSID = {wostatus}";
|
||||
}
|
||||
|
||||
//optional tags
|
||||
string woTagsWhere = null;
|
||||
if (wotags.Count > 0)
|
||||
woTagsWhere = " AND " + DataListSqlFilterCriteriaBuilder.TagDataFilterToColumnCriteria("aworkorder.tags", DataListFilterComparisonOperator.Contains, string.Join(",", wotags));
|
||||
|
||||
|
||||
string woItemTagsWhere = null;
|
||||
if (woitemtags.Count > 0)
|
||||
woItemTagsWhere = " AND " + DataListSqlFilterCriteriaBuilder.TagDataFilterToColumnCriteria("aworkorderitem.tags", DataListFilterComparisonOperator.Contains, string.Join(",", woitemtags));
|
||||
var wotags = options.Criteria["wotags"].ToObject<List<string>>();
|
||||
bool wotagsany = options.Criteria["wotagsany"].ToObject<bool>();
|
||||
var woitemtags = options.Criteria["woitemtags"].ToObject<List<string>>();
|
||||
bool woitemtagsany = options.Criteria["woitemtagsany"].ToObject<bool>();
|
||||
string woTagsWhere = DataListSqlFilterCriteriaBuilder.KPITagFilterToSqlCriteria("aworkorder.tags", wotags, wotagsany);
|
||||
string woItemTagsWhere = DataListSqlFilterCriteriaBuilder.KPITagFilterToSqlCriteria("aworkorderitem.tags", woitemtags, woitemtagsany); ;
|
||||
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user