Uat_Study
parent
7ce27fe780
commit
d55edb7741
|
@ -3799,6 +3799,21 @@
|
|||
1 Mint、2 PACS
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:IRaCIS.Core.Application.Contracts.TrialProcessConfig.ArbitrationRule">
|
||||
<summary>
|
||||
仲裁规则
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:IRaCIS.Core.Application.Contracts.TrialProcessConfig.IsReadingShowSubjectInfo">
|
||||
<summary>
|
||||
阅片是否显示受试者信息
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:IRaCIS.Core.Application.Contracts.TrialProcessConfig.IsReadingShowPreviousResults">
|
||||
<summary>
|
||||
阅片是否显示既往结果
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:IRaCIS.Core.Application.Contracts.TrialBasicConfigView.QCProcessEnum">
|
||||
<summary>
|
||||
QC流程 0 不审,1 单审,2双审
|
||||
|
@ -3894,6 +3909,11 @@
|
|||
阅片信息签名时间
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:IRaCIS.Core.Application.Contracts.GetTrialReadingInfoOutDto.IsArbitrationReading">
|
||||
<summary>
|
||||
仲裁阅片
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:IRaCIS.Core.Application.Contracts.ReadingCriterionPageDto.Id">
|
||||
<summary>
|
||||
pageId
|
||||
|
|
|
@ -337,25 +337,44 @@ namespace IRaCIS.Core.Application.Service
|
|||
var isReadingTaskViewInOrder = await _trialRepository.Where(x => x.Id == iRUnReadSubjectQuery.TrialId).Select(x => x.IsReadingTaskViewInOrder).FirstOrDefaultAsync();
|
||||
if (isReadingTaskViewInOrder)
|
||||
{
|
||||
var subjectQuery = _subjectRepository.Where(t => t.TrialId == trialId)
|
||||
.Where(t => t.SubjectDoctorList.Any(t => t.DoctorUserId == _userInfo.Id))
|
||||
.WhereIf(!string.IsNullOrEmpty(iRUnReadSubjectQuery.SubjectCode), t => t.Code.Contains(iRUnReadSubjectQuery.SubjectCode))
|
||||
.Select(s => new IRUnReadSubjectView()
|
||||
{
|
||||
SubjectId = s.Id,
|
||||
SubjectCode = s.Code,
|
||||
UnReadTaskCount = s.SubjectVisitTaskList.Count(t => t.ReadingTaskState != ReadingTaskState.HaveSigned && t.DoctorUserId == _userInfo.Id),
|
||||
UnReadTaskList = s.SubjectVisitTaskList.Where(t => t.ReadingTaskState != ReadingTaskState.HaveSigned && t.DoctorUserId == _userInfo.Id)
|
||||
.Select(u => new IRUnreadTaskView() { Id = u.Id, IsUrgent = u.IsUrgent, SuggesteFinishedTime = u.SuggesteFinishedTime }).ToList(),
|
||||
})
|
||||
.Where(t => t.UnReadTaskCount > 0);
|
||||
// var subjectQuery = _subjectRepository.Where(t => t.TrialId == trialId)
|
||||
//.Where(t => t.SubjectDoctorList.Any(t => t.DoctorUserId == _userInfo.Id))
|
||||
//.WhereIf(!string.IsNullOrEmpty(iRUnReadSubjectQuery.SubjectCode), t => t.Code.Contains(iRUnReadSubjectQuery.SubjectCode))
|
||||
//.Select(s => new IRUnReadSubjectView()
|
||||
//{
|
||||
// SubjectId = s.Id,
|
||||
// SubjectCode = s.Code,
|
||||
// UnReadTaskCount = s.SubjectVisitTaskList.Count(t => t.ReadingTaskState != ReadingTaskState.HaveSigned && t.DoctorUserId == _userInfo.Id),
|
||||
// UnReadTaskList = s.SubjectVisitTaskList.Where(t => t.ReadingTaskState != ReadingTaskState.HaveSigned && t.DoctorUserId == _userInfo.Id)
|
||||
// .Select(u => new IRUnreadTaskView() { Id = u.Id, IsUrgent = u.IsUrgent, SuggesteFinishedTime = u.SuggesteFinishedTime }).ToList(),
|
||||
//})
|
||||
// .Where(t => t.UnReadTaskCount > 0);
|
||||
|
||||
|
||||
//var visitQuery=_visitTaskRepository.Where(x=>x.TrialId==trialId&&x.DoctorUserId== _userInfo.Id)
|
||||
// .GroupBy(x=> new )
|
||||
var visitGroupQuery = _visitTaskRepository.Where(x => x.TrialId == trialId && x.DoctorUserId == _userInfo.Id)
|
||||
.Where(t => t.ReadingTaskState != ReadingTaskState.HaveSigned)
|
||||
.GroupBy(x => new { x.SubjectId, x.Subject.Code, x.BlindSubjectCode });
|
||||
|
||||
var visitTaskQuery = visitGroupQuery.Select(x=> new IRUnReadSubjectView() {
|
||||
SubjectId=x.Key.SubjectId,
|
||||
SubjectCode=x.Key.BlindSubjectCode==null?x.Key.Code: x.Key.BlindSubjectCode,
|
||||
UnReadTaskCount=x.Count(),
|
||||
UnReadTaskList=x.Select(u => new IRUnreadTaskView() { Id = u.Id, IsUrgent = u.IsUrgent, SuggesteFinishedTime = u.SuggesteFinishedTime }).ToList(),
|
||||
});
|
||||
|
||||
var result = await subjectQuery.ToPagedListAsync(iRUnReadSubjectQuery.PageIndex, iRUnReadSubjectQuery.PageSize, String.IsNullOrEmpty(iRUnReadSubjectQuery.SortField) ? nameof(IRUnReadSubjectView.SubjectId) : iRUnReadSubjectQuery.SortField, iRUnReadSubjectQuery.Asc);
|
||||
var totalCount = visitGroupQuery.Count();
|
||||
var currentPageData = await visitTaskQuery.OrderBy(x => x.SubjectCode).Skip((iRUnReadSubjectQuery.PageIndex - 1) * iRUnReadSubjectQuery.PageSize).Take(iRUnReadSubjectQuery.PageSize).ToListAsync();
|
||||
|
||||
var result = new PageOutput<IRUnReadSubjectView>()
|
||||
{
|
||||
PageSize = iRUnReadSubjectQuery.PageSize,
|
||||
PageIndex = iRUnReadSubjectQuery.PageIndex,
|
||||
TotalCount = totalCount,
|
||||
CurrentPageData= currentPageData,
|
||||
};
|
||||
|
||||
/// 封装的方法有问题
|
||||
//var result = await visitQuery.ToPagedListAsync(iRUnReadSubjectQuery.PageIndex, iRUnReadSubjectQuery.PageSize, String.IsNullOrEmpty(iRUnReadSubjectQuery.SortField) ? nameof(IRUnReadSubjectView.SubjectId) : iRUnReadSubjectQuery.SortField, iRUnReadSubjectQuery.Asc);
|
||||
return (result, new
|
||||
{
|
||||
RandomReadInfo = new IRUnReadOutDto(),
|
||||
|
|
Loading…
Reference in New Issue