Добавлена минификация html
This commit is contained in:
@@ -0,0 +1,34 @@
|
||||
namespace SQLLinter.Infrastructure.Diagram;
|
||||
|
||||
/// <summary>
|
||||
/// Расширения для диаграммы BPMN
|
||||
/// </summary>
|
||||
public static class BpmnDiagramExtensions
|
||||
{
|
||||
/// <summary>
|
||||
/// Добавления отсутсвующих связей между процессами и их подпроцессами
|
||||
/// </summary>
|
||||
/// <param name="diagram"></param>
|
||||
public static void AddMissingProcessEdges(this BpmnDiagram diagram)
|
||||
{
|
||||
foreach (var subprocess in diagram.Processes
|
||||
.SelectMany(p => p.Nodes.Select(n => new { node = n, procId = p.Id }))
|
||||
.Where(n => n.node.Type == BpmnNodeType.Subprocess && !string.IsNullOrEmpty(n.node.SubprocessId) && n.node.SubprocessId != n.procId)
|
||||
.Select(n => n.node)
|
||||
)
|
||||
{
|
||||
if (diagram.Processes.Any(p => p.Id == subprocess.SubprocessId)
|
||||
&& !diagram.GlobalEdges.Any(t => t.From == subprocess.Id && t.To == subprocess.SubprocessId)
|
||||
)
|
||||
{
|
||||
// Добавить пунктирный край от узла подпроцесса к началу подпроцесса
|
||||
diagram.GlobalEdges.Add(new BpmnEdge
|
||||
{
|
||||
From = subprocess.Id,
|
||||
To = subprocess.SubprocessId + "_start",
|
||||
ArrowType = BpmnArrowType.Dashed,
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user