修改查询
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/push Build is passing
Details
parent
5fa12786aa
commit
16e5a0567f
|
|
@ -403,9 +403,9 @@ namespace IRaCIS.Core.Application.ViewModel
|
|||
public class IRUnReadSubjectView
|
||||
{
|
||||
#region HIR
|
||||
public Guid? ClaimUserId { get; set; }
|
||||
public Guid? ClaimUserId => UnReadCanReadTaskList.FirstOrDefault()?.ClaimUserId;
|
||||
|
||||
public string? ClaimUserName { get; set; }
|
||||
public string? ClaimUserName => UnReadCanReadTaskList.FirstOrDefault()?.ClaimUserName;
|
||||
|
||||
public string SubjectName { get; set; }
|
||||
|
||||
|
|
@ -470,6 +470,11 @@ namespace IRaCIS.Core.Application.ViewModel
|
|||
|
||||
public class IRUnreadTaskView
|
||||
{
|
||||
//
|
||||
public Guid? ClaimUserId { get; set; }
|
||||
|
||||
public string? ClaimUserName { get; set; }
|
||||
|
||||
public Guid Id { get; set; }
|
||||
|
||||
public ReadingCategory ReadingCategory { get; set; }
|
||||
|
|
|
|||
|
|
@ -1284,7 +1284,7 @@ public class VisitTaskService(IRepository<VisitTask> _visitTaskRepository,
|
|||
.WhereIf(!string.IsNullOrEmpty(inQuery.SubjectCode), t => (t.Subject.Code.Contains(inQuery.SubjectCode!) && t.IsAnalysisCreate == false) || (t.BlindSubjectCode.Contains(inQuery.SubjectCode!) && t.IsAnalysisCreate));
|
||||
|
||||
|
||||
var visitGroupQuery = visitQuery.GroupBy(x => new { x.SubjectId, x.Subject.Code, x.BlindSubjectCode, x.Subject.ShortName, x.SubjectCriterionClaimUserId, x.SubjectCriterionClaimUser.UserName });
|
||||
var visitGroupQuery = visitQuery.GroupBy(x => new { x.SubjectId, x.Subject.Code, x.BlindSubjectCode, x.Subject.ShortName/*, x.SubjectCriterionClaimUserId, x.SubjectCriterionClaimUser.UserName*/ });
|
||||
|
||||
var visitTaskQuery = visitGroupQuery.Select(x => new IRUnReadSubjectView()
|
||||
{
|
||||
|
|
@ -1292,8 +1292,8 @@ public class VisitTaskService(IRepository<VisitTask> _visitTaskRepository,
|
|||
SubjectCode = x.Key.BlindSubjectCode == string.Empty ? x.Key.Code : x.Key.BlindSubjectCode,
|
||||
SubjectName = x.Key.ShortName,
|
||||
|
||||
ClaimUserId = x.Key.SubjectCriterionClaimUserId,
|
||||
ClaimUserName = x.Key.UserName,
|
||||
//ClaimUserId = x.Key.SubjectCriterionClaimUserId,
|
||||
//ClaimUserName = x.Key.UserName,
|
||||
|
||||
SuggesteFinishedTime = x.Where(y => y.TrialReadingCriterionId == trialReadingCriterionId && y.ReadingTaskState != ReadingTaskState.HaveSigned).Min(x => x.SuggesteFinishedTime),
|
||||
|
||||
|
|
@ -1313,6 +1313,8 @@ public class VisitTaskService(IRepository<VisitTask> _visitTaskRepository,
|
|||
.OrderBy(x => x.VisitTaskNum)
|
||||
.Select(u => new IRUnreadTaskView()
|
||||
{
|
||||
ClaimUserId = u.SubjectCriterionClaimUserId,
|
||||
ClaimUserName = u.SubjectCriterionClaimUser.UserName,
|
||||
Id = u.Id,
|
||||
IsUrgent = u.IsUrgent,
|
||||
VisitNum = u.VisitTaskNum,
|
||||
|
|
@ -1340,26 +1342,27 @@ public class VisitTaskService(IRepository<VisitTask> _visitTaskRepository,
|
|||
|
||||
ExistReadingApply = x.Any(y => (y.ReReadingApplyState == ReReadingApplyState.DocotorHaveApplyed && y.TrialReadingCriterionId == trialReadingCriterionId) || y.ReReadingApplyState == ReReadingApplyState.TrialGroupHaveApplyed),
|
||||
|
||||
//查出所有未读的 未读的可读的 在这个列表基础上 过滤下 y.IsFrontTaskNeedSignButNotSign==false && (y.IsNeedClinicalDataSign == false || y.IsClinicalDataSign == true) 这样容易排错 确认这三个字段是否维护有误
|
||||
UnReadTaskList = x.Where(y => y.TrialReadingCriterionId == trialReadingCriterionId && y.ReadingTaskState != ReadingTaskState.HaveSigned).OrderBy(x => x.VisitTaskNum)
|
||||
.Select(u => new IRUnreadTaskView()
|
||||
{
|
||||
Id = u.Id,
|
||||
IsUrgent = u.IsUrgent,
|
||||
VisitNum = u.VisitTaskNum,
|
||||
TaskBlindName = u.TaskBlindName,
|
||||
VisistId = u.SourceSubjectVisitId,
|
||||
SuggesteFinishedTime = u.SuggesteFinishedTime,
|
||||
ReadingCategory = u.ReadingCategory,
|
||||
IsAnalysisCreate = u.IsAnalysisCreate,
|
||||
ArmEnum = u.ArmEnum,
|
||||
TrialReadingCriterionId = u.TrialReadingCriterionId,
|
||||
IsNeedClinicalDataSign = u.IsNeedClinicalDataSign,
|
||||
IsClinicalDataSign = u.IsClinicalDataSign,
|
||||
IsFrontTaskNeedSignButNotSign = u.IsFrontTaskNeedSignButNotSign,
|
||||
EvaluateProgressEnum = u.EvaluateProgressEnum
|
||||
})
|
||||
.ToList(),
|
||||
////查出所有未读的 未读的可读的 在这个列表基础上 过滤下 y.IsFrontTaskNeedSignButNotSign==false && (y.IsNeedClinicalDataSign == false || y.IsClinicalDataSign == true) 这样容易排错 确认这三个字段是否维护有误
|
||||
//UnReadTaskList = x.Where(y => y.TrialReadingCriterionId == trialReadingCriterionId && y.ReadingTaskState != ReadingTaskState.HaveSigned).OrderBy(x => x.VisitTaskNum)
|
||||
//.Select(u => new IRUnreadTaskView()
|
||||
//{
|
||||
// Id = u.Id,
|
||||
// IsUrgent = u.IsUrgent,
|
||||
// VisitNum = u.VisitTaskNum,
|
||||
// TaskBlindName = u.TaskBlindName,
|
||||
// VisistId = u.SourceSubjectVisitId,
|
||||
// SuggesteFinishedTime = u.SuggesteFinishedTime,
|
||||
// ReadingCategory = u.ReadingCategory,
|
||||
// IsAnalysisCreate = u.IsAnalysisCreate,
|
||||
// ArmEnum = u.ArmEnum,
|
||||
// TrialReadingCriterionId = u.TrialReadingCriterionId,
|
||||
// IsNeedClinicalDataSign = u.IsNeedClinicalDataSign,
|
||||
// IsClinicalDataSign = u.IsClinicalDataSign,
|
||||
// IsFrontTaskNeedSignButNotSign = u.IsFrontTaskNeedSignButNotSign,
|
||||
// EvaluateProgressEnum = u.EvaluateProgressEnum
|
||||
//})
|
||||
//.ToList(),
|
||||
|
||||
}).Where(x => x.UnReadCanReadTaskCount > 0)/*.OrderBy(x => x.UnReadCanReadTaskCount)*/;
|
||||
// 有序阅片需要找到最小需要
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue