using System; using IRaCIS.Core.Domain.Share; using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; using System.Collections.Generic; using System.Linq; namespace IRaCIS.Core.Domain.Models { /// /// 临床资料项目配置 /// [Table("ClinicalDataTrialSet")] public class ClinicalDataTrialSet : Entity, IAuditAdd { /// /// 项目ID /// public Guid TrialId { get; set; } /// /// 名称 /// public string ClinicalDataSetName { get; set; } /// /// 临床级别 /// public ClinicalLevel ClinicalDataLevel { get; set; } /// /// 上传方式 /// public ClinicalUploadType ClinicalUploadType { get; set; } /// /// 系统的ClinicalDataSetId /// public Guid? SystemClinicalDataSetId { get; set; } /// /// 创建时间 /// public DateTime CreateTime { get; set; } /// /// 创建人 /// public Guid CreateUserId { get; set; } /// /// 是否确认 /// public bool IsConfirm { get; set; } /// /// 上传角色 /// public UploadRole UploadRole { get; set; } /// /// 模板文件名称 /// public string FileName { get; set; } /// /// 文件路径 /// public string Path { get; set; } [JsonIgnore] /// /// /// public List ReadingClinicalDataList { get; set; } [JsonIgnore] [ForeignKey("TrialId")] public Trial Trial { get; set; } [JsonIgnore] public List TrialClinicalDataSetCriteriaList { get; set; } public string CriterionEnumListStr { get; set; } = String.Empty; public List CriterionEnumList => CriterionEnumListStr.Split('|', StringSplitOptions.RemoveEmptyEntries).Where(t => !string.IsNullOrEmpty(t) && int.TryParse(t.Trim(), out var s)).Select(t => int.Parse(t.Trim())).ToList(); } }