irc-netcore-api/IRaCIS.Core.Application/Service/Stat/IStatisticsService.cs

44 lines
1.7 KiB
C#

using System;
using System.Collections.Generic;
using IRaCIS.Application.Contracts;
using IRaCIS.Core.Infrastructure.Extention;
namespace IRaCIS.Application.Interfaces
{
public interface IStatisticsService
{
Task<PageOutput<WorkloadByTrialAndReviewerDTO>> GetWorkloadByTrialAndReviewer(StatisticsWorkloadQueryParam param);
PageOutput<EnrollStatByTrialDTO> GetEnrollStatByTrial(EnrollStatByTrialQueryDTO param);
PageOutput<UserParticipateTrialStat> GetParticipateTrialStat(ParticipateQueryDto param);
List<UserParticipateTrialDetail> GetParticipateTrialList(Guid userId);
#region Dashboard 数据统计
/// <summary> 按类型统计读片数量 </summary>
ReadingDataDTO GetReadingDataByType();
/// <summary> 按月份统计读片数量 </summary>
List<ReadingDataMonthDTO> GetReadingDataByMonth(int monthCount);
/// <summary> 读片数量排行 </summary>
List<ReadingDataRankDTO> GetReadingDataRank(int topCount);
/// <summary> 按Position统计 Reviewers 数量 </summary>
List<RankReviewersDTO> GetReviewersByRank();
///<summary> 每月入组人次 </summary>
List<EnrollQuartDataDTO> GetEnrollDataByQuarter(int quarterCount, int monthCount);
///<summary> 参与项目数排行 </summary>
List<TrialDataRankDTO> GetTrialCountRank(int topCount);
///<summary> 最新工作量 (已确定的)</summary>
List<LatestWorkLoadDTO> GetLatestWorkLoadList( int searchCount);
#endregion
Task<PageOutput<EnrollStatByReviewerDTO>> GetEnrollStatByReviewer(EnrollStatByReviewerQueryDTO enrollTrialStatisticsQueryParam);
}
}