维护dicom 数据大小方法
continuous-integration/drone/push Build is passing Details

Uat_IRC_Net8
hang 2025-07-18 16:57:03 +08:00
parent 72e8106516
commit f191da2df3
1 changed files with 28 additions and 2 deletions

View File

@ -385,6 +385,32 @@ namespace IRaCIS.Core.Application.Service
return ResponseOutput.Ok(); return ResponseOutput.Ok();
} }
[AllowAnonymous]
public async Task<IResponseOutput> DealDicomFileSize([FromServices] IOSSService _oSSService, [FromServices] IRepository<DicomInstance> _dicomInstanceRepository)
{
var instanceList = _dicomInstanceRepository.Where(t => t.TrialId == Guid.Parse("01000000-AC13-0242-3AE4-08DC9B0495C6"))
.Where(t => t.FileSize == 0 || t.FileSize == null)
.Select(t => new { t.Path, t.Id }).ToList();
foreach (var item in instanceList)
{
try
{
var fileSize = await _oSSService.GetObjectSizeAsync(item.Path);
await _dicomInstanceRepository.BatchUpdateNoTrackingAsync(t => t.Id == item.Id, u => new DicomInstance() { FileSize = fileSize });
}
catch (Exception ex)
{
Console.WriteLine(item.Path + " : " + ex.Message);
}
}
return ResponseOutput.Ok();
}
/// <summary> /// <summary>
/// 非dicom 临床数据 /// 非dicom 临床数据
/// </summary> /// </summary>