diff --git a/IRaCIS.Core.Application/Service/QC/DTO/QCListViewModel.cs b/IRaCIS.Core.Application/Service/QC/DTO/QCListViewModel.cs index dbde43cc7..4ad45c9af 100644 --- a/IRaCIS.Core.Application/Service/QC/DTO/QCListViewModel.cs +++ b/IRaCIS.Core.Application/Service/QC/DTO/QCListViewModel.cs @@ -18,10 +18,12 @@ namespace IRaCIS.Core.Application.Contracts public Guid? TrialSiteId { get; set; } - public string SubjectCode { get; set; } = string.Empty; + public string? SubjectCode { get; set; } = string.Empty; public Guid? CreateUserId { get; set; } + public string? VisitName { get; set; } + public ImageBackApplyEnum? ApplyUserRole { get; set; } public DateTime? ApplyBeginTime { get; set; } diff --git a/IRaCIS.Core.Application/Service/QC/QCListService.cs b/IRaCIS.Core.Application/Service/QC/QCListService.cs index 98d8a5804..b8932195c 100644 --- a/IRaCIS.Core.Application/Service/QC/QCListService.cs +++ b/IRaCIS.Core.Application/Service/QC/QCListService.cs @@ -28,6 +28,13 @@ namespace IRaCIS.Core.Application.Image.QA #region CRC IQC 直接申请回退影像流程 + public async Task GetImageBackApplyUserList(Guid trialId) + { + var list = _subjectVisitImageBackRecordReposiotry.Where(t => t.SubjectVisit.TrialId == trialId).Select(t => new { t.CreateUserId, t.CreateUserRole.UserName, t.CreateUserRole.FullName }).Distinct().ToList(); + + return ResponseOutput.Ok(list); + } + [HttpPost] public async Task>> GetImageBackList(ImageBackQueryDto inQuery) { @@ -35,6 +42,7 @@ namespace IRaCIS.Core.Application.Image.QA var query = _subjectVisitImageBackRecordReposiotry.Where(t => t.SubjectVisit.TrialId == inQuery.TrialId) .WhereIf(inQuery.TrialSiteId != null, t => t.SubjectVisit.TrialSiteId == inQuery.TrialSiteId) .WhereIf(!string.IsNullOrEmpty(inQuery.SubjectCode), t => t.SubjectVisit.Subject.Code.Contains(inQuery.SubjectCode)) + .WhereIf(!string.IsNullOrEmpty(inQuery.VisitName), t => t.SubjectVisit.VisitName.Contains(inQuery.VisitName)) .WhereIf(inQuery.CreateUserId != null, t => t.CreateUserId == inQuery.CreateUserId) .WhereIf(inQuery.ApplyUserRole != null, t => t.ApplyUserRole == inQuery.ApplyUserRole) .WhereIf(inQuery.ApplyBeginTime != null, t => t.CreateTime >= inQuery.ApplyBeginTime)