

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
{
	///<summary>
	/// 项目的临床数据
	///</summary>
	[Table("ReadingClinicalData")]
	public class ReadingClinicalData : Entity, IAuditAdd
	{
		/// <summary>
		/// 项目ID
		/// </summary>
		public Guid TrialId { get; set; }

		/// <summary>
		/// 检查批次Id  或者模块Id
		/// </summary>
		public Guid ReadingId { get; set; }

		/// <summary>
		/// 患者ID
		/// </summary>
		public Guid SubjectId { get; set; }

		/// <summary>
		/// 临床数据类型Id
		/// </summary>
		public Guid ClinicalDataTrialSetId { get; set; }

		/// <summary>
		/// 是否为检查批次
		/// </summary>xiu
		public bool IsVisit { get; set; }

		/// <summary>
		/// 创建时间
		/// </summary>
		public DateTime CreateTime { get; set; }

		/// <summary>
		/// 是否签名
		/// </summary>
		public bool IsSign { get; set; }

		/// <summary>
		/// 是否盲化
		/// </summary>
		public bool? IsBlind { get; set; }

		/// <summary>
		/// 是否完整
		/// </summary>
		public bool? IsComplete { get; set; }

		/// <summary>
		/// 创建人
		/// </summary>
		public Guid CreateUserId { get; set; }

		public int FileCount { get; set; }


		//临床数据状态
		public ReadingClinicalDataStatus ReadingClinicalDataState { get; set; }

		[JsonIgnore]
		[ForeignKey("ClinicalDataTrialSetId")]

		public ClinicalDataTrialSet ClinicalDataTrialSet { get; set; }

		[JsonIgnore]
		[ForeignKey("ReadingId")]

		public SubjectVisit SubjectVisit { get; set; }

		[JsonIgnore]
		[ForeignKey("ReadingId")]

		public ReadModule ReadModule { get; set; }

		/// <summary>
		/// PDF文件
		/// </summary>
		[JsonIgnore]
		public List<ReadingClinicalDataPDF> ReadingClinicalDataPDFList { get; set; }


	}


	



}
