diff --git a/IRaCIS.Core.Application/Service/QC/QCListService.cs b/IRaCIS.Core.Application/Service/QC/QCListService.cs
index 3bae00ba0..1350ca24c 100644
--- a/IRaCIS.Core.Application/Service/QC/QCListService.cs
+++ b/IRaCIS.Core.Application/Service/QC/QCListService.cs
@@ -7,6 +7,7 @@ using Microsoft.AspNetCore.Authorization;
using IRaCIS.Application.Interfaces;
using IRaCIS.Application.Contracts;
using IRaCIS.Core.Application.ViewModel;
+using IRaCIS.Core.Application.Service.Reading.Dto;
namespace IRaCIS.Core.Application.Image.QA
{
@@ -158,6 +159,38 @@ namespace IRaCIS.Core.Application.Image.QA
+ ///
+ /// 受试者 阅片期 进度表 导出
+ ///
+ ///
+ ///
+ ///
+ ///
+ public async Task GetSubjectReadingPeriod_Export(GetReadModuleDto dto,
+ [FromServices] IRepository _commonDocumentRepository,
+ [FromServices] IDictionaryService _dictionaryService)
+ {
+
+
+ var list = await _repository.Where(u => u.TrialId == dto.TrialId)
+ .WhereIf(dto.SubjectId != null, x => x.Id == dto.SubjectId)
+ .WhereIf(dto.TrialSiteCode != null && dto.TrialSiteCode != string.Empty, x => x.TrialSite.TrialSiteCode == dto.TrialSiteCode)
+ .WhereIf(dto.SubjectCode != null && dto.SubjectCode != string.Empty, x => x.Code == dto.SubjectCode)
+ //.WhereIf(dto.ReadingStatus != null, x => x.ReadingStatus == dto.ReadingStatus)
+
+ .ProjectTo(_mapper.ConfigurationProvider).ToListAsync();
+
+
+ list = list.OrderBy(t => t.TrialSiteCode).ThenBy(t => t.Code).ToList();
+
+ var exportInfo = (await _trialRepository.Where(t => t.Id == param.TrialId).IgnoreQueryFilters().ProjectTo(_mapper.ConfigurationProvider).FirstOrDefaultAsync()).IfNullThrowException();
+
+ exportInfo.List = list;
+
+ return await ExcelExportHelper.DataExportAsync(StaticData.Export.TrialSubjectList_Export, exportInfo, "", _commonDocumentRepository, _hostEnvironment, _dictionaryService, typeof(SubjectExportDTO));
+ }
+
+
///
/// 阅片期信息表
///