
//--------------------------------------------------------------------
//     此代码由T4模板自动生成  byzhouhang 20210918
//	   生成时间 2021-12-23 13:16:57 
//     对此文件的更改可能会导致不正确的行为，并且如果重新生成代码，这些更改将会丢失。
using IRaCIS.Core.Domain.Share;
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace IRaCIS.Core.Domain.Models
{
	 ///<summary>
	 ///TrialSiteSurvey
	 ///</summary>
	 [Table("TrialSiteSurvey")]	
	 public class TrialSiteSurvey : Entity, IAuditUpdate, IAuditAdd,ISoftDelete
	 {     
		 public TrialSiteSurveyEnum State { get; set; } = TrialSiteSurveyEnum.ToSubmit;


        // 必须 { get; set; }  否则 翻译出错
        [JsonIgnore]
		public List<TrialSiteUserSurvey> TrialSiteUserSurveyList { get; set; } =new List<TrialSiteUserSurvey>();
		[JsonIgnore]
		public List<TrialSiteEquipmentSurvey> TrialSiteEquipmentSurveyList { get; set; } = new List<TrialSiteEquipmentSurvey>();

		[JsonIgnore]
		public TrialSite TrialSite { get; set; }
		[JsonIgnore]
		public Trial Trial { get; set; }
		[JsonIgnore]
		public Site Site { get; set; }

        public DateTime? DeletedTime { get; set; }


		public bool IsDeleted { get; set; }

		public Guid? DeleteUserId { get; set; }

		/// <summary>
		/// TrialId
		/// </summary>
		[Required]
		public Guid TrialId { get; set; }
	
		/// <summary>
        /// SiteId
        /// </summary>
		[Required]
		public Guid SiteId { get; set; }
	
		/// <summary>
        /// CreateTime
        /// </summary>
		[Required]
		public DateTime CreateTime { get; set; }
	
		/// <summary>
        /// CreateUserId
        /// </summary>
		[Required]
		public Guid CreateUserId { get; set; }
	
		/// <summary>
        /// UpdateTime
        /// </summary>
		[Required]
		public DateTime UpdateTime { get; set; }
	
		/// <summary>
        /// UpdateUserId
        /// </summary>
		[Required]
		public Guid UpdateUserId { get; set; }
	
		/// <summary>
        /// UserName
        /// </summary>
		[Required]
		public string UserName { get; set; } = string.Empty;

		/// <summary>
		/// Phone
		/// </summary>
		[Required]
		public string Phone { get; set; } = string.Empty;

		/// <summary>
		/// Email
		/// </summary>
		[Required]
		public string Email { get; set; } = string.Empty;

		/// <summary>
		/// AverageEngravingCycle
		/// </summary>
		[Required]
		public int AverageEngravingCycle { get; set; }
	
		/// <summary>
        /// IsConfirmImagingTechnologist
        /// </summary>
		[Required]
		public bool IsConfirmImagingTechnologist { get; set; }
	
		/// <summary>
        /// NotConfirmReson
        /// </summary>
		[Required]
		public string NotConfirmReson { get; set; } = string.Empty;

		/// <summary>
		/// EfficacyEvaluatorType
		/// </summary>
		[Required]
		public int EfficacyEvaluatorType { get; set; }
	
		/// <summary>
        /// IsFollowStudyParameters
        /// </summary>
		[Required]
		public bool IsFollowStudyParameters { get; set; }

		/// <summary>
		/// NotFollowReson
		/// </summary>
		[Required]
		public string NotFollowReson { get; set; } = string.Empty;


		public string LatestBackReason { get; set; } = string.Empty;



		public Guid? PreliminaryUserId { get; set; }

		public Guid? ReviewerUserId { get; set; }

		public DateTime? PreliminaryTime { get; set; }

		public DateTime? ReviewerTime { get; set; }

		[JsonIgnore]
		public User ReviewerUser { get; set; }
		[JsonIgnore]
		public User PreliminaryUser { get; set; }


	}

}	 
