增加影像重传导表
continuous-integration/drone/push Build is passing Details

Uat_IRC_Net8
hang 2025-07-29 17:25:38 +08:00
parent 8e2477c19d
commit 62789f4cd8
5 changed files with 61 additions and 5 deletions

View File

@ -735,6 +735,15 @@
<param name="_trialRepository"></param>
<returns></returns>
</member>
<member name="M:IRaCIS.Core.Application.Service.Common.ExcelExportService.GetImageBackList_Export(IRaCIS.Core.Application.Contracts.ImageBackQueryDto,IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SubjectVisitImageBackRecord},IRaCIS.Application.Interfaces.IDictionaryService)">
<summary>
重传申请导表
</summary>
<param name="inQuery"></param>
<param name="_subjectVisitImageBackRecordReposiotry"></param>
<param name="_dictionaryService"></param>
<returns></returns>
</member>
<member name="M:IRaCIS.Core.Application.Service.Common.ExcelExportService.GetSysDocumentConfirmList_Export(IRaCIS.Core.Application.Contracts.SystemDocQuery,IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SystemDocument},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.IdentityUser},IRaCIS.Application.Interfaces.IDictionaryService)">
getSysDocumentConfirmList 系统文档培训查询
@ -2169,7 +2178,7 @@
</summary>
<returns></returns>
</member>
<member name="M:IRaCIS.Core.Application.Service.ImageAndDoc.StudyService.Item(System.Guid)">
<member name="M:IRaCIS.Core.Application.Service.ImageAndDoc.StudyService.Item(System.Guid,System.Nullable{System.Boolean})">
<summary> 指定资源Id获取Dicom检查信息 </summary>
<param name="studyId"> Dicom检查的Id </param>
</member>
@ -17582,7 +17591,7 @@
<param name="tpCode"></param>
<param name="key"></param>
</member>
<member name="M:IRaCIS.Core.Application.Services.SeriesService.List(System.Guid,System.Nullable{System.Boolean})">
<member name="M:IRaCIS.Core.Application.Services.SeriesService.List(System.Guid,System.Nullable{System.Boolean},System.Nullable{System.Boolean})">
<summary> 指定资源Id获取Dicom检查所属序列信息列表 </summary>
<param name="studyId"> Dicom检查的Id </param>
<param name="isReading"></param>
@ -17981,7 +17990,7 @@
<param name="inDto"></param>
<returns></returns>
</member>
<member name="M:IRaCIS.Core.Application.Image.QA.QCOperationService.GetNextIQCQuality(IRaCIS.Core.Application.Contracts.GetNextIQCQualityInDto)">
<member name="M:IRaCIS.Core.Application.Image.QA.QCOperationService.GetNextIQCQuality(IRaCIS.Core.Application.Contracts.GetNextIQCQualityInDto,System.Boolean)">
<summary>
获取下一个质控任务
</summary>

View File

