diff --git a/src/2.services/ATS.NonCustodial.Application/Impl/Business/CaseManagements/AppCaseManagementService.cs b/src/2.services/ATS.NonCustodial.Application/Impl/Business/CaseManagements/AppCaseManagementService.cs index 8f65fa7..d1008cc 100644 --- a/src/2.services/ATS.NonCustodial.Application/Impl/Business/CaseManagements/AppCaseManagementService.cs +++ b/src/2.services/ATS.NonCustodial.Application/Impl/Business/CaseManagements/AppCaseManagementService.cs @@ -888,19 +888,27 @@ namespace ATS.NonCustodial.Application.Impl.Business.CaseManagements /// public async Task CaseStatisticsHandlingTime(CaseStatisticsHandlingTimePageInput input) { + //获取当前用户权限下的案件ids + var limits = User.limits; + var selectLimits = await _appCaseSupervisorRepository.AsQueryable(false, true) + .Where(w => limits.Contains(w.UnitId.ToString())) + .ToListAsync(); + var caseIdList = selectLimits.Select(w => w.CaseId).Distinct().ToList(); + var query = _appCaseManagementRepository .AsQueryable(false, true) .Where(w => w.CaseProgress == CaseProgressEnum.Closed) .WhereIf(input.KeyWord.NotNull(), a => a.Name.Contains(input.KeyWord)) .WhereIf(input.TimeSearch.BeginTime.Length == 2, w => w.CaseBeginTime > input.TimeSearch.BeginTime[0] && w.CaseBeginTime < input.TimeSearch.BeginTime[1].AddDays(1)) - .WhereIf(input.TimeSearch.EndTime.Length == 2, w => w.CaseClosedTime > input.TimeSearch.EndTime[0] && w.CaseClosedTime <= input.TimeSearch.EndTime[1].AddDays(1)); + .WhereIf(input.TimeSearch.EndTime.Length == 2, w => w.CaseClosedTime > input.TimeSearch.EndTime[0] && w.CaseClosedTime <= input.TimeSearch.EndTime[1].AddDays(1)) + .Where(w=> caseIdList.Contains(w.Id)); var pageData = await query.ProjectTo(Mapper.ConfigurationProvider) .PagedAsync(input) .ConfigureAwait(false); - - var caseIds = pageData.Data.Select(w => w.Id); + + var caseIds = pageData.Data.Select(w => w.Id); //涉事人员(被监管人员) var personInvolvedList = await _appSupervisedPersonRepository