public async Task <List <extension.WorkItem> > GetWorkItems(WiRequest req, int selfId) { var res = new List <extension.WorkItem>(); //TODO: Проект убрать после отладки var workItems = await _azureDevOpsService.GetChildWorkItems(req.Project ?? "ShtormDemoProject(Agile)", selfId); int[] wiIds = workItems.Select(x => x.Id).Where(x => x != null).Cast <int>().ToArray(); var timesheets = await _timesheetRepository.GetTimesheets(wiIds); workItems.ForEach(x => { var duration = timesheets.Where(y => y.WorkItemId == x.Id).Sum(z => z.Duration); if (duration > 0) { res.Add(new extension.WorkItem(x, duration)); } } ); return(res); }
public async Task <ActionResult <List <extension.WorkItem> > > GetWorkItems(int selfId, [FromQuery] WiRequest req) { return(await _timeExtensionService.GetWorkItems(req, selfId)); }