294 lines
8.7 KiB
C#
294 lines
8.7 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using IRaCIS.Core.Domain.Share;
|
|
using IRaCIS.Core.Infrastructure.Extention;
|
|
|
|
namespace IRaCIS.Application.Contracts
|
|
{
|
|
|
|
public class EnrollStatByReviewerDTO
|
|
{
|
|
public Guid Id { get; set; }
|
|
public string Hospital { get; set; } = string.Empty;
|
|
public string ChineseName { get; set; } = string.Empty;
|
|
|
|
public string FirstName { get; set; } = string.Empty;
|
|
public string LastName { get; set; } = string.Empty;
|
|
|
|
public string FullName { get; set; } = string.Empty;
|
|
public string ReviewerCode { get; set; } = string.Empty;
|
|
|
|
public int Pending { get; set; }
|
|
public int Approved { get; set; }
|
|
public int Reading { get; set; }
|
|
public int Finished { get; set; }
|
|
public int Total { get; set; }
|
|
public double EntryRate
|
|
{
|
|
get
|
|
{
|
|
if (Total == 0)
|
|
{
|
|
return 0;
|
|
}
|
|
return Math.Round(((Reading + Finished) / (double)Total) * 100, 1, MidpointRounding.AwayFromZero);
|
|
;
|
|
}
|
|
}
|
|
|
|
}
|
|
|
|
|
|
public class EnrollStatByTrialDTO
|
|
{
|
|
public string TrialCode { get; set; } = string.Empty;
|
|
public Guid TrialId { get; set; }
|
|
public string Indication { get; set; } = string.Empty;
|
|
//public Guid CroId { get; set; }
|
|
public string Cro { get; set; } = string.Empty;
|
|
|
|
public DateTime CreateTime { get; set; }
|
|
|
|
public int Expedited { get; set; }
|
|
|
|
public int EnrollCount { get; set; }
|
|
|
|
public List<string> ReviewerNameCNList=new List<string>();
|
|
|
|
public List<string> ReviewerNameList=new List<string>();
|
|
}
|
|
|
|
|
|
#region 参与项目统计
|
|
|
|
|
|
public class ParticipateQueryDto:PageInput
|
|
{
|
|
public string UserInfo { get; set; } = string.Empty;
|
|
public string OrganizationName { get; set; } = string.Empty;
|
|
|
|
}
|
|
|
|
public class UserParticipateTrialStat
|
|
{
|
|
public Guid UserId { get; set; }
|
|
public string OrganizationName { get; set; } = string.Empty;
|
|
|
|
public string UserCode { get; set; } = string.Empty;
|
|
|
|
public string Name { get; set; } = string.Empty;
|
|
|
|
public string UserName { get; set; } = string.Empty;
|
|
|
|
public string Phone { get; set; } = string.Empty;
|
|
|
|
public string Email { get; set; } = string.Empty;
|
|
|
|
public int TrialCount { get; set; }
|
|
|
|
}
|
|
|
|
public class UserParticipateTrialDetail
|
|
{
|
|
public Guid TrialId { get; set; }
|
|
public string Code { get; set; } = string.Empty;
|
|
public string Indication { get; set; } = string.Empty;
|
|
|
|
public int Expedited { get; set; }
|
|
|
|
public string CROName { get; set; } = string.Empty;
|
|
public string UserType { get; set; } = string.Empty;
|
|
}
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
#region 统计 20200413
|
|
public class WorkloadByTrialAndReviewerDTO
|
|
{
|
|
public Guid Id { get; set; }
|
|
public string TrialCode { get; set; } = string.Empty;
|
|
public Guid TrialId { get; set; }
|
|
public string Indication { get; set; } = string.Empty;
|
|
public Guid? CroId { get; set; }
|
|
public string Cro { get; set; } = string.Empty;
|
|
public string ChineseName { get; set; } = string.Empty;
|
|
|
|
public string FirstName { get; set; } = string.Empty;
|
|
public string LastName { get; set; } = string.Empty;
|
|
|
|
public string FullName { get; set; } = string.Empty;
|
|
public string ReviewerCode { get; set; } = string.Empty;
|
|
|
|
public int Training { get; set; }
|
|
public int Downtime { get; set; }
|
|
public int Timepoint { get; set; }
|
|
public int TimepointIn24H { get; set; }
|
|
public int TimepointIn48H { get; set; }
|
|
public int Adjudication { get; set; }
|
|
public int AdjudicationIn24H { get; set; }
|
|
public int AdjudicationIn48H { get; set; }
|
|
public int Global { get; set; }
|
|
|
|
public int RefresherTraining { get; set; }
|
|
|
|
public int PersonalTotal { get; set; }
|
|
}
|
|
|
|
|
|
public class StatisticsQueryDTO : PageInput
|
|
{
|
|
public Guid? CroId { get; set; } = Guid.Empty;
|
|
public string TrialCode { get; set; } = string.Empty;
|
|
public string Reviewer { get; set; } = string.Empty;
|
|
public DateTime BeginDate { get; set; } = DateTime.Now;
|
|
public DateTime EndDate { get; set; } = DateTime.Now;
|
|
public int StatType { get; set; }
|
|
|
|
//医生付费类型 CN US
|
|
public int? Nation { get; set; }
|
|
public AttendedReviewerType? AttendedReviewerType { get; set; }
|
|
}
|
|
|
|
public class StatisticsWorkloadQueryParam : PageInput
|
|
{
|
|
public Guid? CroId { get; set; }
|
|
public string TrialCode { get; set; } = string.Empty;
|
|
public string Reviewer { get; set; } = string.Empty;
|
|
public DateTime BeginDate { get; set; } = DateTime.Now;
|
|
public DateTime EndDate { get; set; } = DateTime.Now;
|
|
public int StatType { get; set; }
|
|
|
|
public Guid? HospitalId { get; set; }
|
|
}
|
|
|
|
public class RevenuesStatQueryDTO : PageInput
|
|
{
|
|
public Guid CroId { get; set; } = Guid.Empty;
|
|
|
|
public string Reviewer { get; set; } = string.Empty;
|
|
public string TrialCode { get; set; } = string.Empty;
|
|
public DateTime BeginDate { get; set; } = DateTime.Now;
|
|
public DateTime EndDate { get; set; } = DateTime.Now;
|
|
|
|
public int StatType { get; set; }
|
|
}
|
|
|
|
|
|
public class EnrollStatByReviewerQueryDTO : PageInput
|
|
{
|
|
public Guid? HospitalId { get; set; } = Guid.Empty;
|
|
public string Reviewer { get; set; } = string.Empty;
|
|
public DateTime BeginDate { get; set; } = DateTime.Now;
|
|
public DateTime EndDate { get; set; } = DateTime.Now;
|
|
}
|
|
|
|
|
|
public class EnrollStatByTrialQueryDTO : PageInput
|
|
{
|
|
public string TrialCode { get; set; } = string.Empty;
|
|
|
|
public string Indication { get; set; } = string.Empty;
|
|
public DateTime? BeginDate { get; set; } = DateTime.Now;
|
|
public DateTime? EndDate { get; set; } = DateTime.Now;
|
|
|
|
public Guid? CROId { get; set; }
|
|
|
|
public int? Expedited { get; set; }
|
|
}
|
|
#endregion
|
|
|
|
#region dashbord
|
|
|
|
/// <summary>
|
|
/// 读片数量分类统计
|
|
/// </summary>
|
|
public class ReadingDataDTO
|
|
{
|
|
public int Timepoint { get; set; }
|
|
public int Adjudication { get; set; }
|
|
public int Global { get; set; }
|
|
}
|
|
|
|
public class ReadingDataMonthDTO : ReadingDataDTO
|
|
{
|
|
public string Month { get; set; } = String.Empty;
|
|
}
|
|
|
|
public class ReadingDataRankDTO : ReadingDataDTO
|
|
{
|
|
public int TotalReadingCount { get; set; }
|
|
public Guid ReviewerId { get; set; }
|
|
public string ReviewerCode { get; set; } = String.Empty;
|
|
public string FirstName { get; set; } = String.Empty;
|
|
public string LastName { get; set; } = String.Empty;
|
|
public string ChineseName { get; set; } = String.Empty;
|
|
}
|
|
|
|
public class RankReviewersDTO
|
|
{
|
|
public Guid? RankId { get; set; }
|
|
public string RankName { get; set; } = String.Empty;
|
|
public string RankNameAbbreviation
|
|
{
|
|
get
|
|
{
|
|
var arr = RankName.Split(' ');
|
|
return arr[0];
|
|
}
|
|
}
|
|
public int ReviewerCount { get; set; }
|
|
}
|
|
|
|
public class EnrollDataDTO
|
|
{
|
|
public int Year { get; set; }
|
|
public int Month { get; set; }
|
|
public string QuarterStr => Year + "-Q" + (Month / 3 + (Month % 3 == 0 ? 0 : 1));
|
|
public string YearMonth => new DateTime(Year, Month, 1).ToString("yyyy-MM");
|
|
public int EnrollCount { get; set; }
|
|
}
|
|
|
|
|
|
public class EnrollQuartDataDTO
|
|
{
|
|
//public int Year { get; set; }
|
|
|
|
public string ViewStr { get; set; } = String.Empty;
|
|
|
|
public int EnrollCount { get; set; }
|
|
}
|
|
|
|
public class LatestWorkLoadDTO : ReadingDataDTO
|
|
{
|
|
public int TotalReadingCount => Timepoint + Adjudication + Global;
|
|
public Guid ReviewerId { get; set; }
|
|
public string ReviewerCode { get; set; } = String.Empty;
|
|
public string FirstName { get; set; } = String.Empty;
|
|
public string LastName { get; set; } = String.Empty;
|
|
public string ChineseName { get; set; } = String.Empty;
|
|
public string TrialCode { get; set; } = String.Empty;
|
|
}
|
|
|
|
|
|
|
|
|
|
public class TrialDataRankDTO
|
|
{
|
|
public Guid ReviewerId { get; set; }
|
|
public string ReviewerCode { get; set; } = String.Empty;
|
|
public string FirstName { get; set; } = String.Empty;
|
|
public string LastName { get; set; } = String.Empty;
|
|
public string ChineseName { get; set; } = String.Empty;
|
|
|
|
public int TrialCount { get; set; }
|
|
}
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
|
|
}
|