diff --git a/IRaCIS.Core.Application/Service/ReadingCalculate/IRECIST1Point1CalculateService.cs b/IRaCIS.Core.Application/Service/ReadingCalculate/IRECIST1Point1CalculateService.cs index bad6f7a83..e57f54617 100644 --- a/IRaCIS.Core.Application/Service/ReadingCalculate/IRECIST1Point1CalculateService.cs +++ b/IRaCIS.Core.Application/Service/ReadingCalculate/IRECIST1Point1CalculateService.cs @@ -190,7 +190,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate #region 外层问题处理 // 获取外层问题 - async Task>> getQuestionAnswerList(List exports) + List> getQuestionAnswerList(List exports) { List> questionAnswerList = new List>(); foreach (var item in exports) diff --git a/IRaCIS.Core.Application/Service/ReadingCalculate/MRECISTHCCCalculateService.cs b/IRaCIS.Core.Application/Service/ReadingCalculate/MRECISTHCCCalculateService.cs index f2fbfaa25..c642a61e7 100644 --- a/IRaCIS.Core.Application/Service/ReadingCalculate/MRECISTHCCCalculateService.cs +++ b/IRaCIS.Core.Application/Service/ReadingCalculate/MRECISTHCCCalculateService.cs @@ -224,13 +224,13 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate switch (thisVisitListNum) { case 1: - export.Lesion.OneDoctorSign = "签字:"; + export.Lesion.OneDoctorSign = _localizer["CriterionCalculateExport_Sign"]; break; case 2: - export.Lesion.TwoDoctorSign = "签字:"; + export.Lesion.TwoDoctorSign = _localizer["CriterionCalculateExport_Sign"]; break; case 3: - export.Lesion.ThreeDoctorSign = "签字:"; + export.Lesion.ThreeDoctorSign = _localizer["CriterionCalculateExport_Sign"]; break; } @@ -249,7 +249,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate }; - var templatePath = System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, @"wwwroot/ReadReoprtTemplate/TumorEvaluation_RECIST1.1_CN_V1.docx"); + var templatePath = System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, $@"wwwroot/ReadReoprtTemplate/TumorEvaluation_RECIST1.1_{(_userInfo.IsEn_Us ? "EN" : "CN")}_V1.docx"); var outputFilePath = System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, $@"wwwroot/ReadReoprtTemplate/downLoad/{inDto.DownLoadGuid}.docx"); @@ -340,7 +340,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate var typicalIntrahepaticLesionsText = string.Empty; if (typicalIntrahepaticLesions == ((int)ReadingYesOrNo.Yes).ToString()) { - typicalIntrahepaticLesionsText = "\n肝内典型病灶"; + typicalIntrahepaticLesionsText = $"\n{_localizer["CriterionCalculateExport_TIL"]}"; } @@ -400,6 +400,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate List> questionAnswerList = new List>(); foreach (var item in exports) { + item.QuestionName = _generalCalculateService.GetTrialQuestionName(trialQuestion, item.QuestionType); Dictionary questionAnswer = new Dictionary() { {"Name",item.QuestionName }, @@ -437,11 +438,11 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate if (visitInfo.IsBaseLine) { var existDisease = answerList.Where(x => x.ReadingQuestionTrial.QuestionType == QuestionType.ExistDisease).Select(x => x.Answer).FirstIsNullReturnEmpty().EqEnum(ExistDisease.No) ? "不" : string.Empty; - assessmentResult = $"{existDisease}存在疾病"; + assessmentResult = $"{existDisease}{_localizer["CriterionCalculateExport_ExistDisease"]}"; } else { - assessmentResult = $"整体肿瘤评估结果为{_generalCalculateService.GetTaskanswer(answerList, dictionList, unitDictionary, inDto.VisitTaskId, QuestionType.Tumor)}"; + assessmentResult = $"{_localizer["CriterionCalculateExport_AssessmentResult"]}{_generalCalculateService.GetTaskanswer(answerList, dictionList, unitDictionary, inDto.VisitTaskId, QuestionType.Tumor)}"; } var hIRHospital = await _hIRHospitalRepository.Where(t => t.IsDefault == true).FirstNotNullAsync(); @@ -451,8 +452,8 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate { "HospitalName",hIRHospital.HospitalName } ,// 医院名称 { "SubjectName",subjectInfo.ShortName }, //患者姓名 - { "SubjectSex", subjectInfo.Sex==string.Empty?string.Empty: subjectInfo.Sex=="M"?"男":"女" }, //患者性别 - { "SubjectAge",subjectInfo.Age==null?string.Empty: subjectInfo.Age +"岁" }, //患者年龄 + { "SubjectSex", subjectInfo.Sex==string.Empty?string.Empty: subjectInfo.Sex=="M"?_localizer["CriterionCalculateExport_Man"]:_localizer["CriterionCalculateExport_Woman"] }, //患者性别 + { "SubjectAge",subjectInfo.Age==null?string.Empty: subjectInfo.Age +_localizer["CriterionCalculateExport_Years"] }, //患者年龄 { "SubjectCode",string.Join(",",patientIdStrList) }, //患者编号 { "VisitName",visitInfo.VisitName }, //访视名称 { "LatestScanDate",visitInfo.StudyList.Min(x=>x.StudyTime)?.ToString("yyyy-MM-dd") }, //随访日期 @@ -473,20 +474,20 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate { "TNMValue",taskinfo.TNMValue}, // TNM分期 { "Result",getQuestionAnswerList(new List() - { new ExportReportQuestion (){ QuestionName="靶病灶径线之和(SOD)",QuestionType=QuestionType.SOD}, - new ExportReportQuestion (){ QuestionName="非淋巴结靶病灶长径之和",QuestionType=QuestionType.SumOfDiameter}, - new ExportReportQuestion (){ QuestionName="与基线相比SOD变化量",QuestionType=QuestionType.SODChange}, - new ExportReportQuestion (){ QuestionName="与基线相比SOD变化百分比",QuestionType=QuestionType.SODPercent}, - new ExportReportQuestion (){ QuestionName="与最低点相比SOD变化量",QuestionType=QuestionType.LowestIncrease}, - new ExportReportQuestion (){ QuestionName="与最低点相比SOD变化百分比",QuestionType=QuestionType.LowPercent}, - new ExportReportQuestion (){ QuestionName="最低点访视",QuestionType=QuestionType.LowVisit}, + { new ExportReportQuestion (){ QuestionType=QuestionType.SOD}, + new ExportReportQuestion (){ QuestionType=QuestionType.SumOfDiameter}, + new ExportReportQuestion (){QuestionType=QuestionType.SODChange}, + new ExportReportQuestion (){ QuestionType=QuestionType.SODPercent}, + new ExportReportQuestion (){ QuestionType=QuestionType.LowestIncrease}, + new ExportReportQuestion (){ QuestionType=QuestionType.LowPercent}, + new ExportReportQuestion (){ QuestionType=QuestionType.LowVisit}, })}, // 评估结果 { "Curative",getQuestionAnswerList(new List() - { new ExportReportQuestion (){ QuestionName="靶病灶评估",QuestionType=QuestionType.TargetLesion}, - new ExportReportQuestion (){ QuestionName="非靶病灶评估",QuestionType=QuestionType.NoTargetLesion}, - new ExportReportQuestion (){ QuestionName="存在新病灶",QuestionType=QuestionType.NewLesions}, - new ExportReportQuestion (){ QuestionName="存在疾病",QuestionType=QuestionType.ExistDisease}, - new ExportReportQuestion (){ QuestionName="整体肿瘤评估",QuestionType=QuestionType.Tumor}, + { new ExportReportQuestion (){ QuestionType=QuestionType.TargetLesion}, + new ExportReportQuestion (){ QuestionType=QuestionType.NoTargetLesion}, + new ExportReportQuestion (){ QuestionType=QuestionType.NewLesions}, + new ExportReportQuestion (){ QuestionType=QuestionType.ExistDisease}, + new ExportReportQuestion (){ QuestionType=QuestionType.Tumor}, })}, // 疗效结果 { "ReportNo",await _generalCalculateService.GetReportExportNo(taskinfo) } , @@ -494,7 +495,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate value = _generalCalculateService.StringEmptyTurnedLine(value); - var templatePath = System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, @"wwwroot/ReadReoprtTemplate/ReportTemplate_RECIST1.1_CN_V1.docx"); + var templatePath = System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, $@"wwwroot/ReadReoprtTemplate/ReportTemplate_RECIST1.1_{(_userInfo.IsEn_Us ? "EN" : "CN")}_V1.docx"); var outputFilePath = System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, $@"wwwroot/ReadReoprtTemplate/downLoad/{inDto.DownLoadGuid}.docx"); diff --git a/IRaCIS.Core.Application/Service/ReadingCalculate/PCWG3CalculateService.cs b/IRaCIS.Core.Application/Service/ReadingCalculate/PCWG3CalculateService.cs index 0ee883fad..f8ad0fbf8 100644 --- a/IRaCIS.Core.Application/Service/ReadingCalculate/PCWG3CalculateService.cs +++ b/IRaCIS.Core.Application/Service/ReadingCalculate/PCWG3CalculateService.cs @@ -164,6 +164,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate List> questionAnswerList = new List>(); foreach (var item in exports) { + item.QuestionName = _generalCalculateService.GetTrialQuestionName(trialQuestion, item.QuestionType); Dictionary questionAnswer = new Dictionary() { {"Name",item.QuestionName }, @@ -204,8 +205,8 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate // { "Logo" ,await _generalCalculateService.GetWordPictureMaxWL(_options.CurrentValue.MinIO.viewEndpoint+_hospital.CurrentValue.HospitalLogoPath ,System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, $@"wwwroot/ReadReoprtTemplate/downLoad/{inDto.DownLoadGuid}"),110,100) }, { "HospitalName",hIRHospital.HospitalName } ,// 医院名称 { "SubjectName",subjectInfo.ShortName }, //患者姓名 - { "SubjectSex", subjectInfo.Sex==string.Empty?string.Empty: subjectInfo.Sex=="M"?"男":"女" }, //患者性别 - { "SubjectAge",subjectInfo.Age==null?string.Empty: subjectInfo.Age +"岁" }, //患者年龄 + { "SubjectSex", subjectInfo.Sex==string.Empty?string.Empty: subjectInfo.Sex=="M"?_localizer["CriterionCalculateExport_Man"]:_localizer["CriterionCalculateExport_Woman"] }, //患者性别 + { "SubjectAge",subjectInfo.Age==null?string.Empty: subjectInfo.Age +_localizer["CriterionCalculateExport_Years"] }, //患者年龄 { "SubjectCode",string.Join(",",patientIdStrList) }, //患者编号 { "VisitName",visitInfo.VisitName }, //访视名称 { "LatestScanDate",visitInfo.StudyList.Min(x=>x.StudyTime)?.ToString("yyyy-MM-dd") }, //随访日期 @@ -226,15 +227,15 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate { "TNMValue",taskinfo.TNMValue}, // TNM分期 { "Result",getQuestionAnswerList(new List() - { new ExportReportQuestion (){ QuestionName="基线病灶计数",QuestionType=QuestionType.BaseLineLesionsCount}, - new ExportReportQuestion (){ QuestionName="新病灶计数",QuestionType=QuestionType.NewLesionsCount}, - new ExportReportQuestion (){ QuestionName="既往新病灶计数",QuestionType=QuestionType.AlwaysNewLesionsCount}, - new ExportReportQuestion (){ QuestionName="自治疗后第二个访视点以来持续的新骨病变数量",QuestionType=QuestionType.NewBoneLesionsCount}, - new ExportReportQuestion (){ QuestionName="与前一个访视间隔天数",QuestionType=QuestionType.DaysBetween}, + { new ExportReportQuestion (){QuestionType=QuestionType.BaseLineLesionsCount}, + new ExportReportQuestion (){ QuestionType=QuestionType.NewLesionsCount}, + new ExportReportQuestion (){ QuestionType=QuestionType.AlwaysNewLesionsCount}, + new ExportReportQuestion (){ QuestionType=QuestionType.NewBoneLesionsCount}, + new ExportReportQuestion (){ QuestionType=QuestionType.DaysBetween}, })}, // 评估结果 { "Curative",getQuestionAnswerList(new List() - { new ExportReportQuestion (){ QuestionName="访视点肿瘤评估",QuestionType=QuestionType.SiteVisitForTumorEvaluation}, - new ExportReportQuestion (){ QuestionName="访视阅片备注",QuestionType=QuestionType.AdjustReason}, + { new ExportReportQuestion (){QuestionType=QuestionType.SiteVisitForTumorEvaluation}, + new ExportReportQuestion (){ QuestionType=QuestionType.AdjustReason}, })}, // 疗效结果 { "ReportNo",await _generalCalculateService.GetReportExportNo(taskinfo) } , @@ -242,7 +243,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate value = _generalCalculateService.StringEmptyTurnedLine(value); - var templatePath = System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, @"wwwroot/ReadReoprtTemplate/ReportTemplate_PCWG3_CN_V1.docx"); + var templatePath = System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, $@"wwwroot/ReadReoprtTemplate/ReportTemplate_PCWG3_{(_userInfo.IsEn_Us ? "EN" : "CN")}_V1.docx"); var outputFilePath = System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, $@"wwwroot/ReadReoprtTemplate/downLoad/{inDto.DownLoadGuid}.docx"); MiniWord.SaveAsByTemplate(outputFilePath, templatePath, value); Directory.Delete(downFile, true); diff --git a/IRaCIS.Core.Application/Service/ReadingCalculate/RECIST1Point1CalculateService.cs b/IRaCIS.Core.Application/Service/ReadingCalculate/RECIST1Point1CalculateService.cs index 17aaf8638..e45aec1c9 100644 --- a/IRaCIS.Core.Application/Service/ReadingCalculate/RECIST1Point1CalculateService.cs +++ b/IRaCIS.Core.Application/Service/ReadingCalculate/RECIST1Point1CalculateService.cs @@ -239,13 +239,13 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate switch (thisVisitListNum) { case 1: - export.Lesion.OneDoctorSign = "签字:"; + export.Lesion.OneDoctorSign = _localizer["CriterionCalculateExport_Sign"]; break; case 2: - export.Lesion.TwoDoctorSign = "签字:"; + export.Lesion.TwoDoctorSign = _localizer["CriterionCalculateExport_Sign"]; break; case 3: - export.Lesion.ThreeDoctorSign = "签字:"; + export.Lesion.ThreeDoctorSign = _localizer["CriterionCalculateExport_Sign"]; break; } @@ -264,7 +264,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate }; - var templatePath = System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, @"wwwroot/ReadReoprtTemplate/TumorEvaluation_RECIST1.1_CN_V1.docx"); + var templatePath = System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, $@"wwwroot/ReadReoprtTemplate/TumorEvaluation_RECIST1.1_{(_userInfo.IsEn_Us ? "EN" : "CN")}_V1.docx"); var outputFilePath = System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, $@"wwwroot/ReadReoprtTemplate/downLoad/{inDto.DownLoadGuid}.docx"); @@ -405,6 +405,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate List> questionAnswerList = new List>(); foreach (var item in exports) { + item.QuestionName = _generalCalculateService.GetTrialQuestionName(trialQuestion, item.QuestionType); Dictionary questionAnswer = new Dictionary() { {"Name",item.QuestionName }, @@ -442,11 +443,11 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate if (visitInfo.IsBaseLine) { var existDisease = answerList.Where(x => x.ReadingQuestionTrial.QuestionType == QuestionType.ExistDisease).Select(x => x.Answer).FirstIsNullReturnEmpty().EqEnum(ExistDisease.No) ? "不" : string.Empty; - assessmentResult = $"{existDisease}存在疾病"; + assessmentResult = $"{existDisease}{_localizer["CriterionCalculateExport_ExistDisease"]}"; } else { - assessmentResult = $"整体肿瘤评估结果为{_generalCalculateService.GetTaskanswer(answerList, dictionList, unitDictionary, inDto.VisitTaskId, QuestionType.Tumor)}"; + assessmentResult = $"{_localizer["CriterionCalculateExport_AssessmentResult"]}{_generalCalculateService.GetTaskanswer(answerList, dictionList, unitDictionary, inDto.VisitTaskId, QuestionType.Tumor)}"; } var hIRHospital =await _hIRHospitalRepository.Where(t => t.IsDefault == true).FirstNotNullAsync(); @@ -456,8 +457,8 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate { "HospitalName",hIRHospital.HospitalName } ,// 医院名称 { "SubjectName",subjectInfo.ShortName }, //患者姓名 - { "SubjectSex", subjectInfo.Sex==string.Empty?string.Empty: subjectInfo.Sex=="M"?"男":"女" }, //患者性别 - { "SubjectAge",subjectInfo.Age==null?string.Empty: subjectInfo.Age +"岁" }, //患者年龄 + { "SubjectSex", subjectInfo.Sex==string.Empty?string.Empty: subjectInfo.Sex=="M"?_localizer["CriterionCalculateExport_Man"]:_localizer["CriterionCalculateExport_Woman"] }, //患者性别 + { "SubjectAge",subjectInfo.Age==null?string.Empty: subjectInfo.Age +_localizer["CriterionCalculateExport_Years"] }, //患者年龄 { "SubjectCode",string.Join(",",patientIdStrList) }, //患者编号 { "VisitName",visitInfo.VisitName }, //访视名称 { "LatestScanDate",visitInfo.StudyList.Min(x=>x.StudyTime)?.ToString("yyyy-MM-dd") }, //随访日期 @@ -478,20 +479,20 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate { "TNMValue",taskinfo.TNMValue}, // TNM分期 { "Result",getQuestionAnswerList(new List() - { new ExportReportQuestion (){ QuestionName="靶病灶径线之和(SOD)",QuestionType=QuestionType.SOD}, - new ExportReportQuestion (){ QuestionName="非淋巴结靶病灶长径之和",QuestionType=QuestionType.SumOfDiameter}, - new ExportReportQuestion (){ QuestionName="与基线相比SOD变化量",QuestionType=QuestionType.SODChange}, - new ExportReportQuestion (){ QuestionName="与基线相比SOD变化百分比",QuestionType=QuestionType.SODPercent}, - new ExportReportQuestion (){ QuestionName="与最低点相比SOD变化量",QuestionType=QuestionType.LowestIncrease}, - new ExportReportQuestion (){ QuestionName="与最低点相比SOD变化百分比",QuestionType=QuestionType.LowPercent}, - new ExportReportQuestion (){ QuestionName="最低点访视",QuestionType=QuestionType.LowVisit}, + { new ExportReportQuestion (){QuestionType=QuestionType.SOD}, + new ExportReportQuestion (){QuestionType=QuestionType.SumOfDiameter}, + new ExportReportQuestion (){QuestionType=QuestionType.SODChange}, + new ExportReportQuestion (){ QuestionType=QuestionType.SODPercent}, + new ExportReportQuestion (){ QuestionType=QuestionType.LowestIncrease}, + new ExportReportQuestion (){ QuestionType=QuestionType.LowPercent}, + new ExportReportQuestion (){ QuestionType=QuestionType.LowVisit}, })}, // 评估结果 { "Curative",getQuestionAnswerList(new List() - { new ExportReportQuestion (){ QuestionName="靶病灶评估",QuestionType=QuestionType.TargetLesion}, - new ExportReportQuestion (){ QuestionName="非靶病灶评估",QuestionType=QuestionType.NoTargetLesion}, - new ExportReportQuestion (){ QuestionName="存在新病灶",QuestionType=QuestionType.NewLesions}, - new ExportReportQuestion (){ QuestionName="存在疾病",QuestionType=QuestionType.ExistDisease}, - new ExportReportQuestion (){ QuestionName="整体肿瘤评估",QuestionType=QuestionType.Tumor}, + { new ExportReportQuestion (){ QuestionType=QuestionType.TargetLesion}, + new ExportReportQuestion (){ QuestionType=QuestionType.NoTargetLesion}, + new ExportReportQuestion (){ QuestionType=QuestionType.NewLesions}, + new ExportReportQuestion (){ QuestionType=QuestionType.ExistDisease}, + new ExportReportQuestion (){ QuestionType=QuestionType.Tumor}, })}, // 疗效结果 { "ReportNo",await _generalCalculateService.GetReportExportNo(taskinfo) } , @@ -499,7 +500,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate value = _generalCalculateService.StringEmptyTurnedLine(value); - var templatePath = System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, @"wwwroot/ReadReoprtTemplate/ReportTemplate_RECIST1.1_CN_V1.docx"); + var templatePath = System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, $@"wwwroot/ReadReoprtTemplate/ReportTemplate_RECIST1.1_{(_userInfo.IsEn_Us ? "EN" : "CN")}_V1.docx"); var outputFilePath = System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, $@"wwwroot/ReadReoprtTemplate/downLoad/{inDto.DownLoadGuid}.docx"); diff --git a/IRaCIS.Core.Application/Service/ReadingCalculate/RECIST1Point1_BMCalculateService.cs b/IRaCIS.Core.Application/Service/ReadingCalculate/RECIST1Point1_BMCalculateService.cs index 1edf1f21a..6cb50cfba 100644 --- a/IRaCIS.Core.Application/Service/ReadingCalculate/RECIST1Point1_BMCalculateService.cs +++ b/IRaCIS.Core.Application/Service/ReadingCalculate/RECIST1Point1_BMCalculateService.cs @@ -235,13 +235,13 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate switch (thisVisitListNum) { case 1: - export.Lesion.OneDoctorSign = "签字:"; + export.Lesion.OneDoctorSign = _localizer["CriterionCalculateExport_Sign"]; break; case 2: - export.Lesion.TwoDoctorSign = "签字:"; + export.Lesion.TwoDoctorSign = _localizer["CriterionCalculateExport_Sign"]; break; case 3: - export.Lesion.ThreeDoctorSign = "签字:"; + export.Lesion.ThreeDoctorSign = _localizer["CriterionCalculateExport_Sign"]; break; } @@ -260,7 +260,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate }; - var templatePath = System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, @"wwwroot/ReadReoprtTemplate/TumorEvaluation_RECIST1.1_CN_V1.docx"); + var templatePath = System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, $@"wwwroot/ReadReoprtTemplate/TumorEvaluation_RECIST1.1_{(_userInfo.IsEn_Us ? "EN" : "CN")}_V1.docx"); var outputFilePath = System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, $@"wwwroot/ReadReoprtTemplate/downLoad/{inDto.DownLoadGuid}.docx"); @@ -399,6 +399,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate List> questionAnswerList = new List>(); foreach (var item in exports) { + item.QuestionName = _generalCalculateService.GetTrialQuestionName(trialQuestion, item.QuestionType); Dictionary questionAnswer = new Dictionary() { {"Name",item.QuestionName }, @@ -436,14 +437,14 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate if (visitInfo.IsBaseLine) { var existDisease = answerList.Where(x => x.ReadingQuestionTrial.QuestionType == QuestionType.ExistDisease).Select(x => x.Answer).FirstIsNullReturnEmpty().EqEnum(ExistDisease.No) ? "不" : string.Empty; - assessmentResult = $"{existDisease}存在疾病"; + assessmentResult = $"{existDisease}{_localizer["CriterionCalculateExport_ExistDisease"]}"; } else { - assessmentResult = $"整体肿瘤评估结果为{_generalCalculateService.GetTaskanswer(answerList, dictionList, unitDictionary, inDto.VisitTaskId, QuestionType.Tumor)}"; + assessmentResult = $"{_localizer["CriterionCalculateExport_AssessmentResult"]}{_generalCalculateService.GetTaskanswer(answerList, dictionList, unitDictionary, inDto.VisitTaskId, QuestionType.Tumor)}"; } - var hIRHospital =await _hIRHospitalRepository.Where(t => t.IsDefault == true).FirstNotNullAsync(); + var hIRHospital =await _hIRHospitalRepository.Where(t => t.IsDefault == true).FirstNotNullAsync(); var value = new Dictionary() { @@ -451,8 +452,8 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate { "HospitalName",hIRHospital.HospitalName } ,// 医院名称 { "SubjectName",subjectInfo.ShortName }, //患者姓名 - { "SubjectSex", subjectInfo.Sex==string.Empty?string.Empty: subjectInfo.Sex=="M"?"男":"女" }, //患者性别 - { "SubjectAge",subjectInfo.Age==null?string.Empty: subjectInfo.Age +"岁" }, //患者年龄 + { "SubjectSex", subjectInfo.Sex==string.Empty?string.Empty: subjectInfo.Sex=="M"?_localizer["CriterionCalculateExport_Man"]:_localizer["CriterionCalculateExport_Woman"] }, //患者性别 + { "SubjectAge",subjectInfo.Age==null?string.Empty: subjectInfo.Age +_localizer["CriterionCalculateExport_Years"] }, //患者年龄 { "SubjectCode",string.Join(",",patientIdStrList) }, //患者编号 { "VisitName",visitInfo.VisitName }, //访视名称 { "LatestScanDate",visitInfo.StudyList.Min(x=>x.StudyTime)?.ToString("yyyy-MM-dd") }, //随访日期 @@ -473,20 +474,20 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate { "TNMValue",taskinfo.TNMValue}, // TNM分期 { "Result",getQuestionAnswerList(new List() - { new ExportReportQuestion (){ QuestionName="靶病灶径线之和(SOD)",QuestionType=QuestionType.SOD}, - new ExportReportQuestion (){ QuestionName="非淋巴结靶病灶长径之和",QuestionType=QuestionType.SumOfDiameter}, - new ExportReportQuestion (){ QuestionName="与基线相比SOD变化量",QuestionType=QuestionType.SODChange}, - new ExportReportQuestion (){ QuestionName="与基线相比SOD变化百分比",QuestionType=QuestionType.SODPercent}, - new ExportReportQuestion (){ QuestionName="与最低点相比SOD变化量",QuestionType=QuestionType.LowestIncrease}, - new ExportReportQuestion (){ QuestionName="与最低点相比SOD变化百分比",QuestionType=QuestionType.LowPercent}, - new ExportReportQuestion (){ QuestionName="最低点访视",QuestionType=QuestionType.LowVisit}, + { new ExportReportQuestion (){ QuestionType=QuestionType.SOD}, + new ExportReportQuestion (){ QuestionType=QuestionType.SumOfDiameter}, + new ExportReportQuestion (){ QuestionType=QuestionType.SODChange}, + new ExportReportQuestion (){ QuestionType=QuestionType.SODPercent}, + new ExportReportQuestion (){ QuestionType=QuestionType.LowestIncrease}, + new ExportReportQuestion (){QuestionType=QuestionType.LowPercent}, + new ExportReportQuestion (){QuestionType=QuestionType.LowVisit}, })}, // 评估结果 { "Curative",getQuestionAnswerList(new List() - { new ExportReportQuestion (){ QuestionName="靶病灶评估",QuestionType=QuestionType.TargetLesion}, - new ExportReportQuestion (){ QuestionName="非靶病灶评估",QuestionType=QuestionType.NoTargetLesion}, - new ExportReportQuestion (){ QuestionName="存在新病灶",QuestionType=QuestionType.NewLesions}, - new ExportReportQuestion (){ QuestionName="存在疾病",QuestionType=QuestionType.ExistDisease}, - new ExportReportQuestion (){ QuestionName="整体肿瘤评估",QuestionType=QuestionType.Tumor}, + { new ExportReportQuestion (){ QuestionType=QuestionType.TargetLesion}, + new ExportReportQuestion (){ QuestionType=QuestionType.NoTargetLesion}, + new ExportReportQuestion (){ QuestionType=QuestionType.NewLesions}, + new ExportReportQuestion (){ QuestionType=QuestionType.ExistDisease}, + new ExportReportQuestion (){ QuestionType=QuestionType.Tumor}, })}, // 疗效结果 { "ReportNo",await _generalCalculateService.GetReportExportNo(taskinfo) } , @@ -494,7 +495,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate value = _generalCalculateService.StringEmptyTurnedLine(value); - var templatePath = System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, @"wwwroot/ReadReoprtTemplate/ReportTemplate_RECIST1.1_CN_V1.docx"); + var templatePath = System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, $@"wwwroot/ReadReoprtTemplate/ReportTemplate_RECIST1.1_{(_userInfo.IsEn_Us ? "EN" : "CN")}_V1.docx"); var outputFilePath = System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, $@"wwwroot/ReadReoprtTemplate/downLoad/{inDto.DownLoadGuid}.docx");