irc-netcore-api/IRaCIS.Core.Domain/Visit/Subject.cs

114 lines
3.1 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

using IRaCIS.Core.Domain.Share;
namespace IRaCIS.Core.Domain.Models;
/// <summary>
/// 受试者
/// </summary>
[Table("Subject")]
public class Subject : BaseFullDeleteAuditEntity
{
#region 导航属性
[JsonIgnore]
public List<TaskStudy> TaskStudyList { get; set; } = new List<TaskStudy>();
[JsonIgnore]
public List<SubjectVisit> SubjectVisitList { get; set; } = new List<SubjectVisit>();
[JsonIgnore]
public List<SubjectUser> SubjectDoctorList { get; set; } = new List<SubjectUser>();
[JsonIgnore]
public List<VisitTask> SubjectVisitTaskList { get; set; } = new List<VisitTask>();
[JsonIgnore]
public List<ReadModule> ReadModuleList { get; set; }
[JsonIgnore]
public List<SubjectCanceDoctor> SubjectCanceDoctorList { get; set; }
[JsonIgnore]
public List<ReadingClinicalData> ClinicalDataList { get; set; }
[JsonIgnore]
public List<SubjectCriteriaEvaluation> SubjectCriteriaEvaluationList { get; set; }
[JsonIgnore]
public List<SubjectCriteriaEvaluationVisitFilter> SubjectCriteriaEvaluationVisitFilterList { get; set; }
[JsonIgnore]
public List<SubjectAdditionalEvaluationResult> SubjectAdditionalEvaluationResult { get; set; }
[JsonIgnore]
public List<ReadingTaskQuestionAnswer> ReadingTaskQuestionAnswerList { get; set; }
[JsonIgnore]
[ForeignKey("FinalSubjectVisitId")]
public SubjectVisit FinalSubjectVisit { get; set; }
[JsonIgnore]
[ForeignKey("TrialId")]
public Trial Trial { get; set; }
[JsonIgnore]
public TrialSite TrialSite { get; set; }
[JsonIgnore]
public List<DicomStudy> StudyList { get; set; } = new List<DicomStudy>();
[JsonIgnore]
[ForeignKey("LatestSubjectVisitId")]
public SubjectVisit LatestSubjectVisit { get; set; }
[JsonIgnore]
public List<ClinicalForm> ClinicalFormList { get; set; }
#endregion
public Guid? FinalSubjectVisitId { get; set; }
public Guid TrialSiteId { get; set; }
public string Code { get; set; } = string.Empty;
public string FirstName { get; set; } = string.Empty;
public string LastName { get; set; } = string.Empty;
public int? Age { get; set; }
public string Sex { get; set; } = string.Empty;
public Guid? LatestSubjectVisitId { get; set; }
public Guid TrialId { get; set; } = Guid.Empty;
public string MedicalNo { get; set; } = string.Empty;
public SubjectStatus Status { get; set; } = SubjectStatus.OnVisit;//1 访视中2 出组 3 访视结束
public string Reason { get; set; } = string.Empty;
public bool IsEnrollment { get; set; }
public DateTime? OutEnrollmentTime { get; set; }
public DateTime? VisitOverTime { get; set; }
public string ShortName { get; set; } = String.Empty;
public string Height { get; set; } = String.Empty;
public string Weight { get; set; } = String.Empty;
public DateTime? BirthDate { get; set; }
public DateTime? SignDate { get; set; }
public DateTime? FirstGiveMedicineTime { get; set; }
public bool IsUrgent { get; set; }
public bool IsReReadingOrBackInfluenceAnalysis { get; set; }
}