有阅片期无全局
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/push Build is passing
Details
parent
4b3e1ba5c0
commit
1c0547f3ff
|
@ -1551,10 +1551,20 @@ namespace IRaCIS.Core.Application.Service.Common
|
|||
|
||||
var addReadingPeriodNum = isGlobalReading ? ReadingCommon.TaskNumDic[ReadingCategory.Global] : 0;
|
||||
|
||||
var finishedGlobalCount = 0;
|
||||
|
||||
//已完成的全局数量
|
||||
var finishedGlobalCount = resultExceptJudgeList.Where(t => t.SubjectCode == visitItem.SubjectCode && t.ReadingCategory == ReadingCategory.Global)
|
||||
.GroupBy(t => t.VisitTaskNum).Where(g => g.Count() == 2).Select(g => g.Key).Count();
|
||||
//没有配置阅片期
|
||||
if (subjectReadingPeriondVisitNumList == null)
|
||||
{
|
||||
finishedGlobalCount = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
//已完成的全局数量
|
||||
finishedGlobalCount = resultExceptJudgeList.Where(t => t.SubjectCode == visitItem.SubjectCode && subjectReadingPeriondVisitNumList.Any(c => (c + addReadingPeriodNum) == t.VisitTaskNum)
|
||||
/*&& t.ReadingCategory == ReadingCategory.Global*/)
|
||||
.GroupBy(t => t.VisitTaskNum).Where(g => g.Count() == 2).Select(g => g.Key).Count();
|
||||
}
|
||||
|
||||
|
||||
visitItem.IsJudgeSelect = null;
|
||||
|
@ -1564,7 +1574,8 @@ namespace IRaCIS.Core.Application.Service.Common
|
|||
{
|
||||
//最大的全局是否产生裁判
|
||||
|
||||
var subjectMaxFinishedGlobalTaskNum = resultExceptJudgeList.Where(t => t.SubjectCode == visitItem.SubjectCode && t.ReadingCategory == ReadingCategory.Global)
|
||||
var subjectMaxFinishedGlobalTaskNum = resultExceptJudgeList.Where(t => t.SubjectCode == visitItem.SubjectCode && subjectReadingPeriondVisitNumList.Any(c => (c + addReadingPeriodNum) == t.VisitTaskNum)
|
||||
/*&& t.ReadingCategory == ReadingCategory.Global*/)
|
||||
.GroupBy(t => t.VisitTaskNum).Where(g => g.Count() == 2).Select(g => g.Key).DefaultIfEmpty().Max();
|
||||
|
||||
//最大的完成的全局是否产生裁判
|
||||
|
@ -2288,7 +2299,11 @@ namespace IRaCIS.Core.Application.Service.Common
|
|||
|
||||
#endregion
|
||||
|
||||
|
||||
if (export_Template == StaticData.Export.CommonJudgeReadingDetail_Export)
|
||||
{
|
||||
//裁判产生标记为空的数据过滤掉
|
||||
list = list.Where(t => t.IsTrigerJudge != null).ToList();
|
||||
}
|
||||
|
||||
exportInfo.List = ExportExcelConverterDate.ConvertToClientTimeInObject(list.Where(t => t.ReadingCategory != ReadingCategory.Global).ToList(), _userInfo.TimeZoneId);
|
||||
exportInfo.CurrentTime = ExportExcelConverterDate.DateTimeInternationalToString(DateTime.Now, _userInfo.TimeZoneId);
|
||||
|
@ -2335,7 +2350,7 @@ namespace IRaCIS.Core.Application.Service.Common
|
|||
[FromServices] IRepository<Trial> _trialRepository)
|
||||
{
|
||||
//每次查询必须是单标准的
|
||||
var criterion = await _readingQuestionCriterionTrialRepository.Where(t => t.Id == inQuery.TrialReadingCriterionId).Select(t => new { t.CriterionType, t.CriterionName, t.ArbitrationRule }).FirstNotNullAsync();
|
||||
var criterion = await _readingQuestionCriterionTrialRepository.Where(t => t.Id == inQuery.TrialReadingCriterionId).Select(t => new { t.CriterionType, t.CriterionName, t.ArbitrationRule, t.IsGlobalReading }).FirstNotNullAsync();
|
||||
|
||||
|
||||
|
||||
|
@ -2393,80 +2408,191 @@ namespace IRaCIS.Core.Application.Service.Common
|
|||
exportInfo.CurrentTime = ExportExcelConverterDate.DateTimeInternationalToString(DateTime.Now, _userInfo.TimeZoneId);
|
||||
|
||||
|
||||
#region 按照受试者维度统计
|
||||
//1、裁判量M:所有完成阅片病例(至少一个阅片期)里面触发裁判的受试者数量;
|
||||
|
||||
|
||||
//1、裁判量M:所有完成阅片病例 最后一个阅片期触发裁判的受试者数量;
|
||||
//2、总样本量N:R1,R2均完成阅片(至少一个阅片期)的受试者数量;
|
||||
|
||||
var addReadingPeriodNum = criterion.IsGlobalReading ? ReadingCommon.TaskNumDic[ReadingCategory.Global] : 0;
|
||||
|
||||
exportInfo.SubjectCount = _subjectRepository.Where(t => t.TrialId == inQuery.TrialId).Where(t =>
|
||||
t.SubjectVisitTaskList.AsQueryable().Where(comonTaskFilter).Where(t => t.ReadingCategory == ReadingCategory.Global && t.ReadingTaskState == ReadingTaskState.HaveSigned)
|
||||
.GroupBy(t => new { t.SubjectId, t.SouceReadModuleId }).Where(g => g.Count() == 2).Any()
|
||||
t.SubjectVisitTaskList.AsQueryable().Where(comonTaskFilter).Where(t => t.ReadingTaskState == ReadingTaskState.HaveSigned)
|
||||
.GroupBy(t => new { t.SubjectId, t.VisitTaskNum }).Where(g => g.Count() == 2).Any(g => t.ReadModuleList.Any(c => c.SubjectVisit.VisitNum + addReadingPeriodNum == g.Key.VisitTaskNum))
|
||||
).Count();
|
||||
|
||||
exportInfo.judgeSubjectCount = _subjectRepository.Where(t => t.TrialId == inQuery.TrialId).Where(t =>
|
||||
t.SubjectVisitTaskList.AsQueryable().Where(comonTaskFilter).Any(t => t.ReadingCategory == ReadingCategory.Global && t.ReadingTaskState == ReadingTaskState.HaveSigned)
|
||||
&& t.SubjectVisitTaskList.AsQueryable().Where(comonTaskFilter).Any(t => t.ReadingCategory == ReadingCategory.Judge)
|
||||
).Count();
|
||||
|
||||
var doctorList = _visitTaskRepository.Where(comonTaskFilter).Where(t => t.ReadingTaskState == ReadingTaskState.HaveSigned)
|
||||
.GroupBy(t => new { t.DoctorUserId, t.DoctorUser.UserName, t.DoctorUser.FullName })
|
||||
.Select(g => new DoctorJudgeRatio()
|
||||
{
|
||||
DoctorUserId = g.Key.DoctorUserId,
|
||||
UserName = g.Key.UserName,
|
||||
FullName = g.Key.FullName,
|
||||
//var test = _subjectRepository.Where(t => t.TrialId == inQuery.TrialId).Where(t =>
|
||||
// t.SubjectVisitTaskList.AsQueryable().Where(comonTaskFilter).Where(t => t.ReadingTaskState == ReadingTaskState.HaveSigned)
|
||||
// //找到两个人完成的阅片期
|
||||
// .GroupBy(t => new { t.SubjectId, t.VisitTaskNum }).Any(g => g.Count() == 2 && t.ReadModuleList.Any(c => c.SubjectVisit.VisitNum + addReadingPeriodNum == g.Key.VisitTaskNum))
|
||||
// ).Select(t=>new
|
||||
// {
|
||||
// dd= t.SubjectVisitTaskList.AsQueryable().Where(comonTaskFilter).Where(t => t.ReadingTaskState == ReadingTaskState.HaveSigned)
|
||||
// //找到两个人完成的阅片期
|
||||
// .GroupBy(t => new { t.SubjectId, t.VisitTaskNum }).Where(g => g.Count() == 2 && t.ReadModuleList.Any(c => c.SubjectVisit.VisitNum + addReadingPeriodNum == g.Key.VisitTaskNum))
|
||||
// .Select(g=>new
|
||||
// {
|
||||
// g.Key.VisitTaskNum,
|
||||
// List= g.ToList()
|
||||
// }).ToList()
|
||||
// }).ToList();
|
||||
|
||||
//触发裁判的受试者数量
|
||||
TotalJudgeCount = g.Where(t => t.ReadingCategory == ReadingCategory.Global && t.JudgeVisitTaskId != null).Select(t => t.SubjectId).Distinct().Count(),
|
||||
|
||||
// G-2 G-4 可能选择的是不同的医生,要以最后一次选择的为准
|
||||
JudgeAgreeCount = g.Where(t => t.ReadingCategory == ReadingCategory.Global && t.JudgeVisitTaskId != null
|
||||
&& t.JudgeVisitTask.JudgeResultTaskId == t.Id && t.VisitTaskNum == g.Where(t => t.ReadingCategory == ReadingCategory.Global && t.JudgeVisitTaskId != null).Max(t => t.VisitTaskNum))
|
||||
.Select(t => t.SubjectId).Distinct().Count(),
|
||||
|
||||
}).ToList();
|
||||
if (criterion.IsGlobalReading)
|
||||
{
|
||||
|
||||
#endregion
|
||||
#region 按照受试者维度统计
|
||||
//1、裁判量M:所有完成阅片病例 最后一个阅片期触发裁判的受试者数量;
|
||||
//2、总样本量N:R1,R2均完成阅片(至少一个阅片期)的受试者数量;
|
||||
|
||||
#region 按照阅片期维度统计
|
||||
//、裁判量J:所有完成阅片(R1和R2均完成)的阅片期里面触发裁判的阅片期数量;
|
||||
//2、总样本量Q:R1,R2均完成阅片的阅片期数量;
|
||||
//exportInfo.SubjectCount = _subjectRepository.Where(t => t.TrialId == inQuery.TrialId).Where(t =>
|
||||
// t.SubjectVisitTaskList.AsQueryable().Where(comonTaskFilter).Where(t => t.ReadingCategory == ReadingCategory.Global && t.ReadingTaskState == ReadingTaskState.HaveSigned)
|
||||
// .GroupBy(t => new { t.SubjectId, t.SouceReadModuleId }).Where(g => g.Count() == 2).Any()
|
||||
//).Count();
|
||||
|
||||
exportInfo.ReadingPeriodCount = _visitTaskRepository.Where(comonTaskFilter).Where(t => t.ReadingCategory == ReadingCategory.Global && t.ReadingTaskState == ReadingTaskState.HaveSigned)
|
||||
.GroupBy(t => new { t.SubjectId, t.SouceReadModuleId })
|
||||
.Where(g => g.Count() == 2).Select(g => g.Key.SouceReadModuleId).Distinct().Count();
|
||||
//最后一个已完成的全局 没产生裁判 (之前有裁判),不算入裁判量
|
||||
exportInfo.judgeSubjectCount = _subjectRepository.Where(t => t.TrialId == inQuery.TrialId).Where(t =>
|
||||
t.SubjectVisitTaskList.AsQueryable().Where(comonTaskFilter).Where(t => t.ReadingCategory == ReadingCategory.Global && t.ReadingTaskState == ReadingTaskState.HaveSigned)
|
||||
.GroupBy(t => new { t.SubjectId, t.SouceReadModuleId, t.VisitTaskNum }).Where(g => g.Count() == 2 && g.Key.VisitTaskNum == g.Max(t => t.VisitTaskNum)).Any(g => g.Any(t => t.JudgeVisitTaskId != null))
|
||||
).Count();
|
||||
|
||||
exportInfo.judgeReadingPeriodCount = _visitTaskRepository.Where(comonTaskFilter).Where(t => t.ReadingCategory == ReadingCategory.Global && t.ReadingTaskState == ReadingTaskState.HaveSigned)
|
||||
.GroupBy(t => new { t.SubjectId, t.SouceReadModuleId })
|
||||
//裁判不要求做完
|
||||
.Where(g => g.Count() == 2 && g.Any(c => c.JudgeVisitTaskId != null)).Select(g => g.Key.SouceReadModuleId).Distinct().Count();
|
||||
exportInfo.DoctorSubjectStatList = _visitTaskRepository.Where(comonTaskFilter).Where(t => t.ReadingTaskState == ReadingTaskState.HaveSigned)
|
||||
.GroupBy(t => new { t.DoctorUserId, t.DoctorUser.UserName, t.DoctorUser.FullName })
|
||||
.Select(g => new DoctorJudgeRatio()
|
||||
{
|
||||
DoctorUserId = g.Key.DoctorUserId,
|
||||
UserName = g.Key.UserName,
|
||||
FullName = g.Key.FullName,
|
||||
|
||||
//3、裁判认同数J:触发裁判的阅片期中,阅片人被裁判认同的阅片期数量;
|
||||
//4、总裁判数Q:阅片人完成阅片的阅片期中,触发裁判的阅片期数量;
|
||||
//最后一个阅片期触发裁判 且裁判已阅
|
||||
TotalJudgeCount = g.Where(t => t.ReadingCategory == ReadingCategory.Global && t.JudgeVisitTaskId != null && t.JudgeVisitTask.ReadingTaskState == ReadingTaskState.HaveSigned)
|
||||
.Where(t => t.VisitTaskNum == g.Where(t => t.ReadingCategory == ReadingCategory.Global && t.JudgeVisitTaskId != null && t.JudgeVisitTask.ReadingTaskState == ReadingTaskState.HaveSigned).Max(t => t.VisitTaskNum))
|
||||
.Select(t => t.SubjectId).Distinct().Count(),
|
||||
|
||||
var doctor2List = _visitTaskRepository.Where(comonTaskFilter).Where(t => t.ReadingTaskState == ReadingTaskState.HaveSigned)
|
||||
.GroupBy(t => new { t.DoctorUserId, t.DoctorUser.UserName, t.DoctorUser.FullName })
|
||||
//有全局裁判
|
||||
//.Where(g => g.Any(t => t.ReadingCategory == ReadingCategory.Global && t.JudgeVisitTaskId != null))
|
||||
.Select(g => new DoctorJudgeRatio()
|
||||
{
|
||||
DoctorUserId = g.Key.DoctorUserId,
|
||||
UserName = g.Key.UserName,
|
||||
FullName = g.Key.FullName,
|
||||
// G-2 G-4 可能选择的是不同的医生,要以最后一次选择的为准
|
||||
JudgeAgreeCount = g.Where(t => t.ReadingCategory == ReadingCategory.Global && t.JudgeVisitTaskId != null && t.JudgeVisitTask.ReadingTaskState == ReadingTaskState.HaveSigned
|
||||
&& t.JudgeVisitTask.JudgeResultTaskId == t.Id
|
||||
&& t.VisitTaskNum == g.Where(t => t.ReadingCategory == ReadingCategory.Global && t.JudgeVisitTaskId != null && t.JudgeVisitTask.ReadingTaskState == ReadingTaskState.HaveSigned).Max(t => t.VisitTaskNum))
|
||||
.Select(t => t.SubjectId).Distinct().Count(),
|
||||
|
||||
//触发裁判的阅片期的数量 并且裁判要求做完
|
||||
TotalJudgeCount = g.Where(t => t.ReadingCategory == ReadingCategory.Global && t.SouceReadModuleId != null && t.JudgeVisitTaskId != null && t.JudgeVisitTask.ReadingTaskState == ReadingTaskState.HaveSigned).Select(t => t.SouceReadModuleId).Distinct().Count(),
|
||||
}).ToList();
|
||||
|
||||
JudgeAgreeCount = g.Where(t => t.ReadingCategory == ReadingCategory.Global && t.JudgeVisitTaskId != null
|
||||
&& t.JudgeVisitTask.JudgeResultTaskId == t.Id && t.JudgeVisitTask.ReadingTaskState == ReadingTaskState.HaveSigned)
|
||||
.Select(t => t.SouceReadModuleId).Distinct().Count(),
|
||||
#endregion
|
||||
|
||||
}).ToList();
|
||||
#region 按照阅片期维度统计
|
||||
//、裁判量J:所有完成阅片(R1和R2均完成)的阅片期里面触发裁判的阅片期数量;
|
||||
//2、总样本量Q:R1,R2均完成阅片的阅片期数量;
|
||||
|
||||
#endregion
|
||||
exportInfo.ReadingPeriodCount = _visitTaskRepository.Where(comonTaskFilter).Where(t => t.ReadingCategory == ReadingCategory.Global && t.ReadingTaskState == ReadingTaskState.HaveSigned)
|
||||
.GroupBy(t => new { t.SubjectId, t.SouceReadModuleId })
|
||||
.Where(g => g.Count() == 2).Select(g => g.Key.SouceReadModuleId).Distinct().Count();
|
||||
|
||||
exportInfo.DoctorSubjectStatList = doctorList;
|
||||
exportInfo.judgeReadingPeriodCount = _visitTaskRepository.Where(comonTaskFilter).Where(t => t.ReadingCategory == ReadingCategory.Global && t.ReadingTaskState == ReadingTaskState.HaveSigned)
|
||||
.GroupBy(t => new { t.SubjectId, t.SouceReadModuleId })
|
||||
//裁判不要求做完
|
||||
.Where(g => g.Count() == 2 && g.Any(c => c.JudgeVisitTaskId != null)).Select(g => g.Key.SouceReadModuleId).Distinct().Count();
|
||||
|
||||
//3、裁判认同数J:触发裁判的阅片期中,阅片人被裁判认同的阅片期数量;
|
||||
//4、总裁判数Q:阅片人完成阅片的阅片期中,触发裁判的阅片期数量;
|
||||
|
||||
exportInfo.DoctorPeriodStatList = _visitTaskRepository.Where(comonTaskFilter).Where(t => t.ReadingTaskState == ReadingTaskState.HaveSigned)
|
||||
.GroupBy(t => new { t.DoctorUserId, t.DoctorUser.UserName, t.DoctorUser.FullName })
|
||||
//有全局裁判
|
||||
//.Where(g => g.Any(t => t.ReadingCategory == ReadingCategory.Global && t.JudgeVisitTaskId != null))
|
||||
.Select(g => new DoctorJudgeRatio()
|
||||
{
|
||||
DoctorUserId = g.Key.DoctorUserId,
|
||||
UserName = g.Key.UserName,
|
||||
FullName = g.Key.FullName,
|
||||
|
||||
//触发裁判的阅片期的数量 并且裁判要求做完
|
||||
TotalJudgeCount = g.Where(t => t.ReadingCategory == ReadingCategory.Global && t.SouceReadModuleId != null && t.JudgeVisitTaskId != null && t.JudgeVisitTask.ReadingTaskState == ReadingTaskState.HaveSigned).Select(t => t.SouceReadModuleId).Distinct().Count(),
|
||||
|
||||
JudgeAgreeCount = g.Where(t => t.ReadingCategory == ReadingCategory.Global && t.JudgeVisitTaskId != null
|
||||
&& t.JudgeVisitTask.JudgeResultTaskId == t.Id && t.JudgeVisitTask.ReadingTaskState == ReadingTaskState.HaveSigned)
|
||||
.Select(t => t.SouceReadModuleId).Distinct().Count(),
|
||||
|
||||
}).ToList();
|
||||
|
||||
#endregion
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
//最后一个已完成的全局 没产生裁判 (之前有裁判),不算入裁判量
|
||||
exportInfo.judgeSubjectCount = _subjectRepository.Where(t => t.TrialId == inQuery.TrialId).Where(t =>
|
||||
t.SubjectVisitTaskList.AsQueryable().Where(comonTaskFilter).Where(t => t.ReadingTaskState == ReadingTaskState.HaveSigned)
|
||||
//找到两个人完成的阅片期
|
||||
.GroupBy(t => new { t.SubjectId, t.VisitTaskNum }).Where(g => g.Count() == 2 && t.ReadModuleList.Any(c => c.SubjectVisit.VisitNum + addReadingPeriodNum == g.Key.VisitTaskNum))
|
||||
|
||||
.Any(g => g.Any(t => t.JudgeVisitTaskId != null))
|
||||
).Count();
|
||||
|
||||
#region 按照受试者维度统计
|
||||
|
||||
|
||||
exportInfo.DoctorSubjectStatList = _visitTaskRepository.Where(comonTaskFilter).Where(t => t.ReadingTaskState == ReadingTaskState.HaveSigned)
|
||||
.GroupBy(t => new { t.DoctorUserId, t.DoctorUser.UserName, t.DoctorUser.FullName })
|
||||
.Select(g => new DoctorJudgeRatio()
|
||||
{
|
||||
DoctorUserId = g.Key.DoctorUserId,
|
||||
UserName = g.Key.UserName,
|
||||
FullName = g.Key.FullName,
|
||||
|
||||
//最后一个阅片期触发裁判 且裁判已阅
|
||||
TotalJudgeCount = g.Where(t => t.ReadingCategory == ReadingCategory.Global && t.JudgeVisitTaskId != null && t.JudgeVisitTask.ReadingTaskState == ReadingTaskState.HaveSigned)
|
||||
.Where(t => t.VisitTaskNum == g.Where(t => t.ReadingCategory == ReadingCategory.Global && t.JudgeVisitTaskId != null && t.JudgeVisitTask.ReadingTaskState == ReadingTaskState.HaveSigned).Max(t => t.VisitTaskNum))
|
||||
.Select(t => t.SubjectId).Distinct().Count(),
|
||||
|
||||
// G-2 G-4 可能选择的是不同的医生,要以最后一次选择的为准
|
||||
JudgeAgreeCount = g.Where(t => t.ReadingCategory == ReadingCategory.Global && t.JudgeVisitTaskId != null && t.JudgeVisitTask.ReadingTaskState == ReadingTaskState.HaveSigned
|
||||
&& t.JudgeVisitTask.JudgeResultTaskId == t.Id
|
||||
&& t.VisitTaskNum == g.Where(t => t.ReadingCategory == ReadingCategory.Global && t.JudgeVisitTaskId != null && t.JudgeVisitTask.ReadingTaskState == ReadingTaskState.HaveSigned).Max(t => t.VisitTaskNum))
|
||||
.Select(t => t.SubjectId).Distinct().Count(),
|
||||
|
||||
}).ToList();
|
||||
|
||||
#endregion
|
||||
|
||||
#region 按照阅片期维度统计
|
||||
//、裁判量J:所有完成阅片(R1和R2均完成)的阅片期里面触发裁判的阅片期数量;
|
||||
//2、总样本量Q:R1,R2均完成阅片的阅片期数量;
|
||||
|
||||
exportInfo.ReadingPeriodCount = _visitTaskRepository.Where(comonTaskFilter).Where(t => t.ReadingCategory == ReadingCategory.Global && t.ReadingTaskState == ReadingTaskState.HaveSigned)
|
||||
.GroupBy(t => new { t.SubjectId, t.SouceReadModuleId })
|
||||
.Where(g => g.Count() == 2).Select(g => g.Key.SouceReadModuleId).Distinct().Count();
|
||||
|
||||
exportInfo.judgeReadingPeriodCount = _visitTaskRepository.Where(comonTaskFilter).Where(t => t.ReadingCategory == ReadingCategory.Global && t.ReadingTaskState == ReadingTaskState.HaveSigned)
|
||||
.GroupBy(t => new { t.SubjectId, t.SouceReadModuleId })
|
||||
//裁判不要求做完
|
||||
.Where(g => g.Count() == 2 && g.Any(c => c.JudgeVisitTaskId != null)).Select(g => g.Key.SouceReadModuleId).Distinct().Count();
|
||||
|
||||
//3、裁判认同数J:触发裁判的阅片期中,阅片人被裁判认同的阅片期数量;
|
||||
//4、总裁判数Q:阅片人完成阅片的阅片期中,触发裁判的阅片期数量;
|
||||
|
||||
exportInfo.DoctorPeriodStatList = _visitTaskRepository.Where(comonTaskFilter).Where(t => t.ReadingTaskState == ReadingTaskState.HaveSigned)
|
||||
.GroupBy(t => new { t.DoctorUserId, t.DoctorUser.UserName, t.DoctorUser.FullName })
|
||||
//有全局裁判
|
||||
//.Where(g => g.Any(t => t.ReadingCategory == ReadingCategory.Global && t.JudgeVisitTaskId != null))
|
||||
.Select(g => new DoctorJudgeRatio()
|
||||
{
|
||||
DoctorUserId = g.Key.DoctorUserId,
|
||||
UserName = g.Key.UserName,
|
||||
FullName = g.Key.FullName,
|
||||
|
||||
//触发裁判的阅片期的数量 并且裁判要求做完
|
||||
TotalJudgeCount = g.Where(t => t.ReadingCategory == ReadingCategory.Global && t.SouceReadModuleId != null && t.JudgeVisitTaskId != null && t.JudgeVisitTask.ReadingTaskState == ReadingTaskState.HaveSigned).Select(t => t.SouceReadModuleId).Distinct().Count(),
|
||||
|
||||
JudgeAgreeCount = g.Where(t => t.ReadingCategory == ReadingCategory.Global && t.JudgeVisitTaskId != null
|
||||
&& t.JudgeVisitTask.JudgeResultTaskId == t.Id && t.JudgeVisitTask.ReadingTaskState == ReadingTaskState.HaveSigned)
|
||||
.Select(t => t.SouceReadModuleId).Distinct().Count(),
|
||||
|
||||
}).ToList();
|
||||
|
||||
#endregion
|
||||
}
|
||||
|
||||
exportInfo.DoctorPeriodStatList = doctor2List;
|
||||
|
||||
return await ExcelExportHelper.DataExportAsync(StaticData.Export.ReadingPeriodJudgeRatio_Export, exportInfo, $"{exportInfo.ResearchProgramNo}_{exportInfo.CriterionName}", _commonDocumentRepository, _hostEnvironment);
|
||||
|
||||
|
|
Loading…
Reference in New Issue