面板加统计数字

Uat_Study
hang 2022-04-13 11:31:05 +08:00
parent 7403a853f7
commit 904f9be48c
3 changed files with 12 additions and 2 deletions

View File

@ -40,6 +40,9 @@ namespace IRaCIS.Core.Application.Contracts
//现在需要签署的总数(项目待签署 +系统待签署) //现在需要签署的总数(项目待签署 +系统待签署)
public int? TotalNeedSignDocCount => TotalNeedSignTrialDocCount + TotalNeedSignSystemDocCount; public int? TotalNeedSignDocCount => TotalNeedSignTrialDocCount + TotalNeedSignSystemDocCount;
public int? TotalApprovalRequiredCount { get; set; }
} }
public class TrialSiteSurveyStatQuery : PageInput public class TrialSiteSurveyStatQuery : PageInput

View File

@ -43,7 +43,7 @@ namespace IRaCIS.Core.Application
TotalNeedSignTrialDocCount = _userInfo.UserTypeEnumInt == (int)UserTypeEnum.SuperAdmin TotalNeedSignTrialDocCount = _userInfo.UserTypeEnumInt == (int)UserTypeEnum.SuperAdmin
? 0 ? 0
: await _trialDocumentRepository.AsQueryable(true) : await _trialDocumentRepository.AsQueryable(true)
.Where(t => t.Trial.TrialUserList.Any(t => t.UserId == _userInfo.Id))
.Where(t => t.IsDeleted == false || (t.IsDeleted == true && t.TrialDocConfirmedUserList.Any(t => t.ConfirmUserId == _userInfo.Id))) .Where(t => t.IsDeleted == false || (t.IsDeleted == true && t.TrialDocConfirmedUserList.Any(t => t.ConfirmUserId == _userInfo.Id)))
.SelectMany(t => t.NeedConfirmedUserTypeList) .SelectMany(t => t.NeedConfirmedUserTypeList)
@ -52,6 +52,7 @@ namespace IRaCIS.Core.Application
HaveSignedTrialDocCount = _userInfo.UserTypeEnumInt == (int)UserTypeEnum.SuperAdmin HaveSignedTrialDocCount = _userInfo.UserTypeEnumInt == (int)UserTypeEnum.SuperAdmin
? 0 ? 0
: await _trialDocumentRepository : await _trialDocumentRepository
.Where( t => t.Trial.TrialUserList.Any(t => t.UserId == _userInfo.Id))
.Where(t => t.NeedConfirmedUserTypeList.Any(t => t.NeedConfirmUserTypeId == _userInfo.UserTypeId)) .Where(t => t.NeedConfirmedUserTypeList.Any(t => t.NeedConfirmUserTypeId == _userInfo.UserTypeId))
.SelectMany(t => t.TrialDocConfirmedUserList) .SelectMany(t => t.TrialDocConfirmedUserList)
.CountAsync(t => t.ConfirmUserId == _userInfo.Id), .CountAsync(t => t.ConfirmUserId == _userInfo.Id),
@ -71,6 +72,12 @@ namespace IRaCIS.Core.Application
.SelectMany(t => t.SystemDocConfirmedUserList) .SelectMany(t => t.SystemDocConfirmedUserList)
.CountAsync(t => t.ConfirmUserId == _userInfo.Id), .CountAsync(t => t.ConfirmUserId == _userInfo.Id),
TotalApprovalRequiredCount= _userInfo.UserTypeEnumInt == (int)UserTypeEnum.SuperAdmin
? 0:
_userInfo.UserTypeEnumInt == (int)UserTypeEnum.ProjectManager || _userInfo.UserTypeEnumInt == (int)UserTypeEnum.APM ?
_trialRepository.Where(t => t.TrialUserList.Any(t => t.UserId == _userInfo.Id)).SelectMany(t=>t.TrialSiteSurveyList).Where(t => t.State == TrialSiteSurveyEnum.SPMApproved).Count()
: _trialRepository.Where(t => t.TrialUserList.Any(t => t.UserId == _userInfo.Id)).SelectMany(t => t.TrialSiteSurveyList).Where(t => t.State == TrialSiteSurveyEnum.CRCSubmitted).Count()
}; };
} }

View File

@ -233,7 +233,7 @@ namespace IRaCIS.Core.Application.Service
CreateMap<Trial, TrialSiteSurveyStat>() CreateMap<Trial, TrialSiteSurveyStat>()
.ForMember(t=>t.ApprovalRequiredCount,u=> .ForMember(t=>t.ApprovalRequiredCount,u=>
u.MapFrom( c => userTypeEnumInt == (int)UserTypeEnum.SuperAdmin|| userTypeEnumInt == (int)UserTypeEnum.APM ? u.MapFrom( c => userTypeEnumInt == (int)UserTypeEnum.ProjectManager|| userTypeEnumInt == (int)UserTypeEnum.APM ?
c.TrialSiteSurveyList.Where(t=> t.State==TrialSiteSurveyEnum.SPMApproved).Count() c.TrialSiteSurveyList.Where(t=> t.State==TrialSiteSurveyEnum.SPMApproved).Count()
: c.TrialSiteSurveyList.Where(t => t.State == TrialSiteSurveyEnum.CRCSubmitted).Count()) : c.TrialSiteSurveyList.Where(t => t.State == TrialSiteSurveyEnum.CRCSubmitted).Count())
); );