using IRaCIS.Core.Application.Service.Reading.Dto; using IRaCIS.Core.Domain.Share; using IRaCIS.Core.Domain.Share.Reading; 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 static class AdditionalAssessment { public static List SystemDefeaultAdditionalAssessmentList { get; set; } = new List(); static AdditionalAssessment() { //Resist1.1 脑转移 默认评估问题 SystemDefeaultAdditionalAssessmentList.Add(new CriterionAdditionalAssessment() { CriterionType = CriterionType.RECIST1Point1, AdditionalAssessmentType = AdditionalAssessmentType.BrainMetastasis, AdditionalQuestionList = new List(){ new ReadingQuestionTrial() { LimitEdit=LimitEdit.OnlyBaseLine, DictionaryCode="ReadingYesOrNo", IsJudgeQuestion=false, IsShowInDicom=false, GlobalReadingShowType=GlobalReadingShowType.NotShow, QuestionEnName="存在脑转移", QuestionName="Brain metastases present", Type="radio", QuestionGenre=TableQuestionType.Dictionary, DataSource=DataSources.ManualEntry, ShowQuestion=ShowQuestion.Show, IsAdditional=true } } }); } public static List GetSystemDefeaultAdditionalAssessmentList(CriterionType criterionType, AdditionalAssessmentType? additionalAssessmentType=null) { return SystemDefeaultAdditionalAssessmentList.Where(t => t.CriterionType == criterionType) .WhereIf(additionalAssessmentType!=null,t=>t.AdditionalAssessmentType==additionalAssessmentType).ToList(); } } }