diff --git a/IRaCIS.Core.Application/Service/Allocation/DTO/TaskConsistentRuleViewModel.cs b/IRaCIS.Core.Application/Service/Allocation/DTO/TaskConsistentRuleViewModel.cs index 7b08dca6c..c96d5845d 100644 --- a/IRaCIS.Core.Application/Service/Allocation/DTO/TaskConsistentRuleViewModel.cs +++ b/IRaCIS.Core.Application/Service/Allocation/DTO/TaskConsistentRuleViewModel.cs @@ -149,25 +149,25 @@ namespace IRaCIS.Core.Application.ViewModel } - public class DoctorConsistentRuleSubjectView - { - public Guid TrialId => VisitTaskList.Select(t => t.TrialId).First(); - public Guid SiteId => VisitTaskList.Select(t => t.SiteId).First(); + //public class DoctorConsistentRuleSubjectView + //{ + // public Guid TrialId => VisitTaskList.Select(t => t.TrialId).First(); + // public Guid SiteId => VisitTaskList.Select(t => t.SiteId).First(); - public String TrialSiteCode => VisitTaskList.Select(t => t.TrialSiteCode).First(); - public string SubjectCode => VisitTaskList.Select(t => t.SubjectCode).First(); + // public String TrialSiteCode => VisitTaskList.Select(t => t.TrialSiteCode).First(); + // public string SubjectCode => VisitTaskList.Select(t => t.SubjectCode).First(); - public Guid SubjectId { get; set; } + // public Guid SubjectId { get; set; } - public bool IsHaveGeneratedTask { get; set; } - public int? ValidTaskCount { get; set; } + // public bool IsHaveGeneratedTask { get; set; } + // public int? ValidTaskCount { get; set; } - public int? ValidVisitCount => VisitTaskList.Select(t => t.TaskName).Distinct().Count(); + // public int? ValidVisitCount => VisitTaskList.Select(t => t.TaskName).Distinct().Count(); - public List VisitTaskList { get; set; } + // public List VisitTaskList { get; set; } - //public List HistoryDoctorUserList => VisitTaskList.SelectMany(t => t.RelationDoctorUserList).DistinctBy(t=>t.UserId).ToList(); - } + // //public List HistoryDoctorUserList => VisitTaskList.SelectMany(t => t.RelationDoctorUserList).DistinctBy(t=>t.UserId).ToList(); + //} public class VisitTaskSimpleView { @@ -196,6 +196,7 @@ namespace IRaCIS.Core.Application.ViewModel public string SubjectCode { get; set; } = String.Empty; + public UserSimpleInfo DoctorUser { get; set; } public List GlobalVisitTaskList { get; set; } diff --git a/IRaCIS.Core.Application/Service/Allocation/TaskConsistentRuleService.cs b/IRaCIS.Core.Application/Service/Allocation/TaskConsistentRuleService.cs index d7300f6bd..9c56de0c3 100644 --- a/IRaCIS.Core.Application/Service/Allocation/TaskConsistentRuleService.cs +++ b/IRaCIS.Core.Application/Service/Allocation/TaskConsistentRuleService.cs @@ -111,6 +111,8 @@ namespace IRaCIS.Core.Application.Service using (await _mutex.LockAsync()) { + int maxCodeInt = 0; + foreach (var subject in list) { //处理 Subject 编号 @@ -125,8 +127,7 @@ namespace IRaCIS.Core.Application.Service else { var maxCodeStr = _visitTaskRepository.Where(t => t.TrialId == subject.TrialId).OrderByDescending(t => t.BlindSubjectCode).Select(t => t.BlindSubjectCode).FirstOrDefault(); - - int maxCodeInt = 0; + int.TryParse(maxCodeStr, out maxCodeInt); blindSubjectCode = (maxCodeInt + 1).ToString($"D{filterObj.BlindSubjectNumberOfPlaces}"); @@ -264,7 +265,7 @@ namespace IRaCIS.Core.Application.Service if (filterObj == null) { - throw new BusinessValidationFailedException("请先配置后,再进行数据查询"); + return new PageOutput(); } var query = await GetGroupConsistentQueryAsync(filterObj); diff --git a/IRaCIS.Core.Application/Service/Allocation/VisitTaskService.cs b/IRaCIS.Core.Application/Service/Allocation/VisitTaskService.cs index 8a1359579..ffa42b584 100644 --- a/IRaCIS.Core.Application/Service/Allocation/VisitTaskService.cs +++ b/IRaCIS.Core.Application/Service/Allocation/VisitTaskService.cs @@ -179,7 +179,7 @@ namespace IRaCIS.Core.Application.Service public async Task<(PageOutput, object)> GetReadingTaskList(VisitTaskQuery queryVisitTask) { var visitTaskQueryable = _visitTaskRepository.Where(t => t.TrialId == queryVisitTask.TrialId) - .Where(t =>/* t.IsReReadingCreate == false &&*/ t.DoctorUserId != null) + .Where(t => t.IsAnalysisCreate == false && t.DoctorUserId != null) .WhereIf(queryVisitTask.SiteId != null, t => t.Subject.SiteId == queryVisitTask.SiteId) .WhereIf(queryVisitTask.SubjectId != null, t => t.SubjectId == queryVisitTask.SubjectId)