测试课题组信息传输

Test_HIR_Net8
hang 2025-08-12 15:03:39 +08:00
parent 2778ecb74a
commit 39c07ecc4f
2 changed files with 26 additions and 6 deletions

View File

@ -22,6 +22,7 @@ using SharpCompress.Common;
using SixLabors.ImageSharp.Formats.Jpeg;
using IRaCIS.Core.Infrastructure;
using IRaCIS.Core.Infrastructure.Extention;
using Newtonsoft.Json;
namespace IRaCIS.Core.SCP.Service
{
@ -229,6 +230,17 @@ namespace IRaCIS.Core.SCP.Service
public async Task<DicomCStoreResponse> OnCStoreRequestAsync(DicomCStoreRequest request)
{
#region 测试接收课题组信息
var privateTag = new DicomTag(0x9999, 0x1001, "PRJGROUPS");
var groupIdsJson = request.Dataset.GetSingleValueOrDefault<string>(privateTag, string.Empty);
var projectGroupIds = JsonConvert.DeserializeObject<List<string>>(groupIdsJson);
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);

View File

@ -505,7 +505,7 @@ namespace IRaCIS.Application.Services
else
{
//"激活码信息有误!"
return ResponseOutput.NotOk(_localizer["Trial_ActivationCodeError"] );
return ResponseOutput.NotOk(_localizer["Trial_ActivationCodeError"]);
}
}
@ -576,7 +576,7 @@ namespace IRaCIS.Application.Services
else
{
// 激活信息反序列化错误
return ResponseOutput.NotOk(_localizer["Trial_ActivationCodeDeserializeError"] );
return ResponseOutput.NotOk(_localizer["Trial_ActivationCodeDeserializeError"]);
}
@ -1315,7 +1315,7 @@ namespace IRaCIS.Application.Services
}
else
{
var identification = find.Status == SubjectStatus.OnVisit ? "Patient_TrialExistSubjectCodeError1" : "Patient_TrialExistSubjectCodeError2";
var identification = find.Status == SubjectStatus.OnVisit ? "Patient_TrialExistSubjectCodeError1" : "Patient_TrialExistSubjectCodeError2";
return ResponseOutput.NotOk(_localizer[identification, find.Code]);
//subjectId = find.Id;
}
@ -1799,7 +1799,7 @@ namespace IRaCIS.Application.Services
if (!arraysEqual)
{
//_localizer[$"{g.Key.SubjectCode}所提交的访视中的检查时间,不符合后续访视的检查时间比前序检查的时间大的要求"]
return ResponseOutput.NotOk(_localizer["Patient_SubjectVisitSubmmitTimeVerifyError", g.Key.SubjectCode] );
return ResponseOutput.NotOk(_localizer["Patient_SubjectVisitSubmmitTimeVerifyError", g.Key.SubjectCode]);
}
if (DateTime.Now < studyTimeOrderList.Max(t => t.StudyTime))
@ -3407,9 +3407,17 @@ namespace IRaCIS.Application.Services
cmoveRequest.OnResponseReceived += responseDelegate;
#region 测试私有tag 传输信息
var privateTag = new DicomTag(0x9999, 0x1001, "PRJGROUPS");
var groupIdsJson = (new List<string> { "KTGroup1", "KTGroup2" }).ToJson();
cmoveRequest.Dataset.Add(new DicomLongString(privateTag, groupIdsJson));
#endregion
cmoveRequestList.Add(cmoveRequest);
_logger.LogInformation($"执行C-Move StudyInstanceUID{item}");
_logger.LogInformation($"执行C-Move StudyInstanceUID{item},携带课题组信息:{groupIdsJson}");
}
else