public Task <List <DataChartResponse> > Handle(GetTicketsSeverityChartQuery request, CancellationToken cancellationToken) { try { var tickets = _dbContext.Tickets.ToList(); var lowTickets = tickets.Where(t => t.Severity.Equals(TicketSeverity.Low)).Count(); var mediumTickets = tickets.Where(t => t.Severity.Equals(TicketSeverity.Medium)).Count(); var highTickets = tickets.Where(t => t.Severity.Equals(TicketSeverity.High)).Count(); var criticalTickets = tickets.Where(t => t.Severity.Equals(TicketSeverity.Critical)).Count(); return(Task.FromResult(new List <DataChartResponse> { new DataChartResponse { Name = TicketSeverity.Low, Value = lowTickets }, new DataChartResponse { Name = TicketSeverity.Medium, Value = mediumTickets }, new DataChartResponse { Name = TicketSeverity.High, Value = highTickets }, new DataChartResponse { Name = TicketSeverity.Critical, Value = criticalTickets } })); } catch (Exception ex) { throw new Exception("There was an error getting the tickets with severity field for chart", ex); } }
public async Task <IActionResult> GetTicketsSeverity([FromQuery] GetTicketsSeverityChartQuery ticket) { var result = await Mediator.Send(ticket); return(Ok(result)); }