divan/RMuseum/Services/IContributionStatsService.cs
2025-03-27 11:51:48 +03:30

38 lines
1.3 KiB
C#

using RMuseum.Models.Generic.ViewModels;
using RSecurityBackend.Models.Generic;
using System.Threading.Tasks;
using System;
namespace RMuseum.Services
{
/// <summary>
/// contributions stats service
/// </summary>
public interface IContributionStatsService
{
/// <summary>
/// approved edits daily
/// </summary>
/// <param name="paging"></param>
/// <param name="userId"></param>
/// <returns></returns>
Task<RServiceResult<(PaginationMetadata PagingMeta, GroupedByDateViewModel[] Tracks)>> GetApprovedEditsGroupedByDateAsync(PagingParameterModel paging, Guid? userId);
/// <summary>
/// approved edits grouped by user
/// </summary>
/// <param name="paging"></param>
/// <param name="day"></param>
/// <param name="userId"></param>
/// <returns></returns>
Task<RServiceResult<(PaginationMetadata PagingMeta, GroupedByUserViewModel[] Tracks)>> GetApprovedEditsGroupedByUserAsync(PagingParameterModel paging, DateTime? day, Guid? userId);
/// <summary>
/// summed up stats of approved poem corrections
/// </summary>
/// <returns></returns>
Task<RServiceResult<SummedUpViewModel>> GetApprrovedEditsSummedUpStatsAsync();
}
}