|
|
|
|
@ -276,14 +276,20 @@ namespace ATS.NonCustodial.Application.Impl.Business
|
|
|
|
|
/// <returns></returns> |
|
|
|
|
[HttpPost] |
|
|
|
|
public async Task<IResultOutput> GetCrossborderStatisticsAsync(AppEarlyWarningGetPageInput input) |
|
|
|
|
{ |
|
|
|
|
{ //获取当前用户权限下的案件ids |
|
|
|
|
var limits = User.limits; |
|
|
|
|
var selectLimits = await _appCaseSupervisorRepository.AsQueryable(false, true) |
|
|
|
|
.Where(w => limits.Contains(w.UnitId.ToString())) |
|
|
|
|
.ToListAsync(); |
|
|
|
|
var caseIds = selectLimits.Select(w => w.CaseId).Distinct().ToList(); |
|
|
|
|
|
|
|
|
|
var express = await GetExpression(input, _appEarlyWarningRepository.AsQueryable(false, true)); |
|
|
|
|
var grudlist = express |
|
|
|
|
var grudlist = express.Where(p=> caseIds.Contains(p.CaseId)) |
|
|
|
|
.WhereIf(input.supname.NotNull(), w => w.SupervisedPersonName.Contains(input.supname)) |
|
|
|
|
.GroupBy(q => new { q.CaseId, q.CaseName, q.SupervisedPersonId, q.SupervisedPersonName }).Select(q => new { q.Key.CaseId, q.Key.CaseName, q.Key.SupervisedPersonName, q.Key.SupervisedPersonId, Count = q.ToList().Count() }).Skip((input.PageIndex - 1) * input.PageSize).Take(input.PageSize); |
|
|
|
|
var SupervisedPersonIds = grudlist.Select(q => q.SupervisedPersonId); |
|
|
|
|
//var SupervisedPersonIds = grudlist.Select(q => q.SupervisedPersonId); |
|
|
|
|
// var grudlistcunot = express.Where(q => SupervisedPersonIds.Contains(q.SupervisedPersonId)).ToList(); |
|
|
|
|
return ResultOutput.Ok(new { TotalCount = express.GroupBy(q => new { q.CaseId, q.CaseName, q.SupervisedPersonId, q.SupervisedPersonName }).Count(), grudlist }); |
|
|
|
|
return ResultOutput.Ok(new { TotalCount = express.Where(p => caseIds.Contains(p.CaseId)).GroupBy(q => new { q.CaseId, q.CaseName, q.SupervisedPersonId, q.SupervisedPersonName }).Count(), grudlist }); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|