diff --git a/IRaCIS.Core.Application/Service/ReadingCalculate/General/ReadingCalculateService.cs b/IRaCIS.Core.Application/Service/ReadingCalculate/General/ReadingCalculateService.cs index c79fd0f8f..fb946bcc3 100644 --- a/IRaCIS.Core.Application/Service/ReadingCalculate/General/ReadingCalculateService.cs +++ b/IRaCIS.Core.Application/Service/ReadingCalculate/General/ReadingCalculateService.cs @@ -10,6 +10,7 @@ using Microsoft.AspNetCore.Hosting; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using MiniExcelLibs; +using Org.BouncyCastle.Asn1.X509; using System.Data; using System.IO; @@ -326,7 +327,33 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate } break; - + + case ReportChartType.BaseLineTarget: + // 这是病灶 + var baseTarget = data.TaskQuestions.SelectMany(x => x.Childrens) + .Where(x => x.LesionType == LesionType.BaselineLesions).SelectMany(x => x.Childrens) + .ToList(); + + foreach (var item in baseTarget) + { + ReportChartData chartData = new ReportChartData() + { + Name = item.QuestionName, + Value = new List(), + }; + + for (var i = 0; i < result.VisitTaskNameList.Count; i++) + { + + 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.ChartDataList.Add(chartData); + } + break; default: break; } diff --git a/IRaCIS.Core.Application/Service/ReadingCalculate/PCWG3CalculateService.cs b/IRaCIS.Core.Application/Service/ReadingCalculate/PCWG3CalculateService.cs index 57cb3aa35..2def35635 100644 --- a/IRaCIS.Core.Application/Service/ReadingCalculate/PCWG3CalculateService.cs +++ b/IRaCIS.Core.Application/Service/ReadingCalculate/PCWG3CalculateService.cs @@ -820,7 +820,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate { if (inDto.IsBaseLine) { - return -1; + return -2; } var taskinfo = await _visitTaskRepository.Where(x => x.Id == inDto.VisitTaskId).FirstNotNullAsync(); var taskList = await GetSiteVisitForTumorList(inDto); diff --git a/IRaCIS.Core.Domain.Share/Reading/ReadEnum.cs b/IRaCIS.Core.Domain.Share/Reading/ReadEnum.cs index 895d30f2c..116988839 100644 --- a/IRaCIS.Core.Domain.Share/Reading/ReadEnum.cs +++ b/IRaCIS.Core.Domain.Share/Reading/ReadEnum.cs @@ -2526,6 +2526,12 @@ namespace IRaCIS.Core.Domain.Share /// Target = 0, + + /// + /// 基线病灶 + /// + BaseLineTarget = 1, + }