diff --git a/IRaCIS.Core.Application/Service/Reading/Dto/ReadingImageTaskViewModel.cs b/IRaCIS.Core.Application/Service/Reading/Dto/ReadingImageTaskViewModel.cs
index 30a716503..c52a60dcd 100644
--- a/IRaCIS.Core.Application/Service/Reading/Dto/ReadingImageTaskViewModel.cs
+++ b/IRaCIS.Core.Application/Service/Reading/Dto/ReadingImageTaskViewModel.cs
@@ -480,6 +480,22 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
///
public ValueUnit? Unit { get; set; }
+
+ ///
+ /// 数值类型
+ ///
+ public ValueOfType? ValueType { get; set; }
+
+ ///
+ /// 自定义单位
+ ///
+ public string? CustomUnit { get; set; }
+
+ ///
+ /// 类型
+ ///
+ public string? Type { get; set; }
+
public List ChartDataList { get; set; }
@@ -536,6 +552,21 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
public ReportChartType? ChartType { get; set; }
public string GroupName { get; set; }
public ValueUnit? Unit { get; set; }
+
+ ///
+ /// 数值类型
+ ///
+ public ValueOfType? ValueType { get; set; }
+
+ ///
+ /// 自定义单位
+ ///
+ public string? CustomUnit { get; set; }
+
+ ///
+ /// 类型
+ ///
+ public string? Type { get; set; }
public List VisitTaskNameList { get; set; } = new List();
public List LatestScanDateList { get; set; } = new List();
public List ChartDataList { get; set; } = new List();
diff --git a/IRaCIS.Core.Application/Service/ReadingCalculate/General/ReadingCalculateService.cs b/IRaCIS.Core.Application/Service/ReadingCalculate/General/ReadingCalculateService.cs
index 46931c9cb..e99eba672 100644
--- a/IRaCIS.Core.Application/Service/ReadingCalculate/General/ReadingCalculateService.cs
+++ b/IRaCIS.Core.Application/Service/ReadingCalculate/General/ReadingCalculateService.cs
@@ -294,6 +294,9 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
});
result.ChartDataList = reportData.ChartDataList;
result.Unit = reportData.Unit;
+ result.CustomUnit = reportData.CustomUnit;
+ reportData.Type=reportData.Type;
+ result.ValueType=reportData.ValueType;
}
else if (inDto.QuestionId != null)
{
@@ -302,6 +305,9 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
if (question != null)
{
result.Unit = question.Unit;
+ result.Type = question.Type;
+ result.ValueType = question.ValueType;
+ result.CustomUnit = question.CustomUnit;
ReportChartData chartData = new ReportChartData()
{
Name = question.QuestionName,
@@ -330,6 +336,9 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
if (lesion != null)
{
result.Unit = lesion.Unit;
+ result.Type = lesion.Type;
+ result.ValueType = lesion.ValueType;
+ result.CustomUnit = lesion.CustomUnit;
ReportChartData chartData = new ReportChartData()
{
Name = lesion.QuestionName,
@@ -391,11 +400,17 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
{
chartData.Value.Add(item.Childrens.Where(x => x.QuestionMark == QuestionMark.ShortAxis).Select(x => x.Answer[i].Answer).FirstOrDefault());
result.Unit = item.Childrens.Where(x => x.QuestionMark == QuestionMark.MajorAxis).Select(x => x.Unit).FirstOrDefault();
+ result.Type = item.Childrens.Where(x => x.QuestionMark == QuestionMark.MajorAxis).Select(x => x.Type).FirstOrDefault();
+ result.ValueType = item.Childrens.Where(x => x.QuestionMark == QuestionMark.MajorAxis).Select(x => x.ValueType).FirstOrDefault();
+ result.CustomUnit = item.Childrens.Where(x => x.QuestionMark == QuestionMark.MajorAxis).Select(x => x.CustomUnit).FirstOrDefault();
}
else
{
chartData.Value.Add(item.Childrens.Where(x => x.QuestionMark == QuestionMark.MajorAxis).Select(x => x.Answer[i].Answer).FirstOrDefault());
result.Unit = item.Childrens.Where(x => x.QuestionMark == QuestionMark.MajorAxis).Select(x => x.Unit).FirstOrDefault();
+ result.Type = item.Childrens.Where(x => x.QuestionMark == QuestionMark.MajorAxis).Select(x => x.Type).FirstOrDefault();
+ result.ValueType = item.Childrens.Where(x => x.QuestionMark == QuestionMark.MajorAxis).Select(x => x.ValueType).FirstOrDefault();
+ result.CustomUnit = item.Childrens.Where(x => x.QuestionMark == QuestionMark.MajorAxis).Select(x => x.CustomUnit).FirstOrDefault();
}
break;
@@ -403,6 +418,9 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
case CriterionType.Lugano2014WithoutPET:
chartData.Value.Add(item.Childrens.Where(x => x.QuestionMark == QuestionMark.PPD).Select(x => x.Answer[i].Answer).FirstOrDefault());
result.Unit = item.Childrens.Where(x => x.QuestionMark == QuestionMark.PPD).Select(x => x.Unit).FirstOrDefault();
+ result.Type = item.Childrens.Where(x => x.QuestionMark == QuestionMark.PPD).Select(x => x.Type).FirstOrDefault();
+ result.ValueType = item.Childrens.Where(x => x.QuestionMark == QuestionMark.PPD).Select(x => x.ValueType).FirstOrDefault();
+ result.CustomUnit = item.Childrens.Where(x => x.QuestionMark == QuestionMark.PPD).Select(x => x.CustomUnit).FirstOrDefault();
break;
}
@@ -434,8 +452,9 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
chartData.Value.Add(item.Childrens.Where(x => x.QuestionMark == QuestionMark.LesionNumber).Select(x => x.Answer[i].Answer).FirstOrDefault());
result.Unit = item.Childrens.Where(x => x.QuestionMark == QuestionMark.LesionNumber).Select(x => x.Unit).FirstOrDefault();
-
-
+ result.Type = item.Childrens.Where(x => x.QuestionMark == QuestionMark.LesionNumber).Select(x => x.Type).FirstOrDefault();
+ result.ValueType = item.Childrens.Where(x => x.QuestionMark == QuestionMark.LesionNumber).Select(x => x.ValueType).FirstOrDefault();
+ result.CustomUnit = item.Childrens.Where(x => x.QuestionMark == QuestionMark.LesionNumber).Select(x => x.CustomUnit).FirstOrDefault();
}
result.ChartDataList.Add(chartData);
@@ -620,6 +639,9 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
ChartType = null,
GroupName = g.GroupName,
Unit = items.FirstOrDefault()?.Unit,
+ CustomUnit= items.FirstOrDefault()?.CustomUnit,
+ Type = items.FirstOrDefault()?.Type,
+ ValueType = items.FirstOrDefault()?.ValueType,
VisitTaskNameList = alldata.VisitTaskList.Select(x => x.BlindName).ToList(),
LatestScanDateList = alldata.VisitTaskList.Select(x => x.LatestScanDate).ToList(),
ChartDataList = chartList
@@ -649,6 +671,9 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
});
item.ChartDataList = chart.ChartDataList;
item.Unit = chart.Unit;
+ item.CustomUnit = chart.CustomUnit;
+ item.Type = chart.Type;
+ item.ValueType = chart.ValueType;
}
return item;
}
diff --git a/IRaCIS.Core.Application/Service/TrialSiteUser/DTO/TrialViewModel.cs b/IRaCIS.Core.Application/Service/TrialSiteUser/DTO/TrialViewModel.cs
index c0ba58eb3..e13584f7f 100644
--- a/IRaCIS.Core.Application/Service/TrialSiteUser/DTO/TrialViewModel.cs
+++ b/IRaCIS.Core.Application/Service/TrialSiteUser/DTO/TrialViewModel.cs
@@ -288,6 +288,8 @@ namespace IRaCIS.Application.Contracts
public bool IsExternalViewTrialChart { get; set; }
#endregion
+
+ public TrialDataStore TrialDataStoreType { get; set; }
}
public class TrialPacsInfo
diff --git a/IRaCIS.Core.Application/Service/TrialSiteUser/TrialConfigService.cs b/IRaCIS.Core.Application/Service/TrialSiteUser/TrialConfigService.cs
index 0663cc612..27e368e10 100644
--- a/IRaCIS.Core.Application/Service/TrialSiteUser/TrialConfigService.cs
+++ b/IRaCIS.Core.Application/Service/TrialSiteUser/TrialConfigService.cs
@@ -1566,7 +1566,7 @@ namespace IRaCIS.Core.Application
[AllowAnonymous]
public async Task GetTrialExtralConfig(Guid trialId)
{
- var extralObj = _trialRepository.Where(t => t.Id == trialId).Select(t => new { t.TrialExtraConfigJsonStr, t.IsExternalViewTrialChart, t.TrialObjectNameList, t.CollectImagesEnum, t.IsIQCAutoNextTask, t.IsImageQualityControl }).FirstOrDefault();
+ var extralObj = _trialRepository.Where(t => t.Id == trialId).Select(t => new { t.TrialExtraConfigJsonStr,t.TrialDataStoreType, t.IsExternalViewTrialChart, t.TrialObjectNameList, t.CollectImagesEnum, t.IsIQCAutoNextTask, t.IsImageQualityControl }).FirstOrDefault();
var extralConfig = JsonConvert.DeserializeObject(extralObj?.TrialExtraConfigJsonStr) ?? new TrialExtraConfig();
@@ -1577,7 +1577,7 @@ namespace IRaCIS.Core.Application
trialConfig.IsExternalViewTrialChart = extralObj.IsExternalViewTrialChart;
trialConfig.CollectImagesEnum = extralObj.CollectImagesEnum;
trialConfig.IsIQCAutoNextTask = extralObj.IsIQCAutoNextTask;
-
+ trialConfig.TrialDataStoreType = extralObj.TrialDataStoreType;
return trialConfig;
}