Browse Source

[MODIFY]越界预警统计、越界申请统计、在线学习分析功能的权限增加

dev_wp
zhaozhenjing 3 months ago
parent
commit
e67dd34993
  1. 4
      .gitignore
  2. 11
      src/2.services/ATS.NonCustodial.Application/Impl/Business/AppBusinessApplicationService.cs
  3. 14
      src/2.services/ATS.NonCustodial.Application/Impl/Business/AppEarlyWarningService.cs
  4. 10
      src/2.services/ATS.NonCustodial.Application/Impl/Business/MaterialManager/AppFileAccessRecordsService.cs
  5. 3939
      src/4.apps/ATS.NonCustodial.Admin.Api/Seeds/initData/app_api.json
  6. 17944
      src/4.apps/ATS.NonCustodial.Admin.Api/Seeds/initData/app_dictionary.json
  7. 3548
      src/4.apps/ATS.NonCustodial.Admin.Api/Seeds/initData/app_user.json
  8. 3052
      src/4.apps/ATS.NonCustodial.Admin.Api/Seeds/initData/app_user_role.json

4
.gitignore vendored

@ -404,3 +404,7 @@ FodyWeavers.xsd
/src/4.apps/ATS.NonCustodial.Admin.Api/Seeds/initData/app_api.json /src/4.apps/ATS.NonCustodial.Admin.Api/Seeds/initData/app_api.json
/src/4.apps/ATS.NonCustodial.Admin.Api/Seeds/initData/app_user.json /src/4.apps/ATS.NonCustodial.Admin.Api/Seeds/initData/app_user.json
/src/4.apps/ATS.NonCustodial.Admin.Api/Seeds/initData/app_user_role.json /src/4.apps/ATS.NonCustodial.Admin.Api/Seeds/initData/app_user_role.json
/src/4.apps/ATS.NonCustodial.Admin.Api/Seeds/initData/app_api.json
/src/4.apps/ATS.NonCustodial.Admin.Api/Seeds/initData/app_dictionary.json
/src/4.apps/ATS.NonCustodial.Admin.Api/Seeds/initData/app_user.json
/src/4.apps/ATS.NonCustodial.Admin.Api/Seeds/initData/app_user_role.json

11
src/2.services/ATS.NonCustodial.Application/Impl/Business/AppBusinessApplicationService.cs

@ -117,6 +117,12 @@ namespace ATS.NonCustodial.Application.Impl.Business
//根据当前登录人查看其手里的案件被监管人 //根据当前登录人查看其手里的案件被监管人
var spList = await base.GetCurrentUserCaseListAsync(); var spList = await base.GetCurrentUserCaseListAsync();
//获取当前用户权限下的案件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, _appBusinessApplicationRepository.AsQueryable(false, true)); var express = await GetExpression(input, _appBusinessApplicationRepository.AsQueryable(false, true));
var grudlist = express var grudlist = express
.WhereIf(input.supname.NotNull(), q => q.SupervisedPersonName.Contains(input.supname)) .WhereIf(input.supname.NotNull(), q => q.SupervisedPersonName.Contains(input.supname))
@ -124,8 +130,9 @@ namespace ATS.NonCustodial.Application.Impl.Business
var grulist =from a in grudlist.ToList() var grulist =from a in grudlist.ToList()
join b in spList.Select(q => q.AppCaseManagement).ToList() on a.CaseId equals b.Id join b in spList.Select(q => q.AppCaseManagement).ToList() on a.CaseId equals b.Id
select new { a.SupervisedPersonName, a.Count, a.CaseId, b.Name }; select new { a.SupervisedPersonName, a.Count, a.CaseId, b.Name };
var pagegrulist = grulist.Skip((input.PageIndex - 1) * input.PageSize).Take(input.PageSize).ToList(); var resultList = grulist.Distinct().Where(p => caseIds.Contains(p.CaseId));
return ResultOutput.Ok(new { TotalCount = grulist.Count(), grudlist= pagegrulist }); var pagegrulist = resultList.Skip((input.PageIndex - 1) * input.PageSize).Take(input.PageSize).ToList();
return ResultOutput.Ok(new { TotalCount = resultList.Count(), grudlist= pagegrulist });
} }
/// <summary> /// <summary>

14
src/2.services/ATS.NonCustodial.Application/Impl/Business/AppEarlyWarningService.cs

@ -276,14 +276,20 @@ namespace ATS.NonCustodial.Application.Impl.Business
/// <returns></returns> /// <returns></returns>
[HttpPost] [HttpPost]
public async Task<IResultOutput> GetCrossborderStatisticsAsync(AppEarlyWarningGetPageInput input) 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 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)) .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); .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(); // 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 });
} }

10
src/2.services/ATS.NonCustodial.Application/Impl/Business/MaterialManager/AppFileAccessRecordsService.cs

@ -195,8 +195,14 @@ namespace ATS.NonCustodial.Application.Impl.Business.MaterialManager
[HttpPost] [HttpPost]
public async Task<IResultOutput> GetSituationCount(FileAccessRecordsGetPageInput input) public async Task<IResultOutput> GetSituationCount(FileAccessRecordsGetPageInput input)
{ {
//获取案件及案件被监管人 //获取当前用户权限下的案件ids
var caseIds = await (await base.GetCurrentUserCaseListAsync()).Select(w => w.AppCaseManagement.Id).ToListAsync(); 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 caseIds = await (await base.GetCurrentUserCaseListAsync()).Select(w => w.AppCaseManagement.Id).ToListAsync();
var SupervisedPersonIds = await base._appSupervisedPersonRepository.AsQueryable(false, true).Where(q => caseIds.Contains(q.CaseId)).Select(q => q.SupervisedPersonId).ToListAsync(); var SupervisedPersonIds = await base._appSupervisedPersonRepository.AsQueryable(false, true).Where(q => caseIds.Contains(q.CaseId)).Select(q => q.SupervisedPersonId).ToListAsync();
//获取监管人查阅次数 //获取监管人查阅次数
var queryable = await GetExpression(input, _appFileAccessRecordsRepository.AsQueryable(false, true).Where(q => SupervisedPersonIds.Contains(q.SupervisedPersonId))) var queryable = await GetExpression(input, _appFileAccessRecordsRepository.AsQueryable(false, true).Where(q => SupervisedPersonIds.Contains(q.SupervisedPersonId)))

3939
src/4.apps/ATS.NonCustodial.Admin.Api/Seeds/initData/app_api.json

File diff suppressed because it is too large Load Diff

17944
src/4.apps/ATS.NonCustodial.Admin.Api/Seeds/initData/app_dictionary.json

File diff suppressed because it is too large Load Diff

3548
src/4.apps/ATS.NonCustodial.Admin.Api/Seeds/initData/app_user.json

File diff suppressed because it is too large Load Diff

3052
src/4.apps/ATS.NonCustodial.Admin.Api/Seeds/initData/app_user_role.json

File diff suppressed because it is too large Load Diff
Loading…
Cancel
Save