432 lines
		
	
	
		
			10 KiB
		
	
	
	
		
			C#
		
	
	
			
		
		
	
	
			432 lines
		
	
	
		
			10 KiB
		
	
	
	
		
			C#
		
	
	
using IRaCIS.Core.Domain.Share;
 | 
						|
using System;
 | 
						|
using System.Collections.Generic;
 | 
						|
using System.Linq;
 | 
						|
using System.Text;
 | 
						|
using System.Threading.Tasks;
 | 
						|
 | 
						|
namespace IRaCIS.Core.Application.Service.Reading.Dto
 | 
						|
{
 | 
						|
 | 
						|
    #region 预览
 | 
						|
 | 
						|
 | 
						|
    public class GetSystemClinicalQuestionPreviewDto
 | 
						|
    {
 | 
						|
        /// <summary>
 | 
						|
        /// 系统临床数据Id
 | 
						|
        /// </summary>
 | 
						|
        public Guid SystemClinicalId { get; set; }
 | 
						|
    }
 | 
						|
 | 
						|
    public class GetTrialClinicalQuestionPreviewDto
 | 
						|
    {
 | 
						|
        /// <summary>
 | 
						|
        /// 项目临床数据Id
 | 
						|
        /// </summary>
 | 
						|
        public Guid TrialClinicalId { get; set; }
 | 
						|
    }
 | 
						|
 | 
						|
    /// <summary>
 | 
						|
    /// 项目预览问题Dto
 | 
						|
    /// </summary>
 | 
						|
    public class ClinicalQuestionPreviewDto : TrialClinicalQuestionDto
 | 
						|
    {
 | 
						|
        /// <summary>
 | 
						|
        /// 系统临床数据Id
 | 
						|
        /// </summary>
 | 
						|
        public Guid SystemClinicalId { get; set; }
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// 子问题
 | 
						|
        /// </summary>
 | 
						|
        public List<ClinicalQuestionPreviewDto> Childrens { get; set; } = new List<ClinicalQuestionPreviewDto>();
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// 表格问题
 | 
						|
        /// </summary>
 | 
						|
        public List<ClinicalTablePreviewDto> TableQuestions { get; set; } = new List<ClinicalTablePreviewDto>();
 | 
						|
    }
 | 
						|
 | 
						|
 | 
						|
    /// <summary>
 | 
						|
    /// 系统临床数据问题
 | 
						|
    /// </summary>
 | 
						|
    public class ClinicalTablePreviewDto : TrialClinicalTableQuestionDto
 | 
						|
    {
 | 
						|
        /// <summary>
 | 
						|
        /// 系统临床数据Id
 | 
						|
        /// </summary>
 | 
						|
        public Guid SystemClinicalId { get; set; }
 | 
						|
    }
 | 
						|
 | 
						|
    #endregion
 | 
						|
 | 
						|
 | 
						|
    #region 外层问题
 | 
						|
    /// <summary>
 | 
						|
    /// 临床问题基本信息
 | 
						|
    /// </summary>
 | 
						|
    public class ClinicalQuestionBase
 | 
						|
    {
 | 
						|
        /// <summary>
 | 
						|
        /// Id
 | 
						|
        /// </summary>
 | 
						|
        public Guid? Id { get; set; }
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// 问题名称
 | 
						|
        /// </summary>
 | 
						|
        public string QuestionName { get; set; } = string.Empty;
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// 问题英文名称
 | 
						|
        /// </summary>
 | 
						|
        public string QuestionEnName { get; set; } = string.Empty;
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// 临床问题类型(分组,单选。)
 | 
						|
        /// </summary>
 | 
						|
        public string ClinicalQuestionType { get; set; }
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// 问题标识
 | 
						|
        /// </summary>
 | 
						|
        public ClinicalQuestionMark? ClinicalQuestionMarkEnum { get; set; }
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// 最大长度
 | 
						|
        /// </summary>
 | 
						|
        public int? MaxAnswerLength { get; set; }
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// 临床数据选项类型(无,自定义)
 | 
						|
        /// </summary>
 | 
						|
        public ClinicalOptionType ClinicalOptionTypeEnum { get; set; }
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// 分组Id
 | 
						|
        /// </summary>
 | 
						|
        public Guid? GroupId { get; set; }
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// 自定义选项
 | 
						|
        /// </summary>
 | 
						|
        public string TypeValue { get; set; } = string.Empty;
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// 字典Code
 | 
						|
        /// </summary>
 | 
						|
        public string DictionaryCode { get; set; } = string.Empty;
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// 排序
 | 
						|
        /// </summary>
 | 
						|
        public int ShowOrder { get; set; } = 0;
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// 是否必填
 | 
						|
        /// </summary>
 | 
						|
        public bool IsRequired { get; set; } = false;
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// 父问题Id
 | 
						|
        /// </summary>
 | 
						|
        public Guid? ParentId { get; set; }
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// 父问题触发值
 | 
						|
        /// </summary>
 | 
						|
        public string ParentTriggerValue { get; set; } = string.Empty;
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// 显示类型
 | 
						|
        /// </summary>
 | 
						|
        public ClinicalQuestionShow ClinicalQuestionShowEnum { get; set; } = ClinicalQuestionShow.Show;
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// 是否是检查日期
 | 
						|
        /// </summary>
 | 
						|
        public bool IsCheckDate { get; set; }
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// 小数点位数
 | 
						|
        /// </summary>
 | 
						|
        public int? DigitPlaces { get; set; }
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// 单位
 | 
						|
        /// </summary>
 | 
						|
        public string Unit { get; set; } = string.Empty;
 | 
						|
    }
 | 
						|
 | 
						|
    /// <summary>
 | 
						|
    /// 查询临床数据基类
 | 
						|
    /// </summary>
 | 
						|
    public class ClinicalQuestionQueryBase : PageInput
 | 
						|
    {
 | 
						|
        /// <summary>
 | 
						|
        /// 问题名称
 | 
						|
        /// </summary>
 | 
						|
        public string QuestionName { get; set; } = string.Empty;
 | 
						|
    }
 | 
						|
 | 
						|
    /// <summary>
 | 
						|
    /// 获取项目临床数据
 | 
						|
    /// </summary>
 | 
						|
    public class TrialClinicalQuestionQuery : ClinicalQuestionQueryBase
 | 
						|
    {
 | 
						|
        public Guid TrialClinicalId { get; set; }
 | 
						|
    }
 | 
						|
 | 
						|
    /// <summary>
 | 
						|
    /// 获取项目分组
 | 
						|
    /// </summary>
 | 
						|
    public class GetTrialGroupDto
 | 
						|
    {
 | 
						|
        public Guid TrialClinicalId { get; set; }
 | 
						|
    }
 | 
						|
 | 
						|
 | 
						|
 | 
						|
    /// <summary>
 | 
						|
    /// 项目临床数据问题
 | 
						|
    /// </summary>
 | 
						|
    public class TrialClinicalQuestionDto : ClinicalQuestionBase
 | 
						|
    {
 | 
						|
        /// <summary>
 | 
						|
        /// 项目临床数据Id
 | 
						|
        /// </summary>
 | 
						|
        public Guid TrialClinicalId { get; set; }
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// 自定义计算标记
 | 
						|
        /// </summary>
 | 
						|
        public ClinicalCalculateMark? ClinicalCalculateMarkEnum { get; set; }
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// 自定义计算问题
 | 
						|
        /// </summary>
 | 
						|
        public string CalculateQuestions { get; set; } = "[]";
 | 
						|
    }
 | 
						|
 | 
						|
    /// <summary>
 | 
						|
    /// 获取系统临床数据
 | 
						|
    /// </summary>
 | 
						|
    public class SystemClinicalQuestionQuery : ClinicalQuestionQueryBase
 | 
						|
    {
 | 
						|
        public Guid SystemClinicalId { get; set; }
 | 
						|
    }
 | 
						|
 | 
						|
 | 
						|
 | 
						|
    /// <summary>
 | 
						|
    /// 系统临床数据问题
 | 
						|
    /// </summary>
 | 
						|
    public class SystemClinicalQuestionDto : ClinicalQuestionBase
 | 
						|
    {
 | 
						|
        /// <summary>
 | 
						|
        /// 系统临床数据Id
 | 
						|
        /// </summary>
 | 
						|
        public Guid SystemClinicalId { get; set; }
 | 
						|
    }
 | 
						|
 | 
						|
    /// <summary>
 | 
						|
    /// 获取系统分组
 | 
						|
    /// </summary>
 | 
						|
    public class GetSystemGroupDto
 | 
						|
    {
 | 
						|
        public Guid SystemClinicalId { get; set; }
 | 
						|
    }
 | 
						|
    #endregion
 | 
						|
 | 
						|
 | 
						|
    #region 表格问题
 | 
						|
    public class ClinicalTableQuestionBase
 | 
						|
 | 
						|
    {
 | 
						|
 | 
						|
        public Guid? Id { get; set; }
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// 问题名称
 | 
						|
        /// </summary>
 | 
						|
        public string QuestionName { get; set; } = string.Empty;
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// 问题英文名称
 | 
						|
        /// </summary>
 | 
						|
        public string QuestionEnName { get; set; } = string.Empty;
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// 临床问题类型(分组,单选。)
 | 
						|
        /// </summary>
 | 
						|
        public string ClinicalTableQuestionType { get; set; }
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// 问题标识
 | 
						|
        /// </summary>
 | 
						|
        public ClinicalTableQuestionMark? ClinicalTableQuestionMarkEnum { get; set; }
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// 最大长度
 | 
						|
        /// </summary>
 | 
						|
        public int? MaxAnswerLength { get; set; }
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// 临床数据选项类型(无,自定义)
 | 
						|
        /// </summary>
 | 
						|
        public ClinicalOptionType ClinicalOptionTypeEnum { get; set; }
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// 自定义选项
 | 
						|
        /// </summary>
 | 
						|
        public string TypeValue { get; set; }
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// 字典Code
 | 
						|
        /// </summary>
 | 
						|
        public string DictionaryCode { get; set; } = string.Empty;
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// 排序
 | 
						|
        /// </summary>
 | 
						|
        public int ShowOrder { get; set; }
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// 是否必填
 | 
						|
        /// </summary>
 | 
						|
        public bool IsRequired { get; set; }
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// 创建时间
 | 
						|
        /// </summary>
 | 
						|
        public DateTime CreateTime { get; set; }
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// 创建人
 | 
						|
        /// </summary>
 | 
						|
        public Guid CreateUserId { get; set; }
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// 外层问题Id
 | 
						|
        /// </summary>
 | 
						|
        public Guid QuestionId { get; set; }
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// 小数点位数
 | 
						|
        /// </summary>
 | 
						|
        public int? DigitPlaces { get; set; }
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// 单位
 | 
						|
        /// </summary>
 | 
						|
        public string Unit { get; set; } = string.Empty;
 | 
						|
    }
 | 
						|
 | 
						|
 | 
						|
 | 
						|
    /// <summary>
 | 
						|
    /// 项目临床数据问题
 | 
						|
    /// </summary>
 | 
						|
    public class TrialClinicalTableQuestionDto : ClinicalTableQuestionBase
 | 
						|
    {
 | 
						|
        /// <summary>
 | 
						|
        /// 项目临床数据Id
 | 
						|
        /// </summary>
 | 
						|
        public Guid TrialClinicalId { get; set; }
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// 自定义计算标记
 | 
						|
        /// </summary>
 | 
						|
        public ClinicalCalculateMark? ClinicalCalculateMarkEnum { get; set; }
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// 自定义计算问题
 | 
						|
        /// </summary>
 | 
						|
        public string CalculateQuestions { get; set; } = "[]";
 | 
						|
    }
 | 
						|
 | 
						|
 | 
						|
 | 
						|
    /// <summary>
 | 
						|
    /// 系统临床数据问题
 | 
						|
    /// </summary>
 | 
						|
    public class SystemClinicalTableQuestionDto : ClinicalTableQuestionBase
 | 
						|
    {
 | 
						|
        /// <summary>
 | 
						|
        /// 系统临床数据Id
 | 
						|
        /// </summary>
 | 
						|
        public Guid SystemClinicalId { get; set; }
 | 
						|
    }
 | 
						|
 | 
						|
   
 | 
						|
 | 
						|
 | 
						|
    /// <summary>
 | 
						|
    /// 查询临床数据基类
 | 
						|
    /// </summary>
 | 
						|
    public class ClinicalTableQuestionQueryBase : PageInput
 | 
						|
    {
 | 
						|
        /// <summary>
 | 
						|
        /// 问题名称
 | 
						|
        /// </summary>
 | 
						|
        public string QuestionName { get; set; } = string.Empty;
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// 外层问题Id
 | 
						|
        /// </summary>
 | 
						|
        public Guid QuestionId { get; set; }
 | 
						|
    }
 | 
						|
 | 
						|
    /// <summary>
 | 
						|
    /// 获取项目临床数据
 | 
						|
    /// </summary>
 | 
						|
    public class TrialClinicalTableQuestionQuery : ClinicalTableQuestionQueryBase
 | 
						|
    {
 | 
						|
       
 | 
						|
    }
 | 
						|
 | 
						|
    /// <summary>
 | 
						|
    /// 获取系统临床数据
 | 
						|
    /// </summary>
 | 
						|
    public class SystemClinicalTableQuestionQuery : ClinicalTableQuestionQueryBase
 | 
						|
    {
 | 
						|
      
 | 
						|
    }
 | 
						|
    #endregion
 | 
						|
 | 
						|
 | 
						|
    #region 同步临床数据
 | 
						|
 | 
						|
    public class SynchronizationQuestionDto
 | 
						|
    {
 | 
						|
        /// <summary>
 | 
						|
        /// 系统临床数据Id
 | 
						|
        /// </summary>
 | 
						|
        public Guid SystemClinicalId { get; set; }
 | 
						|
 | 
						|
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// 项目临床数据Id
 | 
						|
        /// </summary>
 | 
						|
        public Guid TrialClinicalId { get; set; }
 | 
						|
    }
 | 
						|
 | 
						|
 | 
						|
    public class QuestionDic
 | 
						|
    {
 | 
						|
        public Guid SystemQuestionId { get; set; }
 | 
						|
 | 
						|
        public Guid TrialQuestionId { get; set; }
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// 项目临床数据Id
 | 
						|
        /// </summary>
 | 
						|
        public Guid TrialClinicalId { get; set; }
 | 
						|
    }
 | 
						|
 | 
						|
    #endregion
 | 
						|
}
 |