using System; using System.Collections.Generic; using System.Threading; using TeamAAS.FlowEditor.Execution; using TeamAAS.FlowEditor.Models; using TeamAAS.FlowEditor.Plugins; using Plugins.Standard.Models; namespace Plugins.Standard { /// /// 结束插件 - 用于流程中Break跳出或结束流程 /// [Plugin("结束", PluginCategory.逻辑判断, typeof(EndPluginModel), "StopCircleOutline",NodeShape = NodeCategory.End, Description="结束节点,用于流程中Break跳出或结束流程")] [Serializable] public class EndPlugin : BasePlugin { public override List DeclareOutputs() => new List { new OutputField("结束类型", typeof(string)), new OutputField("操作", typeof(string)) }; public override NodeRunStatus PluginRun(CancellationToken token, out Dictionary results) { results = new Dictionary(); string op = Model.EndType == EndActionType.Break ? "跳出当前循环" : "结束整个流程"; results["结束类型"] = Model.EndType.ToString(); results["操作"] = op; Log(2, $"结束节点触发: {op}"); return NodeRunStatus.Success; } } }