using System; using IRaCIS.Core.Domain.Share; using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; using System.Collections.Generic; namespace IRaCIS.Core.Domain.Models { /// /// 项目阅片标准 /// [Table("ReadingQuestionCriterionTrial")] public class ReadingQuestionCriterionTrial : Entity, IAuditAdd { /// /// 系统标准ID /// public Guid? ReadingQuestionCriterionSystemId { get; set; } /// /// 项目Id /// public Guid TrialId { get; set; } /// /// 标准 /// public string CriterionName { get; set; } /// /// 是否启用 /// public bool IsEnable { get; set; } /// /// 排序 /// public int ShowOrder { get; set; } /// /// 是否完成配置 /// public bool IsCompleteConfig { get; set; } /// /// 创建时间 /// public DateTime CreateTime { get; set; } /// /// 创建人 /// public Guid CreateUserId { get; set; } /// /// 描述 /// public string Description { get; set; } /// /// 是否确认 /// public bool IsConfirm { get; set; } /// /// 表单类型 /// public FormType FormType { get; set; } = FormType.SinglePage; /// /// 修约小数点 /// public int? DigitPlaces { get; set; } = 1; /// /// 评估结果 /// public string EvaluationResult { get; set; } = string.Empty; /// /// 全局阅片评估更新类型 /// public string GlobalUpdateType { get; set; } = string.Empty; /// /// 评估原因 /// public string EvaluationReason { get; set; } = "肿瘤学阅片评估原因请依据临床数据填写,在与影像学结果不一致时必填。"; /// /// 是否显示详情 /// public bool IsShowDetail { get; set; } = true; /// /// 同步时间 /// public DateTime SynchronizeTime { get; set; } /// /// 同步器官时间 /// public DateTime? SynchronizeOriginalTime { get; set; } /// /// 标准类型 /// public CriterionType CriterionType { get; set; } /// /// 是否加急 /// public bool IsUrgent { get; set; } = false; /// /// eCRF报告是否显示在图像页面 /// public bool IseCRFShowInDicomReading { get; set; } = false; #region 阅片单元配置 新加 /// /// 阅片平台 /// public ImagePlatform ImagePlatform { get; set; } = ImagePlatform.PACS; /// /// 阅片工具 /// public ReadingTool? ReadingTool { get; set; } /// /// 任务组织级别 /// public ReadingTaskViewMethod ReadingTaskViewEnum { get; set; } /// /// 阅片是否显示受试者信息 /// public bool IsReadingShowSubjectInfo { get; set; } = true; /// /// IR阅片页面是否可以查看既往任务结果 /// public bool IsReadingShowPreviousResults { get; set; } = true; /// /// 是确认医学审核问题 /// public bool IsConfirmMedicineQuestion { get; set; } = false; /// /// 仲裁对象 /// public ArbitrationRule ArbitrationRule { get; set; } = ArbitrationRule.Reading; /// /// 阅片模式 /// public ReadingMethod ReadingType { get; set; } = ReadingMethod.Double; /// /// 是否有阅片期 /// public bool IsReadingPeriod { get; set; } = true; /// /// 是否生成全局阅片任务 /// public bool IsGlobalReading { get; set; } = true; /// /// 是否签名 /// public bool IsSigned { get; set; } = false; /// /// 仲裁阅片 /// public bool IsArbitrationReading { get; set; } = true; /// /// 肿瘤学阅片 原字段 IsClinicalReading /// public bool IsOncologyReading { get; set; } /// /// 任务展示访视 读片任务显示是否顺序 /// public bool IsReadingTaskViewInOrder { get; set; } = true; //任务分配对象 public TaskAllocateObj TaskAllocateObjEnum { get; set; } //后续访视任务自动分配 public bool IsFollowVisitAutoAssign { get; set; } = true; //后续全局自动分配 public bool IsFollowGlobalVisitAutoAssign { get; set; } = true; public bool IsFollowJudgeTaskAutoAssign { get; set; } = true; public TaskAllocateDefaultState FollowJudgeTaskAutoAssignDefaultState { get; set; } = TaskAllocateDefaultState.Allocated; //后续访视自动分配默认状态 public TaskAllocateDefaultState FollowVisitAutoAssignDefaultState { get; set; } = TaskAllocateDefaultState.Allocated; //后续全局自动分配默认状态 public TaskAllocateDefaultState FollowGlobalVisitAutoAssignDefaultState { get; set; } = TaskAllocateDefaultState.Allocated; /// /// 阅片信息签名时间 /// public DateTime? ReadingInfoSignTime { get; set; } /// /// 是否必须全局阅片 /// public bool IsMustGlobalReading { get; set; } = false; //是否附加评估 public bool IsAdditionalAssessment { get; set; } //自动 手动生成任务 public bool IsAutoCreate { get; set; }=true; #endregion /// /// 项目 /// [ForeignKey("TrialId")] [JsonIgnore] public Trial Trial { get; set; } [JsonIgnore] public List ReadingQuestionTrialList = new List(); [JsonIgnore] public List TrialCriterionAdditionalAssessmentTypeList { get; set; } = new List(); [JsonIgnore] public List VisitTaskList { get; set; } } }