using IRaCIS.Core.Application.Service.Reading.Dto; using IRaCIS.Core.Domain.Share; using IRaCIS.Core.Domain.Share.Reading; using MassTransit; using NPOI.POIFS.NIO; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace IRaCIS.Core.Application.Service { public class CriterionAdditionalAssessment { public CriterionType CriterionType { get; set; } public AdditionalAssessmentType AdditionalAssessmentType { get; set; } //附加评估问题 public List AdditionalQuestionList { get; set; } = new List(); } public class AdditionalAssessment { public List SystemDefeaultAdditionalAssessmentList { get; set; } = new List(); public AdditionalAssessment() { //Resist1.1 脑转移 默认评估问题 { var gropId = NewId.NextGuid(); SystemDefeaultAdditionalAssessmentList.Add(new CriterionAdditionalAssessment() { CriterionType = CriterionType.RECIST1Point1, AdditionalAssessmentType = AdditionalAssessmentType.BrainMetastasis, AdditionalQuestionList = new List(){ new ReadingQuestionTrial() { LimitEdit=LimitEdit.OnlyBaseLine, Id=gropId, IsJudgeQuestion=false, IsShowInDicom=false, GlobalReadingShowType=GlobalReadingShowType.NotShow, QuestionName="脑转移评估", QuestionEnName="Brain Metastasis Assessment", GroupName="脑转移评估", GroupEnName="Brain Metastasis Assessment", Type="group", QuestionGenre=TableQuestionType.Customize, DataSource=DataSources.ManualEntry, ShowQuestion=ShowQuestion.Show, IsAdditional=true } , new ReadingQuestionTrial() { GroupId=gropId, LimitEdit=LimitEdit.OnlyBaseLine, DictionaryCode="YesOrNoOrNE", IsJudgeQuestion=false, IsShowInDicom=false, GlobalReadingShowType=GlobalReadingShowType.NotShow, QuestionEnName="Brain Metastasis Present", QuestionName="存在脑转移", Type="radio", QuestionGenre=TableQuestionType.Dictionary, DataSource=DataSources.ManualEntry, ShowQuestion=ShowQuestion.Show, IsAdditional=true } , } }); } //Resist1.1 TNM分期 { //var gropId = NewId.NextGuid(); //SystemDefeaultAdditionalAssessmentList.Add(new CriterionAdditionalAssessment() //{ // CriterionType = CriterionType.RECIST1Point1, // AdditionalAssessmentType = AdditionalAssessmentType.TNMStage, // AdditionalQuestionList = new List(){ // new ReadingQuestionTrial() //{ // LimitEdit=LimitEdit.OnlyBaseLine, // Id=gropId, // IsJudgeQuestion=false, // IsShowInDicom=false, // GlobalReadingShowType=GlobalReadingShowType.NotShow, // QuestionName="TNM分期评估", // QuestionEnName="TNM Stage Assessment", // GroupName="TNM分期评估", // GroupEnName="TNM Stage Assessment", // Type="group", // QuestionGenre=TableQuestionType.Customize, // DataSource=DataSources.ManualEntry, // ShowQuestion=ShowQuestion.Show, // IsAdditional=true //} , // new ReadingQuestionTrial() //{ // GroupId=gropId, // LimitEdit=LimitEdit.OnlyBaseLine, // DictionaryCode="YesOrNoOrNa", // IsJudgeQuestion=false, // IsShowInDicom=false, // GlobalReadingShowType=GlobalReadingShowType.NotShow, // QuestionEnName="Brain metastases present", // QuestionName="存在脑转移", // Type="radio", // QuestionGenre=TableQuestionType.Dictionary, // DataSource=DataSources.ManualEntry, // ShowQuestion=ShowQuestion.Show, // IsAdditional=true //} , //} //}); } } public List GetSystemDefeaultAdditionalAssessmentList(CriterionType criterionType, AdditionalAssessmentType? additionalAssessmentType = null) { return SystemDefeaultAdditionalAssessmentList.Where(t => t.CriterionType == criterionType) .WhereIf(additionalAssessmentType != null, t => t.AdditionalAssessmentType == additionalAssessmentType).ToList(); } } }