using System.ComponentModel.DataAnnotations; using IRaCIS.Core.Infrastructure.Extention; using IRaCIS.Core.Domain.Share; namespace IRaCIS.Application.Contracts { public class UserTrialDTO : UserTrialCommand { public bool IsDeleted { get; set; } public DateTime? RemoveTime { get; set; } public Guid? SiteId { get; set; } public string Phone { get; set; } = String.Empty; public DateTime? UpdateTime { get; set; } public string UserType { get; set; } = String.Empty; public string UserRealName { get; set; } = String.Empty; } public class TrialMaintenanceDTO : UserTrialCommand { public bool IsDeleted { get; set; } public DateTime? RemoveTime { get; set; } public DateTime? JoinTime { get; set; } public DateTime UpdateTime { get; set; } = DateTime.Now; public Guid UserTypeId { get; set; } public string UserType { get; set; } = String.Empty; public UserTypeEnum UserTypeEnum { get; set; } public string OrganizationName { get; set; } = String.Empty; public string UserRealName { get; set; } = String.Empty; public string UserName { get; set; } = String.Empty; } public class SiteCRCCommand : UserTrialCommand { public Guid SiteId { get; set; } public Guid UserTypeId { get; set; } public string UserType { get; set; } = String.Empty; public string UserRealName { get; set; } = String.Empty; public UserTypeEnum UserTypeEnum { get; set; } public string OrganizationName { get; set; } = String.Empty; public string UserName { get; set; } = String.Empty; } public class UserTrialCommand { public Guid? Id { get; set; } public Guid UserId { get; set; } public Guid TrialId { get; set; } } public class SiteStatDTO : SiteStatSimpleDTO { //public int PlanVisitCount { get; set; } //public int? StudyCount { get; set; } public int? VisitCount { get; set; } public int? SubjectCount { get; set; } } public class SiteStatSimpleDTO { public Guid Id { get; set; } public Guid SiteId { get; set; } public int? UserCount { get; set; } public string TrialSiteCode { get; set; } = String.Empty; public string TrialSiteAliasName { get; set; } = String.Empty; public bool IsDeleted { get; set; } public DateTime UpdateTime { get; set; } public string Site { get; set; } = String.Empty; public string SiteCode { get; set; } = String.Empty; public string Hospital { get; set; } = String.Empty; public string City { get; set; } = String.Empty; public string Country { get; set; } = String.Empty; public string DirectorName { get; set; } = String.Empty; public string DirectorPhone { get; set; } = String.Empty; public string ContactName { get; set; } = String.Empty; public string ContactPhone { get; set; } = String.Empty; public string Address { get; set; } = String.Empty; public List UserNameList { get; set; } = new List(); } public class TrialMaintenanceQuery : PageInput { public Guid TrialId { get; set; } = Guid.Empty; public string UserRealName { get; set; } = string.Empty; public string UserType { get; set; } = string.Empty; public string UserName { get; set; } = string.Empty; public string OrganizationName { get; set; } = String.Empty; public bool? IsDeleted { get; set; } //public DateTime? RemoveTime { get; set; } //public DateTime? JoinTime { get; set; } } public class SiteCRCQuery : TrialMaintenanceQuery { public Guid SiteId { get; set; } } public class TrialUserQuery : PageInput { public Guid TrialId { get; set; } public string UserName { get; set; } = string.Empty; public string UserRealName { get; set; } = string.Empty; public UserTypeEnum? UserTypeEnum { get; set; } } public class TrialUserScreeningDTO : TrialUserAddCommand { public int Sex { get; set; } // 1-男 2-女 public string Phone { get; set; } = string.Empty; public string EMail { get; set; } = string.Empty; public string DepartmentName { get; set; } = String.Empty; public string PositionName { get; set; } = String.Empty; public string UserName { get; set; } = String.Empty; public bool IsSelect { get; set; } public Guid UserTypeId { get; set; } public string UserType { get; set; } = string.Empty; public UserTypeEnum UserTypeEnum { get; set; } public string OrganizationName { get; set; } = string.Empty; public string UserRealName { get; set; } = string.Empty; } public class TrialUserAddCommand { public Guid UserId { get; set; } public Guid TrialId { get; set; } } public class UpdateTrialUserCommand { [NotDefault] public Guid Id { get; set; } public Guid TrialId { get; set; } public bool IsDeleted { get; set; } public DateTime? RemoveTime { get; set; } public DateTime? JoinTime { get; set; } } }