also show related tasks for Instance ; i.e., all instances regardless of parent class
This commit is contained in:
parent
d4b41e14ff
commit
f30c87dc8f
@ -46,18 +46,13 @@ public class InstancePreviewCommand : InstanceCommand
|
||||
Dictionary<string, List<RelatedTask>> relatedTasks = new Dictionary<string, List<RelatedTask>>();
|
||||
|
||||
InstanceHandle parentClass = oms.GetParentClass(ProcessingInstance);
|
||||
IEnumerable<InstanceHandle> relatedTasksIH = oms.GetRelatedInstances(parentClass, oms.GetInstance(KnownRelationshipGuids.Class__has_related__Task));
|
||||
foreach (InstanceHandle ih in relatedTasksIH)
|
||||
{
|
||||
InstanceHandle taskCategory = oms.GetRelatedInstance(ih, oms.GetInstance(KnownRelationshipGuids.Task__has__Task_Category));
|
||||
string categoryTitle = oms.GetInstanceText(taskCategory);
|
||||
if (!relatedTasks.ContainsKey(categoryTitle))
|
||||
{
|
||||
relatedTasks[categoryTitle] = new List<RelatedTask>();
|
||||
}
|
||||
|
||||
relatedTasks[categoryTitle].Add(new RelatedTask() { InstanceKey = oms.GetInstanceKey(ih), Label = oms.GetInstanceText(ih) });
|
||||
}
|
||||
InstanceHandle c_Instance = oms.GetInstance(KnownInstanceGuids.Classes.Instance);
|
||||
IEnumerable<InstanceHandle> relatedTasksINSTANCE = oms.GetRelatedInstances(c_Instance, oms.GetInstance(KnownRelationshipGuids.Class__has_related__Task));
|
||||
|
||||
IEnumerable<InstanceHandle> relatedTasksIH = oms.GetRelatedInstances(parentClass, oms.GetInstance(KnownRelationshipGuids.Class__has_related__Task));
|
||||
AddRelatedTasks(oms, relatedTasks, relatedTasksINSTANCE);
|
||||
AddRelatedTasks(oms, relatedTasks, relatedTasksIH);
|
||||
|
||||
/*
|
||||
|
||||
@ -131,5 +126,18 @@ public class InstancePreviewCommand : InstanceCommand
|
||||
sw.Write(obj.ToJsonString());
|
||||
}
|
||||
|
||||
private void AddRelatedTasks(Oms oms, Dictionary<string, List<RelatedTask>> relatedTasks, IEnumerable<InstanceHandle> relatedTasksIH)
|
||||
{
|
||||
foreach (InstanceHandle ih in relatedTasksIH)
|
||||
{
|
||||
InstanceHandle taskCategory = oms.GetRelatedInstance(ih, oms.GetInstance(KnownRelationshipGuids.Task__has__Task_Category));
|
||||
string categoryTitle = oms.GetInstanceText(taskCategory);
|
||||
if (!relatedTasks.ContainsKey(categoryTitle))
|
||||
{
|
||||
relatedTasks[categoryTitle] = new List<RelatedTask>();
|
||||
}
|
||||
|
||||
relatedTasks[categoryTitle].Add(new RelatedTask() { InstanceKey = oms.GetInstanceKey(ih), Label = oms.GetInstanceText(ih) });
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user