diff --git a/e-suite.Workflow.Core/Interfaces/IFailedLoopback.cs b/e-suite.Workflow.Core/Interfaces/IFailedLoopback.cs
deleted file mode 100644
index dc38b50..0000000
--- a/e-suite.Workflow.Core/Interfaces/IFailedLoopback.cs
+++ /dev/null
@@ -1,14 +0,0 @@
-using e_suite.Workflow.Core.Attributes;
-using System.ComponentModel.DataAnnotations;
-
-namespace e_suite.Workflow.Core.Interfaces;
-
-[TaskCapability]
-public interface IFailedLoopback
-{
- ///
- /// ITask OnCompleteAsync returns false, the workflow processor will initiate a loopback to this item.
- ///
- [Required]
- public Task Loopback { get; set; }
-}
\ No newline at end of file
diff --git a/e-suite.Workflow.Core/Tasks/AdhocApprovalTask.cs b/e-suite.Workflow.Core/Tasks/AdhocApprovalTask.cs
index 36565cc..1f92099 100644
--- a/e-suite.Workflow.Core/Tasks/AdhocApprovalTask.cs
+++ b/e-suite.Workflow.Core/Tasks/AdhocApprovalTask.cs
@@ -1,12 +1,13 @@
using e_suite.Workflow.Core.Attributes;
+using e_suite.Workflow.Core.Enums;
using e_suite.Workflow.Core.Interfaces;
namespace e_suite.Workflow.Core.Tasks;
[GeneralTask]
-public class AdhocApprovalTask : TaskBase, IAssignees, IFailedLoopback
+public class AdhocApprovalTask : TaskBase, IAssignees, IOutcome
{
- public required Task Loopback { get; set; }
-
public IList Assignees { get; } = new List();
+ public ApprovalVerdict TaskOutcome { get; set; }
+ public Dictionary OutcomeActions { get; set; }
}
\ No newline at end of file
diff --git a/e-suite.Workflow.Core/Tasks/ApprovalTask.cs b/e-suite.Workflow.Core/Tasks/ApprovalTask.cs
index cfd8934..bce568c 100644
--- a/e-suite.Workflow.Core/Tasks/ApprovalTask.cs
+++ b/e-suite.Workflow.Core/Tasks/ApprovalTask.cs
@@ -1,19 +1,13 @@
using e_suite.Workflow.Core.Attributes;
+using e_suite.Workflow.Core.Enums;
using e_suite.Workflow.Core.Interfaces;
namespace e_suite.Workflow.Core.Tasks;
[GeneralTask]
-public class ApprovalTask : TaskBase, IStage, IFailedLoopback
+public class ApprovalTask : TaskBase, IStage, IOutcome
{
- public required Task Loopback { get; set; }
-
public ICollection Tasks { get; } = new List();
-
- //Todo can only be on a run-time instance
- //public override Task OnCompleteAsync()
- //{
-
- // return Task.FromResult(true);
- //}
+ public ApprovalVerdict TaskOutcome { get; set; }
+ public Dictionary OutcomeActions { get; set; }
}
\ No newline at end of file
diff --git a/eSuite.sln b/eSuite.sln
index 623f2a5..a6e7cba 100644
--- a/eSuite.sln
+++ b/eSuite.sln
@@ -163,6 +163,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "e-suite.DependencyInjection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "e-suite.Modules.WorkflowTemplatesManager", "e-suite.Modules.WorkflowTemplatesManager\e-suite.Modules.WorkflowTemplatesManager.csproj", "{ABF3CD19-D1CF-4407-9102-3FC31DAC04AB}"
EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "eSuite.Translator", "eSuite.Translator\eSuite.Translator.csproj", "{2D02CADA-C004-4B0C-B6DE-097647CB6BA3}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -457,6 +459,10 @@ Global
{ABF3CD19-D1CF-4407-9102-3FC31DAC04AB}.Debug|Any CPU.Build.0 = Debug|Any CPU
{ABF3CD19-D1CF-4407-9102-3FC31DAC04AB}.Release|Any CPU.ActiveCfg = Release|Any CPU
{ABF3CD19-D1CF-4407-9102-3FC31DAC04AB}.Release|Any CPU.Build.0 = Release|Any CPU
+ {2D02CADA-C004-4B0C-B6DE-097647CB6BA3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {2D02CADA-C004-4B0C-B6DE-097647CB6BA3}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {2D02CADA-C004-4B0C-B6DE-097647CB6BA3}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {2D02CADA-C004-4B0C-B6DE-097647CB6BA3}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE