using RMuseum.Models.Generic.ViewModels;
using RSecurityBackend.Models.Generic;
using System.Threading.Tasks;
using System;
namespace RMuseum.Services
{
///
/// contributions stats service
///
public interface IContributionStatsService
{
///
/// approved edits daily
///
///
///
///
Task> GetApprovedEditsGroupedByDateAsync(PagingParameterModel paging, Guid? userId);
///
/// approved edits grouped by user
///
///
///
///
///
Task> GetApprovedEditsGroupedByUserAsync(PagingParameterModel paging, DateTime? day, Guid? userId);
///
/// summed up stats of approved poem corrections
///
///
Task> GetApprrovedEditsSummedUpStatsAsync();
///
/// approved section edits daily
///
///
///
///
Task> GetApprovedSectionEditsGroupedByDateAsync(PagingParameterModel paging, Guid? userId);
///
/// approved section edits grouped by user
///
///
///
///
///
Task> GetApprovedSectionEditsGroupedByUserAsync(PagingParameterModel paging, DateTime? day, Guid? userId);
///
/// summed up stats of approved section corrections
///
///
Task> GetApprrovedSectionEditsSummedUpStatsAsync();
///
/// approved cat edits daily
///
///
///
///
Task> GetApprovedCatEditsGroupedByDateAsync(PagingParameterModel paging, Guid? userId);
///
/// approved cat edits grouped by user
///
///
///
///
///
Task> GetApprovedCatEditsGroupedByUserAsync(PagingParameterModel paging, DateTime? day, Guid? userId);
///
/// summed up stats of approved cat corrections
///
///
Task> GetApprrovedCatEditsSummedUpStatsAsync();
///
/// approved related songs daily
///
///
///
///
Task> GetApprovedRelatedSongsGroupedByDateAsync(PagingParameterModel paging, Guid? userId);
///
/// approved related songs grouped by user
///
///
///
///
///
Task> GetApprovedRelatedSongsGroupedByUserAsync(PagingParameterModel paging, DateTime? day, Guid? userId);
///
/// summed up stats of approved related songs
///
///
Task> GetApprovedRelatedSongsSummedUpStatsAsync();
///
/// approved quoted poems daily
///
///
///
///
Task> GetApprovedQuotedPoemsGroupedByDateAsync(PagingParameterModel paging, Guid? userId);
///
/// approved quoted poems grouped by user
///
///
///
///
///
Task> GetApprovedQuotedPoemsGroupedByUserAsync(PagingParameterModel paging, DateTime? day, Guid? userId);
///
/// summed up stats of approved quoted poems
///
///
Task> GetApprovedQuotedPoemsSummedUpStatsAsync();
///
/// approved comments daily
///
///
///
///
Task> GetApprovedCommentsGroupedByDateAsync(PagingParameterModel paging, Guid? userId);
///
/// approved comments grouped by user
///
///
///
///
///
Task> GetApprovedCommentsGroupedByUserAsync(PagingParameterModel paging, DateTime? day, Guid? userId);
///
/// summed up stats of approved comments
///
///
Task> GetApprovedCommentsSummedUpStatsAsync();
///
/// approved recitations daily
///
///
///
///
Task> GetApprovedRecitationsGroupedByDateAsync(PagingParameterModel paging, Guid? userId);
///
/// approved recitations grouped by user
///
///
///
///
///
Task> GetApprovedRecitationsGroupedByUserAsync(PagingParameterModel paging, DateTime? day, Guid? userId);
///
/// summed up stats of approved recitations
///
///
Task> GetApprovedRecitationsSummedUpStatsAsync();
///
/// approved museum links daily
///
///
///
///
Task> GetApprovedMuseumLinksGroupedByDateAsync(PagingParameterModel paging, Guid? userId);
///
/// approved museum links grouped by user
///
///
///
///
///
Task> GetApprovedMuseumLinksGroupedByUserAsync(PagingParameterModel paging, DateTime? day, Guid? userId);
///
/// summed up stats of approved museum links
///
///
Task> GetApprovedMuseumLinksSummedUpStatsAsync();
///
/// approved pinterest links daily
///
///
///
///
Task> GetApprovedPinterestLinksGroupedByDateAsync(PagingParameterModel paging, Guid? userId);
///
/// approved pinterest links grouped by user
///
///
///
///
///
Task> GetApprovedPinterestLinksGroupedByUserAsync(PagingParameterModel paging, DateTime? day, Guid? userId);
///
/// summed up stats of approved pinterest links
///
///
Task> GetApprovedPinterestLinksSummedUpStatsAsync();
///
/// approved poet spec lines grouped by user
///
///
///
///
Task> GetApprovedPoetSpecLinesGroupedByUserAsync(PagingParameterModel paging, Guid? userId);
///
/// summed up stats of approved poet spec lines
///
///
Task> GetApprovedPoetSpecLinesSummedUpStatsAsync();
///
/// approved poet spec pictures grouped by user
///
///
///
///
Task> GetApprovedGanjoorPoetSuggestedPicturesGroupedByUserAsync(PagingParameterModel paging, Guid? userId);
///
/// summed up stats of approved poet pictures
///
///
Task> GetApprovedGanjoorPoetSuggestedPicturesSummedUpStatsAsync();
}
}