| 123456789101112131415161718192021222324252627282930313233343536373839 |
- using IwbZero.IocNamed;
- using IwbZero.IwbBase;
- using IwbZero.ToolCommon.LogHelpers;
- using WeEngine.ComponentInfo;
- using WeEngine.Components.InterfaceFactory;
- namespace WeEngine.Components.Statements
- {
- /// <summary>
- /// 条件分支
- /// </summary>
- [IocNamed(CompStmtType.ConditionalBranching)]
- public class ConditionalBranchesStatement : IStatementRunner
- {
- public bool Run(ComponentRunner runner, IwbXmlNode poStatement)
- {
- var flag = false;
- string childValue = poStatement.GetChildValue("Condition");
- this.LogDebug($"============[开始执行事务]====>[条件分支]======>{runner.CurrentNode.NodePath}");
- var childNode = poStatement.GetChildNode("Yes");
- var node2 = poStatement.GetChildNode("No");
- if (childValue == "")
- {
- flag= true;
- }else if (runner.EvaluateBool(childValue))
- {
- flag= runner.RunStatements(childNode.Nodes);
- }
- else
- {
- flag = runner.RunStatements(node2.Nodes);
- }
- this.LogDebug($"============[执行事务完成]====>[条件分支]======>{flag}");
- return flag;
- }
- }
- }
|