public async Task <WardenStatsDto> GetStats(Guid organizationId, string wardenName, [FromUri] GetWardenStats query) { var isAuthorized = await _organizationService.IsUserInOrganizationAsync(organizationId, UserId); if (!isAuthorized) { Response.StatusCode = 401; return(null); } var stats = await _wardenService.GetStatsAsync(query); return(stats); }
public async Task <IActionResult> Details(Guid organizationId, Guid wardenId, int page = 1, int results = 10) { var warden = await GetWardenForUserAsync(organizationId, wardenId); if (warden == null) { return(HttpNotFound()); } var stats = await _wardenService.GetStatsAsync(new GetWardenStats { OrganizationId = organizationId, WardenName = warden.Name }); var watchers = await _watcherService.GetAllAsync(organizationId, wardenId); var iterations = await _wardenService.BrowseIterationsAsync(new BrowseWardenIterations { OrganizationId = organizationId, WardenName = warden.Name, Page = page, Results = results }); var viewModel = new WardenViewModel { Id = wardenId, OrganizationId = organizationId, Stats = stats, CreatedAt = warden.CreatedAt, Iterations = iterations, Watchers = watchers }; return(View(viewModel)); }