HIR dir 修改
continuous-integration/drone/push Build is passing Details

Test_HIR_Net8
hang 2026-01-20 09:30:09 +08:00
parent af691d155d
commit 179017fa2c
2 changed files with 10 additions and 3 deletions

View File

@ -57,6 +57,8 @@ namespace IRaCIS.Core.Application.Helper
int index = 1;
// 全局关闭所有 VR 字段验证
var studyUid = list.FirstOrDefault()?.StudyInstanceUid;
var dicomDir = new DicomDirectory();
foreach (var item in list.OrderBy(t => t.SeriesNumber).ThenBy(t => t.InstanceNumber))
@ -129,7 +131,8 @@ namespace IRaCIS.Core.Application.Helper
var relativePath = await _oSSService.UploadToOSSAsync(memoryStream, ossFolder, "DICOMDIR", true);
dic.Add("DICOMDIR", relativePath.Split('/').Last());
dic.Add($"{studyUid}_DICOMDIR", relativePath.Split('/').Last());
}
//清理临时文件

View File

@ -3370,13 +3370,15 @@ namespace IRaCIS.Application.Services
foreach (var item in list.GroupBy(t => new { t.StudyInstanceUid, t.DicomStudyId }))
{
var studyUid = item.Key.StudyInstanceUid;
var ossFolder = $"DicomDIR/{item.Key.StudyInstanceUid}";
var isSucess = await SafeBussinessHelper.RunAsync(async () => await DicomDIRHelper.GenerateStudyDIRAndUploadAsync(item.ToList(), dirDic, ossFolder, _oSSService));
if (isSucess)
{
await _SCPStudyRepository.BatchUpdateNoTrackingAsync(t => t.Id == item.Key.DicomStudyId, u => new SCPStudy() { StudyDIRPath = $"/{ossFolder}/{dirDic["DICOMDIR"]}" });
await _SCPStudyRepository.BatchUpdateNoTrackingAsync(t => t.Id == item.Key.DicomStudyId, u => new SCPStudy() { StudyDIRPath = $"/{ossFolder}/{dirDic[$"{studyUid}_DICOMDIR"]}" });
}
}
@ -3515,6 +3517,8 @@ namespace IRaCIS.Application.Services
foreach (var item in list.GroupBy(t => new { t.StudyInstanceUid, t.DicomStudyId, t.SubjectVisitId, t.TrialId, t.SubjectId }))
{
var studyUid = item.Key.StudyInstanceUid;
var ossFolder = $"{item.Key.TrialId}/Image/{item.Key.SubjectId}/{item.Key.SubjectVisitId}/{item.Key.StudyInstanceUid}";
var isSucess = await SafeBussinessHelper.RunAsync(async () => await DicomDIRHelper.GenerateStudyDIRAndUploadAsync(item.ToList(), dirDic, ossFolder, _oSSService));
@ -3522,7 +3526,7 @@ namespace IRaCIS.Application.Services
if (isSucess)
{
await _dicomStudyRepository.BatchUpdateNoTrackingAsync(t => t.Id == item.Key.DicomStudyId, u => new DicomStudy() { StudyDIRPath = $"/{ossFolder}/{dirDic["DICOMDIR"]}" });
await _dicomStudyRepository.BatchUpdateNoTrackingAsync(t => t.Id == item.Key.DicomStudyId, u => new DicomStudy() { StudyDIRPath = $"/{ossFolder}/{dirDic[$"{studyUid}_DICOMDIR"]}" });
}
}