using IRaCIS.Core.Domain.Share; using System.Linq; namespace IRaCIS.Core.Domain.Models; [Comment("项目阅片问题")] [Table("ReadingTableQuestionTrial")] public class ReadingTableQuestionTrial : BaseAddAuditEntity { #region 导航属性 [JsonIgnore] [ForeignKey("DependParentId")] public ReadingTableQuestionTrial DependParentQuestion { get; set; } [JsonIgnore] [ForeignKey("ReadingQuestionId")] public ReadingQuestionTrial ReadingQuestionTrial { get; set; } [NotMapped] public List ParentTriggerValueList { get { try { return this.ParentTriggerValue.Split(',').ToList(); } catch (Exception) { return new List(); } } } [NotMapped] public List RelevanceValueList { get { try { return this.RelevanceValue.Split(',').ToList(); } catch (Exception) { return new List(); } } } [NotMapped] public List CalculateQuestionList { get { try { var result = JsonConvert.DeserializeObject>(this.CalculateQuestions); return result == null ? new List() : result; } catch (Exception) { return new List(); } } } #endregion public Guid TrialId { get; set; } [Comment("项目问题的Id ReadingQuestionTrial的id")] public Guid ReadingQuestionId { get; set; } public string Type { get; set; } = string.Empty; public Guid? ParentId { get; set; } public string ParentTriggerValue { get; set; } = string.Empty; public string QuestionName { get; set; } = string.Empty; public IsRequired IsRequired { get; set; } public int ShowOrder { get; set; } public string TypeValue { get; set; } = string.Empty; public bool IsEnable { get; set; } public string Remark { get; set; } = string.Empty; public Guid? RelevanceId { get; set; } public string RelevanceValue { get; set; } = string.Empty; public int ShowQuestion { get; set; } public int? MaxRowCount { get; set; } public string DataTableName { get; set; } = string.Empty; public string DataTableColumn { get; set; } = string.Empty; public TableQuestionType? TableQuestionType { get; set; } public Guid? DependParentId { get; set; } public IsDepend IsDepend { get; set; } public Guid TrialCriterionId { get; set; } [Comment("问题标识")] public QuestionMark? QuestionMark { get; set; } [Comment("字典code")] public string DictionaryCode { get; set; } = string.Empty; [Comment("数值类型")] public ValueOfType? ValueType { get; set; } [Comment("单位")] public ValueUnit? Unit { get; set; } [Comment("自定义单位")] public string CustomUnit { get; set; } = string.Empty; [Comment("自定义计算标记")] public CustomCalculateMark? CustomCalculateMark { get; set; } [Comment("限制编辑")] public LimitEdit LimitEdit { get; set; } = LimitEdit.None; [Comment("自定义计算标记")] [MaxLength] public string CalculateQuestions { get; set; } = "[]"; [Comment("问题英文名称")] public string QuestionEnName { get; set; } = string.Empty; [Comment("数据来源")] public DataSources DataSource { get; set; } = DataSources.ManualEntry; [Comment("最大答案长度")] public int? MaxAnswerLength { get; set; } [Comment("文件类型")] public string FileType { get; set; } = string.Empty; [Comment("问题分类")] public QuestionClassify? QuestionClassify { get; set; } [Comment("复制病灶的时候 是否复制这个问题")] public bool IsCopy { get; set; } = false; [Comment("系统表格问题Id")] public Guid? SystemTableQuestionId { get; set; } }