diff --git a/F4SDM42WebApi/F4SDHelperService.cs b/F4SDM42WebApi/F4SDHelperService.cs index 8bfb8b7..3167eeb 100644 --- a/F4SDM42WebApi/F4SDHelperService.cs +++ b/F4SDM42WebApi/F4SDHelperService.cs @@ -584,7 +584,12 @@ namespace C4IT.F4SD ", ReactionTimeEscalated" + ", SolutionTimeEscalated" + ", UsedInTypeSPSActivityTypeTicket as TicketEoid" + - ", UsedInTypeSPSActivityTypeIncident as IncidentEoid", + ", UsedInTypeSPSActivityTypeIncident as IncidentEoid" + + ", UsedInTypeSPSActivityTypeAlert as AlertEoid" + + ", UsedInTypeSPSActivityTypeGroupTicket as ProblemEoid" + + ", UsedInTypeSPSActivityTypeServiceRequest as ServiceRequestEoid" + + ", UsedInTypeSPSActivityTypeBase as TaskEoid" + + ", UsedInTypeSVMChangeRequestType as ChangeEoid", filter); if (tbl?.Rows == null || tbl.Rows.Count == 0) @@ -599,10 +604,20 @@ namespace C4IT.F4SD var ticketEoid = getGuidFromObject(row["TicketEoid"]); var incidentEoid = getGuidFromObject(row["IncidentEoid"]); + var alertEoid = getGuidFromObject(row["AlertEoid"]); + var problemEoid = getGuidFromObject(row["ProblemEoid"]); + var serviceRequestEoid = getGuidFromObject(row["ServiceRequestEoid"]); + var taskEoid = getGuidFromObject(row["TaskEoid"]); + var changeEoid = getGuidFromObject(row["ChangeEoid"]); var isIncident = incidentEoid != Guid.Empty; - var activityType = isIncident - ? "SPSActivityTypeIncident" - : (ticketEoid != Guid.Empty ? "SPSActivityTypeTicket" : null); + var activityType = ResolveTicketOverviewActivityType( + ticketEoid, + incidentEoid, + alertEoid, + problemEoid, + serviceRequestEoid, + taskEoid, + changeEoid); entries.Add(new TicketOverviewEntry { @@ -639,6 +654,33 @@ namespace C4IT.F4SD } } + private static string ResolveTicketOverviewActivityType( + Guid ticketEoid, + Guid incidentEoid, + Guid alertEoid, + Guid problemEoid, + Guid serviceRequestEoid, + Guid taskEoid, + Guid changeEoid) + { + if (incidentEoid != Guid.Empty) + return "SPSActivityTypeIncident"; + if (ticketEoid != Guid.Empty) + return "SPSActivityTypeTicket"; + if (alertEoid != Guid.Empty) + return "SPSActivityTypeAlert"; + if (problemEoid != Guid.Empty) + return "SPSActivityTypeGroupTicket"; + if (serviceRequestEoid != Guid.Empty) + return "SPSActivityTypeServiceRequest"; + if (taskEoid != Guid.Empty) + return "SPSActivityTypeBase"; + if (changeEoid != Guid.Empty) + return "SVMChangeRequestType"; + + return null; + } + private async Task BuildTicketOverviewFilterAsync( string sid, bool useRoleScope,