also show related tasks for Instance ; i.e., all instances regardless of parent class
This commit is contained in:
parent
d4b41e14ff
commit
f30c87dc8f
@ -46,19 +46,14 @@ public class InstancePreviewCommand : InstanceCommand
|
|||||||
Dictionary<string, List<RelatedTask>> relatedTasks = new Dictionary<string, List<RelatedTask>>();
|
Dictionary<string, List<RelatedTask>> relatedTasks = new Dictionary<string, List<RelatedTask>>();
|
||||||
|
|
||||||
InstanceHandle parentClass = oms.GetParentClass(ProcessingInstance);
|
InstanceHandle parentClass = oms.GetParentClass(ProcessingInstance);
|
||||||
|
|
||||||
|
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));
|
IEnumerable<InstanceHandle> relatedTasksIH = oms.GetRelatedInstances(parentClass, oms.GetInstance(KnownRelationshipGuids.Class__has_related__Task));
|
||||||
foreach (InstanceHandle ih in relatedTasksIH)
|
AddRelatedTasks(oms, relatedTasks, relatedTasksINSTANCE);
|
||||||
{
|
AddRelatedTasks(oms, relatedTasks, 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) });
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
||||||
relatedTasks["Preferences"] = new List<RelatedTask>();
|
relatedTasks["Preferences"] = new List<RelatedTask>();
|
||||||
@ -131,5 +126,18 @@ public class InstancePreviewCommand : InstanceCommand
|
|||||||
sw.Write(obj.ToJsonString());
|
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