修改HIR 匿名化逻辑2
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/push Build is passing
Details
parent
972b18e4df
commit
ccb7d5edc0
|
|
@ -41,7 +41,7 @@ namespace IRaCIS.Core.SCP.Service
|
||||||
|
|
||||||
public bool IsForwardImageMultiThread { get; set; }
|
public bool IsForwardImageMultiThread { get; set; }
|
||||||
|
|
||||||
|
public bool IsUploadImageAnonymization { get; set; }
|
||||||
|
|
||||||
public List<string> CalledAEList { get; set; }
|
public List<string> CalledAEList { get; set; }
|
||||||
|
|
||||||
|
|
@ -469,57 +469,63 @@ namespace IRaCIS.Core.SCP.Service
|
||||||
|
|
||||||
#region 匿名化
|
#region 匿名化
|
||||||
|
|
||||||
|
if (DicomSCPServiceConfig.IsUploadImageAnonymization)
|
||||||
var anonymizeList = await _fusionCache.GetOrSetAsync(CacheKeys.SystemAnonymization, _ => CacheHelper.GetSystemAnonymizationListAsync(_systemAnonymizationRepository), TimeSpan.FromDays(7));
|
|
||||||
|
|
||||||
|
|
||||||
var fixedFiledList = anonymizeList.Where(t => t.IsFixed).ToList();
|
|
||||||
|
|
||||||
var ircFiledList = anonymizeList.Where(t => t.IsFixed == false).ToList();
|
|
||||||
|
|
||||||
foreach (var item in fixedFiledList)
|
|
||||||
{
|
{
|
||||||
|
|
||||||
var dicomTag = new DicomTag(Convert.ToUInt16(item.Group, 16), Convert.ToUInt16(item.Element, 16));
|
|
||||||
|
|
||||||
dataset.AddOrUpdate(dicomTag, item.ReplaceValue);
|
var anonymizeList = await _fusionCache.GetOrSetAsync(CacheKeys.SystemAnonymization, _ => CacheHelper.GetSystemAnonymizationListAsync(_systemAnonymizationRepository), TimeSpan.FromDays(7));
|
||||||
|
|
||||||
|
|
||||||
|
var fixedFiledList = anonymizeList.Where(t => t.IsFixed).ToList();
|
||||||
|
|
||||||
|
var ircFiledList = anonymizeList.Where(t => t.IsFixed == false).ToList();
|
||||||
|
|
||||||
|
foreach (var item in fixedFiledList)
|
||||||
|
{
|
||||||
|
|
||||||
|
var dicomTag = new DicomTag(Convert.ToUInt16(item.Group, 16), Convert.ToUInt16(item.Element, 16));
|
||||||
|
|
||||||
|
dataset.AddOrUpdate(dicomTag, item.ReplaceValue);
|
||||||
|
}
|
||||||
|
|
||||||
|
foreach (var item in ircFiledList)
|
||||||
|
{
|
||||||
|
|
||||||
|
var dicomTag = new DicomTag(Convert.ToUInt16(item.Group, 16), Convert.ToUInt16(item.Element, 16));
|
||||||
|
|
||||||
|
if (dicomTag == DicomTag.ClinicalTrialProtocolID)
|
||||||
|
{
|
||||||
|
dataset.AddOrUpdate(DicomTag.ClinicalTrialProtocolID, "");
|
||||||
|
|
||||||
|
}
|
||||||
|
if (dicomTag == DicomTag.ClinicalTrialSiteID)
|
||||||
|
{
|
||||||
|
dataset.AddOrUpdate(DicomTag.ClinicalTrialSiteID, "");
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
if (dicomTag == DicomTag.ClinicalTrialSubjectID)
|
||||||
|
{
|
||||||
|
dataset.AddOrUpdate(DicomTag.ClinicalTrialSubjectID, "");
|
||||||
|
|
||||||
|
}
|
||||||
|
if (dicomTag == DicomTag.ClinicalTrialTimePointID)
|
||||||
|
{
|
||||||
|
dataset.AddOrUpdate(DicomTag.ClinicalTrialTimePointID, "");
|
||||||
|
}
|
||||||
|
|
||||||
|
//if (dicomTag == DicomTag.PatientID)
|
||||||
|
//{
|
||||||
|
// var pid = dataset.GetSingleValueOrDefault(DicomTag.PatientID, string.Empty);
|
||||||
|
|
||||||
|
// dataset.AddOrUpdate(DicomTag.PatientID, trialSiteInfo.TrialCode + "_" + pid);
|
||||||
|
|
||||||
|
//}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
foreach (var item in ircFiledList)
|
|
||||||
{
|
|
||||||
|
|
||||||
var dicomTag = new DicomTag(Convert.ToUInt16(item.Group, 16), Convert.ToUInt16(item.Element, 16));
|
|
||||||
|
|
||||||
if (dicomTag == DicomTag.ClinicalTrialProtocolID)
|
|
||||||
{
|
|
||||||
dataset.AddOrUpdate(DicomTag.ClinicalTrialProtocolID, "");
|
|
||||||
|
|
||||||
}
|
|
||||||
if (dicomTag == DicomTag.ClinicalTrialSiteID)
|
|
||||||
{
|
|
||||||
dataset.AddOrUpdate(DicomTag.ClinicalTrialSiteID, "");
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
if (dicomTag == DicomTag.ClinicalTrialSubjectID)
|
|
||||||
{
|
|
||||||
dataset.AddOrUpdate(DicomTag.ClinicalTrialSubjectID, "");
|
|
||||||
|
|
||||||
}
|
|
||||||
if (dicomTag == DicomTag.ClinicalTrialTimePointID)
|
|
||||||
{
|
|
||||||
dataset.AddOrUpdate(DicomTag.ClinicalTrialTimePointID, "");
|
|
||||||
}
|
|
||||||
|
|
||||||
//if (dicomTag == DicomTag.PatientID)
|
|
||||||
//{
|
|
||||||
// var pid = dataset.GetSingleValueOrDefault(DicomTag.PatientID, string.Empty);
|
|
||||||
|
|
||||||
// dataset.AddOrUpdate(DicomTag.PatientID, trialSiteInfo.TrialCode + "_" + pid);
|
|
||||||
|
|
||||||
//}
|
|
||||||
|
|
||||||
}
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -24,9 +24,10 @@
|
||||||
"Hangfire": "Server=106.14.89.110,1435;Database=Test_HIR_Hangfire;User ID=sa;Password=xc@123456;TrustServerCertificate=true"
|
"Hangfire": "Server=106.14.89.110,1435;Database=Test_HIR_Hangfire;User ID=sa;Password=xc@123456;TrustServerCertificate=true"
|
||||||
},
|
},
|
||||||
"DicomSCPServiceConfig": {
|
"DicomSCPServiceConfig": {
|
||||||
|
"IsUploadImageAnonymization": false,
|
||||||
"IsSupportThirdService": true,
|
"IsSupportThirdService": true,
|
||||||
"IsForwardImageMultiThread": true,
|
"IsForwardImageMultiThread": true,
|
||||||
"MultiThreadCount":10,
|
"MultiThreadCount": 10,
|
||||||
"CalledAEList": [
|
"CalledAEList": [
|
||||||
"HIRAE",
|
"HIRAE",
|
||||||
"STORESCP"
|
"STORESCP"
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue