using IRaCIS.Core.Application.Contracts.RequestAndResponse; using System; using System.Collections.Generic; using System.Dynamic; namespace IRaCIS.Application.ViewModels { public class SubjectVisitDTO : SubjectVisitCommand { public int StudyCount { get; set; } } public class SubjectVisitNewDTO : SubjectVisitDTO { public DateTime UpdateTime { get; set; } public string SubjectCode { get; set; } public string SubjectName { get; set; } = string.Empty; public string SiteName { get; set; } public string SiteCode { get; set; } //public Guid VisitPlanId { get; set; } } public class SubjectVisitSearchDTO : PageInput { public string SubjectInfo { get; set; } public string VisitPlanInfo { get; set; } public Guid? SubjectId { get; set; } public Guid TrialId { get; set; } public Guid? SiteId { get; set; } } public class SubjectVisitSelectDTO { public Guid GuidId{get;set;}=Guid.NewGuid(); public Guid SubjectVisitId { get; set; } = Guid.Empty; public decimal VisitNum { get; set; } public string VisitName { get; set; } = string.Empty; public string SVUPDES { get; set; } = string.Empty; //public Guid VisitStageId { get; set; } = Guid.Empty; public DateTime? SVSTDTC { get; set; } public DateTime? SVENDTC { get; set; } //public bool IsSubjectVisit { get; set; } = false; public bool StudyUploaded { get; set; } public List StudyList=new List(); } public class SubjectVisitCommand { public Guid? Id { get; set; } public Guid TrialId { get; set; } public Guid SubjectId { get; set; } public Guid SiteId { get; set; } public bool InPlan { get; set; } = true; public bool StudyUploaded { get; set; } = false; public decimal VisitNum { get; set; } public string VisitName { get; set; } = string.Empty; public int VisitDay { get; set; } public string SVUPDES { get; set; } = string.Empty; public DateTime? SVSTDTC { get; set; } public DateTime? SVENDTC { get; set; } } public class SubjectVisitStudyDTO { public Guid SubjectVisitId { get; set; } public Guid StudyId { get; set; } public string StudyCode { get; set; } public string Modalities { get; set; } public int Status { get; set; } } public class ArchiveStudyCommand { public Guid? AbandonStudyId { get; set; } public Guid TrialId { get; set; } public Guid SiteId { get; set; } public Guid SubjectId { get; set; } //public Guid? VisitStageId { get; set; } public Guid SubjectVisitId { get; set; } public DateTime? SVSTDTC { get; set; } public DateTime? SVENDTC { get; set; } public string Comment { get; set; } = string.Empty; } public class StudyCommand { public Guid Id { get; set; } = Guid.Empty; public Guid TrialId { get; set; } public Guid SiteId { get; set; } public Guid SubjectId { get; set; } public Guid SubjectVisitId { get; set; } } public class StudyEditCommand: StudyCommand { public Guid VisitStageId { get; set; } public DateTime? SVSTDTC { get; set; } public DateTime? SVENDTC { get; set; } public string Comment { get; set; } } public class StudyStatDTO { public int StudyCount { get; set; } public decimal VisitNum { get; set; } public string VisitName { get; set; } public int VisitDay { get; set; } public string Description { get; set; } public Guid TrialId { get; set; } public Guid SubjectVisitId { get; set; } } public class DistributeReviewerStudyStatusDTO { public string NameCN { get; set; } public string Name { get; set; } public string ReviewerCode { get; set; } public string StudyCode { get; set; } public int Status { get; set; } } public class StudyStatusQueryDTO:PageInput { public Guid TrialId { get; set; } public Guid? ReviewerId { get; set; } public int? StudyStatus { get; set; } } //public class StudyDTO //{ // public SubjectVisitInfo SubjectVisit { get; set; }=new SubjectVisitInfo(); // public StudyInfo Study { get; set; }=new StudyInfo(); // public SiteInfo Site { get; set; }=new SiteInfo(); // public QAInfo QA { get; set; }=new QAInfo(); // public class SubjectVisitInfo // { // public Guid SubjectVisitId { get; set; } // public double VisitNum { get; set; } // public string VisitName { get; set; } // } // public class StudyInfo // { // public Guid Id { get; set; } // public Guid TrialId { get; set; } // public string StudyCode { get; set; } // public int StudyStatus { get; set; } // public DateTime? StudyDate { get; set; } // public string Modalities { get; set; } // public int SeriesCount { get; set; } // public int InstanceCount { get; set; } // } // public class SiteInfo // { // public Guid SiteId { get; set; } // public string SiteName { get; set; } // } // public class QAInfo // { // public Guid SubjectId { get; set; } // public string SubjectCode { get; set; } // public string SubjectName { get; set; } // public int SubjectAge { get; set; } // public string SubjectSex { get; set; } // public string PatientName { get; set; } // public string PatientAge { get; set; } // public string PatientSex { get; set; } // } //} public class VerifyStudyUploadResult { public bool AllowUpload { get; set; } public StudyDTO StudyInfo { get; set; } } public class StudyDTO { public Guid SubjectVisitId { get; set; } public decimal VisitNum { get; set; } public string VisitName { get; set; } public int VisitDay { get; set; } public string SVUPDES { get; set; } public DateTime? SVSTDTC { get; set; } public DateTime? SVENDTC { get; set; } public Guid Id { get; set; } public Guid TrialId { get; set; } public string StudyCode { get; set; } public int StudyStatus { get; set; } public DateTime? StudyDate { get; set; } public string Modalities { get; set; } public int SeriesCount { get; set; } public int InstanceCount { get; set; } public bool IsDoubleReview { get; set; } public string StudyDescription { get; set; } public string BodyPartExamined { get; set; } public string Comment { get; set; } public DateTime UpdateTime { get; set; } //public List DistributeReviewers { get; set; }=new List(); public Guid SiteId { get; set; } public string SiteName { get; set; } public string StudyId { get; set; } //这个Id是dicom文件中的Id public Guid SubjectId { get; set; } public string SubjectCode { get; set; } public string SubjectName { get; set; } public int SubjectAge { get; set; } public string SubjectSex { get; set; } public string PatientId { get; set; } public string PatientName { get; set; } public string PatientAge { get; set; } public string PatientSex { get; set; } public string AccessionNumber { get; set; } = string.Empty; public string PatientBirthDate { get; set; } = string.Empty; } public class DistributeReviewer { public Guid StudyId { get; set; } public Guid ReviewerId { get; set; } public string NameCN { get; set; } public string Name { get; set; } public int Status { get; set; } } public class StudyQueryDTO : PageInput { public Guid? SubjectId { get; set; } public Guid? SiteId { get; set; } public Guid TrialId { get; set; } public string SubjectInfo { get; set; } public string VisitPlanInfo { get; set; } public Guid? SubjectVisitId { get; set; } public int? Status { get; set; } public DateTime? StudyTimeBegin { get; set; } public DateTime? StudyTimeEnd { get; set; } public DateTime? UpdateTimeBegin { get; set; } public DateTime?UpdateTimeEnd { get; set; } } }