Merge branch 'Test_HIR_Net8' of https://gitea.frp.extimaging.com/XCKJ/irc-netcore-api into Test_HIR_Net8
continuous-integration/drone/push Build is passing Details

Test_HIR_Net8
he 2025-09-17 09:08:19 +08:00
commit 29093e5617
2 changed files with 11 additions and 18 deletions

View File

@ -47,6 +47,8 @@ namespace IRaCIS.Core.SCP.Service
private List<Guid> _SCPStudyIdList { get; set; } = new List<Guid>();
private List<string> _StudyInstanceUIdList { get; set; } = new List<string>();
private SCPImageUpload _upload { get; set; }
public HospitalGroup CurrentHospitalGroup { get; set; }
@ -167,7 +169,7 @@ namespace IRaCIS.Core.SCP.Service
var _SCPImageUploadRepository = _serviceProvider.GetService<IRepository<SCPImageUpload>>();
_upload.EndTime = DateTime.Now;
_upload.StudyCount = _SCPStudyIdList.Count;
_upload.StudyCount = _StudyInstanceUIdList.Count;
//可能是测试echo 导致记录了
await _SCPImageUploadRepository.AddAsync(_upload, _upload.FileCount > 0 ? true : false);
@ -254,23 +256,6 @@ namespace IRaCIS.Core.SCP.Service
public async Task<DicomCStoreResponse> OnCStoreRequestAsync(DicomCStoreRequest request)
{
#region 测试接收课题组信息 这里无法获取
//var privateTag = new DicomTag(0x9999, 0x1001);
//var groupIdsJsonStr = request.Dataset.GetSingleValueOrDefault<string>(privateTag, string.Empty);
//if (!string.IsNullOrEmpty(groupIdsJsonStr))
//{
// var projectGroupIds = JsonConvert.DeserializeObject<List<string>>(groupIdsJsonStr);
// Log.Logger.Information("收到课题组信息: " + string.Join(", ", projectGroupIds));
//}
#endregion
string studyInstanceUid = request.Dataset.GetSingleValueOrDefault(DicomTag.StudyInstanceUID, string.Empty);
string seriesInstanceUid = request.Dataset.GetSingleValueOrDefault(DicomTag.SeriesInstanceUID, string.Empty);
@ -283,6 +268,11 @@ namespace IRaCIS.Core.SCP.Service
return new DicomCStoreResponse(request, DicomStatus.Success);
}
if (!_StudyInstanceUIdList.Contains(studyInstanceUid))
{
_StudyInstanceUIdList.Add(studyInstanceUid);
}
Guid seriesId = IdentifierHelper.CreateGuid(studyInstanceUid, seriesInstanceUid);
Guid instanceId = IdentifierHelper.CreateGuid(studyInstanceUid, seriesInstanceUid, sopInstanceUid);

View File

@ -219,9 +219,12 @@ namespace IRaCIS.Core.SCP.Service
findStudy.DicomStudyDate = dataset.GetSingleValueOrDefault(DicomTag.StudyDate, string.Empty);
findStudy.DicomStudyTime = dataset.GetSingleValueOrDefault(DicomTag.StudyTime, string.Empty);
findStudy.CalledAE = calledAE;
findStudy.CallingAE = callingAE;
findStudy.PatientName = dataset.GetSingleValueOrDefault(DicomTag.PatientName, string.Empty);
findStudy.PatientSex = dataset.GetSingleValueOrDefault(DicomTag.PatientSex, string.Empty);
findStudy.PatientAge = dataset.GetSingleValueOrDefault(DicomTag.PatientAge, string.Empty);
await _patientRepository.BatchUpdateNoTrackingAsync(t => t.Id == findStudy.PatientId, u => new SCPPatient() { LatestPushTime = DateTime.Now });
}