@@ -7,6 +7,15 @@ namespace CaseManagement.CMMN.CasePlanInstance.Results
77{
88 public class CasePlanInstanceResult
99 {
10+ public CasePlanInstanceResult ( )
11+ {
12+ ExecutionContext = new Dictionary < string , string > ( ) ;
13+ Files = new List < CasePlanInstanceFileItemResult > ( ) ;
14+ Roles = new List < CasePlanInstanceRoleResult > ( ) ;
15+ Children = new List < CasePlanItemInstanceResult > ( ) ;
16+ WorkerTasks = new List < WorkerTaskResult > ( ) ;
17+ }
18+
1019 public string Id { get ; set ; }
1120 public string CaseFileId { get ; set ; }
1221 public string CasePlanId { get ; set ; }
@@ -16,6 +25,7 @@ public class CasePlanInstanceResult
1625 public ICollection < CasePlanInstanceFileItemResult > Files { get ; set ; }
1726 public ICollection < CasePlanInstanceRoleResult > Roles { get ; set ; }
1827 public ICollection < CasePlanItemInstanceResult > Children { get ; set ; }
28+ public ICollection < WorkerTaskResult > WorkerTasks { get ; set ; }
1929 public DateTime CreateDateTime { get ; set ; }
2030 public DateTime UpdateDateTime { get ; set ; }
2131
@@ -36,6 +46,24 @@ public static CasePlanInstanceFileItemResult ToDTO(CasePlanInstanceFileItem resu
3646 }
3747 }
3848
49+ public class WorkerTaskResult
50+ {
51+ public string CasePlanElementInstanceId { get ; set ; }
52+ public string ExternalId { get ; set ; }
53+ public DateTime CreateDateTime { get ; set ; }
54+
55+ public static WorkerTaskResult ToDTO ( CasePlanInstanceWorkerTask workerTask )
56+ {
57+ return new WorkerTaskResult
58+ {
59+ CasePlanElementInstanceId = workerTask . CasePlanElementInstanceId ,
60+ CreateDateTime = workerTask . CreateDateTime ,
61+ ExternalId = workerTask . ExternalId
62+ } ;
63+ }
64+ }
65+
66+
3967 public class CasePlanInstanceRoleResult
4068 {
4169 public string Id { get ; set ; }
@@ -60,11 +88,12 @@ public class CasePlanItemInstanceResult
6088 public string Name { get ; set ; }
6189 public string Type { get ; set ; }
6290 public string State { get ; set ; }
91+ public string FormId { get ; set ; }
6392 public ICollection < TransitionHistoryResult > TransitionHistories { get ; set ; }
6493
6594 public static CasePlanItemInstanceResult ToDto ( BaseCasePlanItemInstance casePlanItemInstance )
6695 {
67- string stateStr = null ;
96+ string stateStr = null , formId = null ;
6897 if ( casePlanItemInstance is BaseTaskOrStageElementInstance )
6998 {
7099 var state = ( ( BaseTaskOrStageElementInstance ) casePlanItemInstance ) . State ;
@@ -77,13 +106,20 @@ public static CasePlanItemInstanceResult ToDto(BaseCasePlanItemInstance casePlan
77106 stateStr = state == null ? null : Enum . GetName ( typeof ( MilestoneEventStates ) , state ) ;
78107 }
79108
109+ if ( casePlanItemInstance is HumanTaskElementInstance )
110+ {
111+ var humanTaskInstance = casePlanItemInstance as HumanTaskElementInstance ;
112+ formId = humanTaskInstance . FormId ;
113+ }
114+
80115 return new CasePlanItemInstanceResult
81116 {
82117 Id = casePlanItemInstance . Id ,
83118 Name = casePlanItemInstance . Name ,
84119 NbOccurrence = casePlanItemInstance . NbOccurrence ,
85120 EltId = casePlanItemInstance . EltId ,
86121 State = stateStr ,
122+ FormId = formId ,
87123 Type = Enum . GetName ( typeof ( CasePlanElementInstanceTypes ) , casePlanItemInstance . Type ) . ToUpperInvariant ( ) ,
88124 TransitionHistories = casePlanItemInstance . TransitionHistories . Select ( _ => TransitionHistoryResult . ToDto ( _ ) ) . ToList ( )
89125 } ;
@@ -134,6 +170,7 @@ public static CasePlanInstanceResult ToDto(CasePlanInstanceAggregate casePlanIns
134170 UpdateDateTime = casePlanInstance . UpdateDateTime ,
135171 Children = children ,
136172 Files = casePlanInstance . Files . Select ( _ => CasePlanInstanceFileItemResult . ToDTO ( _ ) ) . ToList ( ) ,
173+ WorkerTasks = casePlanInstance . WorkerTasks . Select ( _ => WorkerTaskResult . ToDTO ( _ ) ) . ToList ( ) ,
137174 ExecutionContext = casePlanInstance . ExecutionContext == null ? new Dictionary < string , string > ( ) : casePlanInstance . ExecutionContext . Variables . ToDictionary ( k => k . Key , k => k . Value )
138175 } ;
139176 }
0 commit comments