#478 GetApprrovedEditsSummedUpStatsAsync

This commit is contained in:
Hamid Reza Mohammadi 2025-03-26 19:41:40 +03:30
parent 3d2560440e
commit 75d75cd265
4 changed files with 98 additions and 1 deletions

View File

@ -0,0 +1,23 @@
namespace RMuseum.Models.Generic.ViewModels
{
/// <summary>
/// summed up view model
/// </summary>
public class SummedUpViewModel
{
/// <summary>
/// Number of days
/// </summary>
public int Days { get; set; }
/// <summary>
/// Total number
/// </summary>
public int TotalCount { get; set; }
/// <summary>
/// Total Number of UserIds
/// </summary>
public int UserIds { get; set; }
}
}

View File

@ -13417,6 +13417,26 @@
user name
</summary>
</member>
<member name="T:RMuseum.Models.Generic.ViewModels.SummedUpViewModel">
<summary>
summed up view model
</summary>
</member>
<member name="P:RMuseum.Models.Generic.ViewModels.SummedUpViewModel.Days">
<summary>
Number of days
</summary>
</member>
<member name="P:RMuseum.Models.Generic.ViewModels.SummedUpViewModel.TotalCount">
<summary>
Total number
</summary>
</member>
<member name="P:RMuseum.Models.Generic.ViewModels.SummedUpViewModel.UserIds">
<summary>
Total Number of UserIds
</summary>
</member>
<member name="T:RMuseum.Models.ImportJob.ImportJob">
<summary>
Import Job
@ -15871,6 +15891,12 @@
<param name="userId"></param>
<returns></returns>
</member>
<member name="M:RMuseum.Services.IContributionStatsService.GetApprrovedEditsSummedUpStatsAsync">
<summary>
summed up stats of approved poem corrections
</summary>
<returns></returns>
</member>
<member name="T:RMuseum.Services.IDonationService">
<summary>
donation service
@ -18801,6 +18827,12 @@
<param name="userId"></param>
<returns></returns>
</member>
<member name="M:RMuseum.Services.Implementation.ContributionStatsService.GetApprrovedEditsSummedUpStatsAsync">
<summary>
summed up stats of approved poem corrections
</summary>
<returns></returns>
</member>
<member name="F:RMuseum.Services.Implementation.ContributionStatsService._context">
<summary>
Database Context

View File

@ -34,5 +34,11 @@ namespace RMuseum.Services
/// <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();
}
}

View File

@ -1,4 +1,5 @@
using RMuseum.DbContext;
using Microsoft.EntityFrameworkCore;
using RMuseum.DbContext;
using RMuseum.Models.Generic.ViewModels;
using RSecurityBackend.Models.Generic;
using RSecurityBackend.Services.Implementation;
@ -134,6 +135,41 @@ namespace RMuseum.Services.Implementation
}
}
/// <summary>
/// summed up stats of approved poem corrections
/// </summary>
/// <returns></returns>
public async Task<RServiceResult<SummedUpViewModel>> GetApprrovedEditsSummedUpStatsAsync()
{
try
{
return new RServiceResult<SummedUpViewModel>
(
new SummedUpViewModel()
{
Days = await _context.GanjoorPoemCorrections
.Where(f => f.AffectedThePoem
)
.GroupBy(f => f.Date.Date).CountAsync(),
TotalCount = await _context.GanjoorPoemCorrections
.Where(f => f.AffectedThePoem
)
.CountAsync(),
UserIds = await _context.GanjoorPoemCorrections
.Where(f => f.AffectedThePoem
)
.GroupBy(f => f.UserId).CountAsync(),
}
);
}
catch (Exception e)
{
return new RServiceResult<SummedUpViewModel>(null, e.ToString());
}
}
/// <summary>
/// Database Context
/// </summary>