using IRaCIS.Core.Domain.Share;
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Text;
namespace IRaCIS.Core.Application.Contracts
{
public class BasicTrialConfig
{
public Guid TrialId { get; set; }
///
/// 受试者编号具体规则
///
public string SubjectCodeRule { get; set; } = string.Empty;
public List TrialCriterionIds { get; set; } = new List();
public List TrialCriterionNames { get; set; } = new List();
public List ClinicalDataTrialSetIds { get; set; } = new List();
public bool IsSubjectSecondCodeView { get; set; }
///
/// 是否 验证拍片日期
///
public bool IsVerifyVisitImageDate { get; set; } = false;
///
/// 是否 提醒受试者编号规则
///
public bool IsNoticeSubjectCodeRule { get; set; } = true;
///
/// 是否 有基准时间(首次给药时间)
///
public bool IsHaveFirstGiveMedicineDate { get; set; } = true;
///
/// 是否有 受试者年龄
///
public bool IsHaveSubjectAge { get; set; } = false;
public bool IsTrialBasicLogicConfirmed { get; set; } = false;
///
/// 出组后计划外访视名称
///
public string OutEnrollmentVisitName { get; set; } = "EOT";
public bool IsSubjectSexView { get; set; } = false;
public int ChangeDefalutDays { get; set; } = 5;
///
/// 跨项目复制
///
public bool IsImageReplicationAcrossTrial { get; set; } = false;
public string BodyPartTypes { get; set; } = string.Empty;
public string Modalitys { get; set; } = string.Empty;
}
public class TrialProcessConfig
{
public List CriterionIds { get; set; } = new List();
public List TrialCriterionIds { get; set; } = new List();
public Guid TrialId { get; set; }
///
/// 临床信息传输 1:系统录入2:系统录入+PDF 0:无
///
public int ClinicalInformationTransmissionEnum { get; set; } = 1;
public List ClinicalDataTrialSetIds { get; set; } = new List();
///
/// QC流程 0 不审,1 单审,2双审
///
public TrialQCProcess QCProcessEnum { get; set; }
///
/// 影像一致性核查
///
public bool IsImageConsistencyVerification { get; set; } = false;
///
/// 流程是否确认
///
public bool IsTrialProcessConfirmed { get; set; } = false;
///
/// 1 Mint、2 PACS
///
public int ImagePlatform { get; set; } = 1;
//阅片方式
public int ReadingMode { get; set; }
//阅片类型
public int ReadingType { get; set; }
public bool IsGlobalReading { get; set; } = true;
public bool? IsArbitrationReading { get; set; }
public bool? IsClinicalReading { get; set; }
public int? DigitPlaces { get; set; }
//读片任务显示是否顺序
public bool IsReadingTaskViewInOrder { get; set; }
///
/// 仲裁规则
///
public ArbitrationRule ArbitrationRule { get; set; }
///
/// 阅片是否显示受试者信息
///
public bool IsReadingShowSubjectInfo { get; set; } = false;
///
/// 阅片是否显示既往结果
///
public bool IsReadingShowPreviousResults { get; set; } = false;
public ReadingTaskViewMethod ReadingTaskViewEnum { get; set; }
}
public class TrialTaskConfig
{
public Guid TrialId { get; set; }
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 FollowVisitAutoAssignDefaultState { get; set; } = TaskAllocateDefaultState.Allocated;
public TaskAllocateDefaultState FollowGlobalVisitAutoAssignDefaultState { get; set; } = TaskAllocateDefaultState.Allocated;
public TaskAllocateDefaultState FollowJudgeTaskAutoAssignDefaultState { get; set; } = TaskAllocateDefaultState.Allocated;
}
public class TrialBasicConfigView : TrialTaskConfigView
{
///
/// 流程是否确认
///
public bool IsTrialProcessConfirmed { get; set; } = false;
//阅片方式
public int ReadingMode { get; set; }
public bool IsGlobalReading { get; set; } = true;
public bool? IsArbitrationReading { get; set; }
public bool? IsClinicalReading { get; set; }
public ArbitrationRule ArbitrationRule { get; set; }
}
public class TrialTaskConfigView : TrialTaskConfig
{
public ReadingTaskViewMethod ReadingTaskViewEnum { get; set; }
public bool IsReadingTaskViewInOrder { get; set; } = true;
public ReadingMethod ReadingType { get; set; }
///
/// 阅片是否显示受试者信息
///
public bool IsReadingShowSubjectInfo { get; set; }
///
/// 阅片是否显示既往结果
///
public bool IsReadingShowPreviousResults { get; set; }
///
/// QC流程 0 不审,1 单审,2双审
///
public TrialQCProcess QCProcessEnum { get; set; } = TrialQCProcess.DoubleAudit;
///
/// 影像一致性核查
///
public bool IsImageConsistencyVerification { get; set; } = true;
}
public class TrialReadingTaskViewConfig
{
public Guid TrialId { get; set; }
public ReadingTaskViewMethod ReadingTaskViewEnum { get; set; }
public bool IsReadingTaskViewInOrder { get; set; } = true;
///
/// 阅片是否显示受试者信息
///
public bool IsReadingShowSubjectInfo { get; set; }
///
/// 阅片是否显示既往结果
///
public bool IsReadingShowPreviousResults { get; set; }
}
public class TrialJudgeTaskConfig
{
public Guid TrialId { get; set; }
public bool IsFollowJudgeTaskAutoAssign { get; set; }
public TaskAllocateDefaultState FollowJudgeTaskAutoAssignDefaultState { get; set; }
}
public class TrialUrgentConfig
{
public Guid TrialId { get; set; }
public bool IsSubjectExpeditedView { get; set; } = false;
///
/// 是否有 入组评估确认
///
public bool IsEnrollementQualificationConfirm { get; set; } = false;
///
/// 流程配置是否确认
///
public bool IsTrialUrgentConfirmed { get; set; } = false;
public bool IsUrgent { get; set; }
public bool IsPDProgressView { get; set; }
}
public class TrialStateChangeDTO
{
public Guid Id { get; set; }
public Guid TrialId { get; set; }
public string OriginState { get; set; } = String.Empty;
public string NowState { get; set; } = String.Empty;
public string Reason { get; set; } = String.Empty;
public DateTime CreateTime { get; set; }
public Guid CreateUserId { get; set; }
public string UserName { get; set; } = String.Empty;
public string UserRealName { get; set; } = String.Empty;
public string SignCode { get; set; } = string.Empty;
}
public class GetTrialReadingInfoOutDto
{
///
/// 项目ID
///
public Guid TrialId { get; set; }
///
/// 阅片平台
///
public int ImagePlatform { get; set; } = 1;
///
/// 任务组织级别
///
public ReadingTaskViewMethod ReadingTaskViewEnum { get; set; }
///
/// 影像是否有标注
///
public bool IsImageIabeled { get; set; }
///
/// IR阅片是否显示受试者信息
///
public bool IsReadingShowSubjectInfo { get; set; } = false;
///
/// IR阅片是否显示既往结果
///
public bool IsReadingShowPreviousResults { get; set; } = false;
//读片任务显示是否顺序
public bool IsReadingTaskViewInOrder { get; set; } = true;
///
/// 仲裁规则/对象
///
public ArbitrationRule ArbitrationRule { get; set; }
///
/// 阅片信息签名时间
///
public DateTime? ReadingInfoSignTime { get; set; }
public bool IsSign {
get {
return this.ReadingInfoSignTime != null;
}
}
public bool IsClinicalReading { get; set; }
///
/// 仲裁阅片
///
public bool? IsArbitrationReading { get; set; }
/////
///// 全局阅片
/////
//public bool IsGlobalReading { get; set; } = true;
/////
///// 阅片方式
/////
//public int ReadingMode { get; set; } = 1;
/////
///// 阅片模式
/////
//public ReadingMethod ReadingType { get; set; } = ReadingMethod.Double;
/////
///// 仲裁阅片
/////
//public bool? IsArbitrationReading { get; set; } = true;
/////
///// 肿瘤学阅片
/////
//public bool IsClinicalReading { get; set; }
/////
///// 读片任务显示是否顺序
/////
//public bool IsReadingTaskViewInOrder { get; set; } = true;
}
public class ReadingCriterionPageDto
{
///
/// pageId
///
public Guid Id { get; set; }
///
/// 项目ID
///
public Guid TrialId { get; set; }
///
/// 分页名称
///
public string PageName { get; set; }
///
/// 是否启用
///
public bool IsEnable { get; set; }
///
/// 是否公共分页
///
public bool IsPublicPage { get; set; }
public int ShowOrder { get; set; }
///
/// 创建时间
///
public DateTime CreateTime { get; set; }
///
/// 创建用户ID
///
public Guid CreateUserId { get; set; }
}
public class TrialReadQuestion
{
public Guid Id { get; set; }
///
/// 排序
///
public int ShowOrder { get; set; }
///
/// 分页名称
///
public string PageName { get; set; }
///
/// 问题名称
///
public string QuestionName { get; set; }
///
/// 类型
///
public string Type { get; set; }
///
/// 父问题触发
///
public string ParentTriggerValue { get; set; }
///
/// 父问题名称
///
public string ParentQuestionName { get; set; }
///
/// 是否是必须
///
public IsRequired IsRequired { get; set; }
///
/// 是否显示
///
public ShowQuestion ShowQuestion { get; set; }
///
/// 类型值
///
public string TypeValue { get; set; }
///
/// 是否启用
///
public bool IsEnable { get; set; }
///
/// 是否是裁判问题
///
public bool IsJudgeQuestion { get; set; }
///
/// 备注
///
public string Remark { get; set; }
///
/// 分组
///
public string GroupName { get; set; }
///
/// 答案分组
///
public string AnswerGroup { get; set; } = string.Empty;
///
/// 答案组合
///
public string AnswerCombination { get; set; } = string.Empty;
///
/// 裁判类型
///
public JudgeTypeEnum JudgeType { get; set; }
}
public class TrialJudgeQuestion
{
public Guid ReadingQuestionCriterionTrialId { get; set; }
public Guid QuestionId { get; set; }
///
/// 问题名称
///
public string QuestionName { get; set; }
public string PageName { get; set; }
///
/// 答案分组
///
public string AnswerGroup { get; set; } = string.Empty;
///
/// 答案组合
///
public string AnswerCombination { get; set; } = string.Empty;
///
/// 裁判类型
///
public JudgeTypeEnum JudgeType { get; set; }
}
public class TrialReadingCriterion
{
public Guid Id { get; set; }
///
/// 标准
///
public string CriterionName { get; set; }
}
public class TrialReadingInfoSignInDto
{
[NotDefault]
public Guid TrialId { get; set; }
}
public class GetTrialReadingCriterionInfoOutDto
{
///
/// 阅片信息签名时间
///
public DateTime? ReadingInfoSignTime { get; set; }
public bool IsSign
{
get
{
return this.ReadingInfoSignTime != null;
}
}
///
/// 修约小数点
///
public int? DigitPlaces { get; set; }
public bool IsFromSystem { get; set; } = false;
public FormType? FormType { get; set; }
///
/// 项目标准Id
///
public Guid? TrialCriterionId { get; set; }
///
/// 项目分页
///
public List ReadingCriterionPageList { get; set; }
///
/// 项目问题集合
///
public List TrialQuestionList { get; set; }
}
public class SetOncologySetInDto
{
///
/// 项目ID
///
public Guid TrialId { get; set; }
///
/// 评估结果
///
public string EvaluationResult { get; set; } = string.Empty;
///
/// 评估原因
///
public string EvaluationReason { get; set; } = string.Empty;
///
/// 是否显示详情
///
public bool IsShowDetail { get; set; }
}
public class GetOncologySetOutDto
{
public bool IsSign { get; set; }
///
/// 评估结果
///
public string EvaluationResult { get; set; } = string.Empty;
///
/// 评估原因
///
public string EvaluationReason { get; set; } = string.Empty;
///
/// 是否显示详情
///
public bool IsShowDetail { get; set; }
}
public class GetOncologySetInDto
{
public Guid TrialId { get; set; }
}
public class GetTrialReadingInfoInDto
{
[NotDefault]
public Guid TrialId { get; set; }
}
public class SetTrialReadingCriterionInDto
{
public Guid TrialCriterionId { get; set; }
///
/// 表单类型
///
public FormType FormType { get; set; }
///
/// 修约小数点
///
public int? DigitPlaces { get; set; }
public bool IsSignSave { get; set; } = false;
}
public class SetTrialReadingInfoInDto
{
///
/// 项目ID
///
public Guid TrialId { get; set; }
///
/// 阅片平台
///
public int ImagePlatform { get; set; } = 1;
///
/// 任务组织级别
///
public ReadingTaskViewMethod ReadingTaskViewEnum { get; set; }
///
/// 影像是否有标注
///
public bool IsImageIabeled { get; set; }
//读片任务显示是否顺序
public bool IsReadingTaskViewInOrder { get; set; } = true;
///
/// IR阅片是否显示受试者信息
///
public bool IsReadingShowSubjectInfo { get; set; } = false;
///
/// IR阅片是否显示既往结果
///
public bool IsReadingShowPreviousResults { get; set; } = false;
///
/// 仲裁规则/对象
///
public ArbitrationRule ArbitrationRule { get; set; }
}
public class SignConfirmDTO
{
[NotDefault]
public Guid TrialId { get; set; }
//[NotDefault]
//public Guid SignId { get; set; }
[NotDefault]
public string SignCode { get; set; } = string.Empty;
}
public class TrialConfigDTO : BasicTrialConfig
{
public List CriterionIds { get; set; } = new List();
public List ClinicalDataSetNames { get; set; } = new List();
public bool IsTrialProcessConfirmed { get; set; }
public bool IsTrialUrgentConfirmed { get; set; }
public int DigitPlaces { get; set; }
///
/// QC流程 0 不审,1 单审,2双审
///
public TrialQCProcess QCProcessEnum { get; set; }
///
/// 影像一致性核查
///
public bool IsImageConsistencyVerification { get; set; } = false;
///
/// 1 Mint、2 PACS
///
public int ImagePlatform { get; set; } = 1;
//阅片方式
public int ReadingMode { get; set; }
//阅片类型
public int ReadingType { get; set; }
public bool IsGlobalReading { get; set; } = true;
public bool? IsArbitrationReading { get; set; }
public bool? IsClinicalReading { get; set; }
public ArbitrationRule ArbitrationRule { get; set; }
public bool IsSubjectExpeditedView { get; set; } = false;
///
/// 是否有 入组评估确认
///
public bool IsEnrollementQualificationConfirm { get; set; } = false;
public bool IsUrgent { get; set; }
public bool IsPDProgressView { get; set; }
//public bool IsTrialStart { get; set; } = false;
public bool IsQCQuestionConfirmed { get; set; }
public string TrialStatusStr { get; set; } = string.Empty;
//读片任务显示是否顺序
public bool IsReadingTaskViewInOrder { get; set; }
//public string DocumentConfirmSignText { get; set; } = string.Empty;
//public string ImageQCSignText { get; set; } = string.Empty;
//public string PreliminaryAuditReuploadText { get; set; } = string.Empty;
//public string ReviewAuditReuploadText { get; set; } = string.Empty;
//public string CheckBackText { get; set; } = string.Empty;
//public string CheckCloseText { get; set; } = string.Empty;
//public string ChallengeTypes { get; set; } = string.Empty;
//public bool IsImageExport { get; set; } = false;
//public bool IsCRAAuditClinicalInformation { get; set; } = false;
//public string TrialSiteSurveyUserRoles { get; set; } = string.Empty;
//public string TrialSiteSurveyEquipmentType { get; set; } = string.Empty;
}
}