修改
continuous-integration/drone/push Build is passing Details

Test_IRC_Net8
he 2025-11-13 11:30:42 +08:00
parent 9f3bb29004
commit 1dd8515ac2
3 changed files with 97 additions and 2 deletions

View File

@ -3675,6 +3675,13 @@
<param name="inDto"></param>
<returns></returns>
</member>
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.ReadingCalculateService.GetReportsChartData(IRaCIS.Core.Application.Service.Reading.Dto.GetReportsChartDataInDto)">
<summary>
获取报告图表数据
</summary>
<param name="inDto"></param>
<returns></returns>
</member>
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.ReadingCalculateService.GetReadingReportEvaluation(IRaCIS.Core.Application.Service.Reading.Dto.GetReadingReportEvaluationInDto)">
<summary>
获取阅片报告
@ -6704,6 +6711,13 @@
<param name="inDto"></param>
<returns></returns>
</member>
<member name="M:IRaCIS.Core.Application.Service.IReadingCalculateService.GetReportsChartData(IRaCIS.Core.Application.Service.Reading.Dto.GetReportsChartDataInDto)">
<summary>
获取报告图表数据
</summary>
<param name="inDto"></param>
<returns></returns>
</member>
<member name="M:IRaCIS.Core.Application.Service.IReadingCalculateService.VerifyVisitTaskQuestions(IRaCIS.Core.Application.Service.Reading.Dto.VerifyVisitTaskQuestionsInDto)">
<summary>
验证访视提交
@ -13873,6 +13887,13 @@
IR影像阅片
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Service.ReadingImageTaskService.GetReportsChartData(IRaCIS.Core.Application.Service.Reading.Dto.GetReportsChartDataInDto)">
<summary>
获取报告图表数据
</summary>
<param name=""></param>
<returns></returns>
</member>
<member name="M:IRaCIS.Core.Application.Service.ReadingImageTaskService.SetReadKeyFile(IRaCIS.Core.Application.Service.Reading.Dto.SetReadKeyFileInDto)">
<summary>
设置已阅读关键文件

View File

@ -447,7 +447,17 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
}
public class GetReportsChartDataOutDto
{
public List<string> VisitTaskNameList { get; set; }
public List<ChartData> ChartDataList { get; set; }
}
public class ChartData
{
public string Name { get; set; }
public List<string> Value { get; set; }
}
public class GetReportsChartDataInDto
@ -455,6 +465,12 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
public Guid VisitTaskId { get; set; }
public Guid TrialId { get; set; }
public Guid? QuestionId { get; set; }
public Guid? TableQuestionId { get; set; }
public decimal? RowIndex { get; set; }
}
public class SetReadKeyFileInDto
{

View File

@ -1,4 +1,5 @@
using IRaCIS.Core.Application.Helper;
using DocumentFormat.OpenXml.Office.SpreadSheetML.Y2023.MsForms;
using IRaCIS.Core.Application.Helper;
using IRaCIS.Core.Application.Service.Reading.Dto;
using IRaCIS.Core.Application.ViewModel;
using IRaCIS.Core.Domain.Models;
@ -252,7 +253,64 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
TrialId = inDto.TrialId,
VisitTaskId = inDto.VisitTaskId,
});
return new GetReportsChartDataOutDto();
GetReportsChartDataOutDto result = new GetReportsChartDataOutDto()
{
VisitTaskNameList = data.VisitTaskList.Select(x => x.BlindName).ToList(),
ChartDataList=new List<ChartData>() { },
};
result.VisitTaskNameList = data.VisitTaskList.Select(x => x.BlindName).ToList();
if (inDto.QuestionId != null)
{
var question = data.TaskQuestions.SelectMany(x => x.Childrens)
.Where(x => x.QuestionId == inDto.QuestionId.Value).FirstOrDefault();
if (question != null)
{
ChartData chartData = new ChartData()
{
Name = question.QuestionName,
Value = new List<string>(),
};
foreach (var answer in question.Answer)
{
chartData.Value.Add(answer.Answer);
}
result.ChartDataList.Add(chartData);
}
}
else
{
var lesion = data.TaskQuestions
// 问题 靶病灶
.SelectMany(x => x.Childrens)
// 病灶
.SelectMany(x => x.Childrens).Where(x=> x.RowIndex == inDto.RowIndex)
// 表格问题
.SelectMany(x => x.Childrens).Where(x => x.TableQuestionId == inDto.TableQuestionId)
.FirstOrDefault();
if (lesion != null)
{
ChartData chartData = new ChartData()
{
Name = lesion.QuestionName,
Value = new List<string>(),
};
foreach (var answer in lesion.Answer)
{
chartData.Value.Add(answer.Answer);
}
result.ChartDataList.Add(chartData);
}
}
return result;
}
/// <summary>