fix(api): StatWorkWorkLoadController исправлен запрос получения статистики, убраны лишние данные.
This commit is contained in:
@@ -92,7 +92,7 @@ namespace PARR.API.Controllers.V1.Statistics
|
||||
|
||||
if (jobsRequests != null && jobsRequests.Count() > 0)
|
||||
//query = query.Where(t => jobsRequests.Any(x => x.JobId == t.ApplicationInWorkId && x.WorkGroupId == t.Host!.WorkGroupId.Value)); /*&& x.WorkGroupId == t.Host!.WorkGroupId.Value*/
|
||||
query = query.Where(t => jobsRequests.Select(t => t.JobId).Any(x => x == t.ApplicationInWorkId) && jobsRequests.Select(t => t.WorkGroupId).Any(x => x == t.Host!.WorkGroupId.Value));
|
||||
query = query.Where(t => jobsRequests.Select(t => t.JobId).Any(x => x == t.ApplicationInWorkId) && jobsRequests.Select(t => t.WorkGroupId).Any(x => x == t.Host!.WorkGroupId.Value));
|
||||
|
||||
var groupedQuery = query.GroupBy(t => new { t.NextRun.DateTime.Date, t.ApplicationInWorkId, t.Host.WorkGroupId })
|
||||
.Select(t => new
|
||||
@@ -124,8 +124,8 @@ namespace PARR.API.Controllers.V1.Statistics
|
||||
if (jobsRequests != null && jobsRequests.Count() > 0)
|
||||
{
|
||||
//appInWorksQuery = appInWorksQuery.Where(t => jobsRequests.Any(x => x.JobId == t.ApplicationInWorkId));
|
||||
appInWorksQuery = appInWorksQuery.Where(t => jobsRequests.Select(j=>j.JobId).Any(x => x == t.ApplicationInWorkId));
|
||||
workGroupsQuery = workGroupsQuery.Where(t => jobsRequests.Select(w=>w.WorkGroupId).Any(x => x == t.Id));
|
||||
appInWorksQuery = appInWorksQuery.Where(t => jobsRequests.Select(j => j.JobId).Any(x => x == t.ApplicationInWorkId));
|
||||
workGroupsQuery = workGroupsQuery.Where(t => jobsRequests.Select(w => w.WorkGroupId).Any(x => x == t.Id));
|
||||
}
|
||||
|
||||
|
||||
@@ -157,6 +157,10 @@ namespace PARR.API.Controllers.V1.Statistics
|
||||
});
|
||||
});
|
||||
|
||||
// убираем не нужные значения так как запрос в SQL (query) был с несколькими Any
|
||||
if (jobsRequests != null && jobsRequests.Count() > 0)
|
||||
response = response.Where(t => jobsRequests.Any(x => x.WorkGroupId == t.WorkGroup.Id && x.JobId == t.Job.Id)).ToList();
|
||||
|
||||
response = response.OrderBy(t => t.Job.ShortDescription).ThenBy(t => t.Job.Application?.Name).ThenBy(t => t.WorkGroup.Name).ToList();
|
||||
|
||||
return response;
|
||||
|
||||
Reference in New Issue
Block a user