diff --git a/IRaCIS.Core.API/wwwroot/ReadReoprtTemplate/TumorEvaluation_IRECIST_CN_V1.docx b/IRaCIS.Core.API/wwwroot/ReadReoprtTemplate/TumorEvaluation_IRECIST_CN_V1.docx new file mode 100644 index 000000000..e23c655b9 Binary files /dev/null and b/IRaCIS.Core.API/wwwroot/ReadReoprtTemplate/TumorEvaluation_IRECIST_CN_V1.docx differ diff --git a/IRaCIS.Core.Application/Service/Reading/Dto/ExportTumorEvaluationDto.cs b/IRaCIS.Core.Application/Service/Reading/Dto/ExportTumorEvaluationDto.cs new file mode 100644 index 000000000..dab50c7f2 --- /dev/null +++ b/IRaCIS.Core.Application/Service/Reading/Dto/ExportTumorEvaluationDto.cs @@ -0,0 +1,108 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace IRaCIS.Core.Application.Service.Reading.Dto +{ + + public class TumorEvaluationInfo + { + public List VisitList { get; set; } + } + + public class ExportTumorEvaluationInfo + { + /// + /// 所有访视的靶病灶列表 + /// + public List VisitList { get; set; } + + /// + /// 访视一 + /// + public ExportVisitData VisitOne { get; set; } + + /// + /// 访视二 + /// + public ExportVisitData VisitTwo { get; set; } + + /// + /// 访视三 + /// + public ExportVisitData VisitThree { get; set; } + + /// + /// 靶病灶信息 + /// + public List TargetInfoList { get; set; } + + /// + /// 非靶病灶信息 + /// + public List NoTargetInfoList { get; set; } + } + + public class NoTargetInfo + { + + } + + public class TargetInfo + { + public string Title { get; set; } = string.Empty; + + public string VisitOneImgNum { get; set; } = string.Empty; + + public string VisitOneLength { get; set; } = string.Empty; + + public string VisitTwoImgNum { get; set; } = string.Empty; + + public string VisitTwoLength { get; set; } = string.Empty; + + public string VisitThreeImgNum { get; set; } = string.Empty; + + public string VisitThreeLength { get; set; } = string.Empty; + } + + public class ExportVisitData + { + /// + /// 访视名称 + /// + public string VisitName { get; set; } = string.Empty; + + /// + /// 检查日期 + /// + public string CheckDate { get; set; } = string.Empty; + + /// + /// 检查信息 + /// + public List CheckInfoList { get; set; } = new List(); + + /// + /// 检查信息字符串 + /// + public string CheckInfoStr => string.Join("/", CheckInfoList.Select(x => $"{x.Modalities}、{x.BodyPartExamined}")); + + + + } + + public class DicomStudyInfo + { + /// + /// 检查类型 + /// + public string Modalities { get; set; } = string.Empty; + + /// + /// 标记 + /// + public string BodyPartExamined { get; set; } + } +} diff --git a/IRaCIS.Core.Application/Service/Reading/Dto/ReadingCalculateViewModel.cs b/IRaCIS.Core.Application/Service/Reading/Dto/ReadingCalculateViewModel.cs index 796d8453a..80bdb2e44 100644 --- a/IRaCIS.Core.Application/Service/Reading/Dto/ReadingCalculateViewModel.cs +++ b/IRaCIS.Core.Application/Service/Reading/Dto/ReadingCalculateViewModel.cs @@ -301,6 +301,8 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto } + + public class DownLoadReadReportInDto { /// @@ -309,6 +311,7 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto public Guid VisitTaskId { get; set; } public Guid DownLoadGuid { get; set; } + } diff --git a/IRaCIS.Core.Application/Service/ReadingCalculate/RECIST1Point1CalculateService.cs b/IRaCIS.Core.Application/Service/ReadingCalculate/RECIST1Point1CalculateService.cs index fad7dfb76..039b72a41 100644 --- a/IRaCIS.Core.Application/Service/ReadingCalculate/RECIST1Point1CalculateService.cs +++ b/IRaCIS.Core.Application/Service/ReadingCalculate/RECIST1Point1CalculateService.cs @@ -50,6 +50,56 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate }; } + ///// + ///// 获取肿瘤评估报告 + ///// + ///// + ///// + //public async Task DownLoadTumorEvaluationStream(DownLoadReadReportInDto inDto) + //{ + // var downFile = System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, $@"wwwroot/ReadReoprtTemplate/downLoad/{inDto.DownLoadGuid}"); + // Directory.CreateDirectory(downFile); + + // var taskinfo = await _visitTaskRepository.Where(x => x.Id == inDto.VisitTaskId && x.ReadingCategory == ReadingCategory.Visit) + // .Include(x => x.TrialReadingCriterion).FirstNotNullAsync(); + // var visitInfo = await _subjectVisitRepository.Where(x => x.Id == taskinfo.SourceSubjectVisitId).Include(x => x.StudyList).FirstNotNullAsync(); + // var subjectInfo = await _subjectRepository.Where(x => x.Id == taskinfo.SubjectId).Include(x=>x.Trial).Include(x => x.SubjectPatientList).FirstNotNullAsync(); + // var subjectPatientList = await _subjectPatientRepository.Where(x => x.SubjectId == subjectInfo.Id).Include(x => x.Patient).ToListAsync(); + + // var value = new Dictionary() + // { + // { "ResearchProgramNo" ,subjectInfo.Trial.ResearchProgramNo }, // 试验方案号 + // { "SubjectName",subjectInfo.ShortName }, //患者姓名 + // { "SubjectCode",subjectPatientList.Select(x=>x.Patient).OrderByDescending(x=>x.CreateTime).Select(x=>x.PatientIdStr).FirstIsNullReturnEmpty() }, //患者编号 + + + + // { "SubjectName","" }, //患者姓名 + // { "SubjectSex", "" }, //患者性别 + // { "SubjectAge", "" }, //患者年龄 + // { "SubjectCode", "" }, //患者编号 + // { "VisitName", "" }, //访视名称 + // { "LatestScanDate", "" }, //随访日期 + // { "CriterionName", "" }, //评估标准 + // { "AssessmentResult", "" }, //评估结果 + // { "DoctorName", "" }, //医生姓名 + // { "SignTime", "" }, //签名时间 + // { "StudyInfo", new List>() }, // 检查信息 + // { "FirstVisit", "" }, + // { "SecondVisit", "" }, + // { "ThirdlyVisit", "" }, + // { "TargetInfo", new List>() }, // 靶病灶 + // { "NoTargetInfo", new List>() }, // 非把病灶 + // { "NewTargetInfo", new List>() },// 新病灶 + // { "TargetImage", "" }, // 靶病灶图片 + // { "NoTargetImage", "" }, // 非靶病灶图片 + // { "NewImage", "" }, // 新病灶图片 + // { "Result", new List>() }, // 评估结果 + // { "Curative", new List>() }, // 疗效结果 + // { "ReportNo", "" } , + // }; + //} + /// /// 下载阅片报告