@ -37,6 +37,7 @@ namespace IRaCIS.Core.Application.Service.Common
IRepository<DicomStudy> _dicomStudyRepository,
IRepository<QCChallenge> _qcChallengeRepository,
IRepository<ReadModule> _readModuleRepository,
IRepository<Trial> _trialRepository,
IRepository<NoneDicomStudy> _noneDicomStudyRepository,
IRepository<StudyMonitor> _studyMonitorRepository,
IRepository<CommonDocument> _commonDocumentRepository,
@ -398,6 +399,46 @@ namespace IRaCIS.Core.Application.Service.Common
#region 导表查询
/// <summary>
/// 重传申请导表
/// </summary>
/// <param name="inQuery"></param>
/// <param name="_subjectVisitImageBackRecordReposiotry"></param>
/// <param name="_dictionaryService"></param>
/// <returns></returns>
[HttpPost]
public async Task<IActionResult> GetImageBackList_Export(ImageBackQueryDto inQuery,
[FromServices] IRepository<SubjectVisitImageBackRecord> _subjectVisitImageBackRecordReposiotry, [FromServices] IDictionaryService _dictionaryService)
{
var svExpression = QCCommon.GetSubjectVisitImageBackRecordFilter(inQuery.VisitPlanArray);
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.VisitPlanArray != null && inQuery.VisitPlanArray?.Length > 0, svExpression)
.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)
.WhereIf(inQuery.ApplyEndTime != null, t => t.CreateTime <= inQuery.ApplyEndTime)
.WhereIf(inQuery.ImageBackState != null, t => t.ImageBackState == inQuery.ImageBackState)
.WhereIf(inQuery.AuditBeginTime != null, t => t.AuditTime >= inQuery.AuditBeginTime)
.WhereIf(inQuery.AuditEndTime != null, t => t.AuditTime <= inQuery.AuditEndTime)
.ProjectTo<ImageBackViewModel>(_mapper.ConfigurationProvider);
var defalutSortArray = new string[] { nameof(ImageBackViewModel.IsUrgent) + " desc", nameof(ImageBackViewModel.SubjectCode), nameof(ImageBackViewModel.VisitNum) };
var list = await query.OrderByDescending(t=>t.IsUrgent).ThenBy(t=>t.SubjectCode).ThenBy(t=>t.VisitNum).ToListAsync();
var exportInfo = (await _trialRepository.Where(t => t.Id == inQuery.TrialId).IgnoreQueryFilters().ProjectTo<ExcelExportInfo>(_mapper.ConfigurationProvider).FirstOrDefaultAsync()).IfNullThrowException();
exportInfo.List = ExportExcelConverterDate.ConvertToClientTimeInObject(list, _userInfo.TimeZoneId);
exportInfo.CurrentTime = ExportExcelConverterDate.DateTimeInternationalToString(DateTime.Now, _userInfo.TimeZoneId);
return await ExcelExportHelper.DataExportAsync(StaticData.Export.TrialImageBackRecordList_Export, exportInfo, $"{exportInfo.ResearchProgramNo}", _commonDocumentRepository, _hostEnvironment, _dictionaryService, typeof(ImageBackViewModel));
}
///getSysDocumentConfirmList 系统文档培训查询
///
[HttpPost]

View File

@ -1775,12 +1775,15 @@ namespace IRaCIS.Core.Application.Contracts
public DateTime? AuditTime { get; set; }
public Guid SubjectVisitId { get; set; }
[DictionaryTranslateAttribute("ImageBackApplyEnum")]
public ImageBackApplyEnum ApplyUserRole { get; set; }
[DictionaryTranslateAttribute("ImageBackApplyEnum")]
public ImageBackStateEnum ImageBackState { get; set; }
public DateTime? SubmitTime { get; set; }
[DictionaryTranslateAttribute("YesOrNo")]
public bool IsUrgent { get; set; }
public string VisitName { get; set; } = string.Empty;
@ -1789,8 +1792,8 @@ namespace IRaCIS.Core.Application.Contracts
public DateTime? LatestScanDate { get; set; }
public decimal VisitNum { get; set; }
[DictionaryTranslateAttribute("Subject_Visit_Status")]
public SubjectStatus SubjectStatus { get; set; }
public string SubjectCode { get; set; } = String.Empty;
public String TrialSiteCode { get; set; } = String.Empty;

View File

@ -756,6 +756,7 @@ namespace IRaCIS.Core.Application.Service
CreateMap<SubjectVisitImageBackRecord, ImageBackViewModel>()
.ForMember(d => d.SubjectCode, u => u.MapFrom(s => s.SubjectVisit.Subject.Code))
.ForMember(d => d.SubjectStatus, u => u.MapFrom(s => s.SubjectVisit.Subject.Status))
.ForMember(d => d.IsSubjectQuit, u => u.MapFrom(s => s.SubjectVisit.Subject.IsSubjectQuit))
.ForMember(d => d.VisitNum, u => u.MapFrom(t => t.SubjectVisit.VisitNum))
.ForMember(d => d.TrialSiteCode, u => u.MapFrom(s => s.SubjectVisit.TrialSite.TrialSiteCode))

View File

@ -302,6 +302,8 @@ public static class StaticData
public const string TrialQCResult_Export = "TrialQCResult_Export";
public const string TrialImageBackRecordList_Export = "TrialImageBackRecordList_Export";
}