#444 CategoryWordCountsAsync

This commit is contained in:
Hamid Reza Mohammadi 2024-06-21 07:24:02 +03:30
parent 15a353862a
commit 1cdc4f48a2
3 changed files with 47 additions and 0 deletions

View File

@ -16548,6 +16548,14 @@
build word counts
</summary>
</member>
<member name="M:RMuseum.Services.IGanjoorService.CategoryWordCountsAsync(System.Int32,RSecurityBackend.Models.Generic.PagingParameterModel)">
<summary>
catgoru words count
</summary>
<param name="catId"></param>
<param name="paging"></param>
<returns></returns>
</member>
<member name="T:RMuseum.Services.IGanjoorTranslationService">
<summary>
translation service implementation
@ -18102,6 +18110,14 @@
<param name="q"></param>
<returns></returns>
</member>
<member name="M:RMuseum.Services.Implementation.GanjoorService.CategoryWordCountsAsync(System.Int32,RSecurityBackend.Models.Generic.PagingParameterModel)">
<summary>
catgoru words count
</summary>
<param name="catId"></param>
<param name="paging"></param>
<returns></returns>
</member>
<member name="M:RMuseum.Services.Implementation.GanjoorService.BuildCategoryWordCountsAsync(System.Boolean)">
<summary>
build word counts

View File

@ -1436,5 +1436,13 @@ namespace RMuseum.Services
/// build word counts
/// </summary>
Task BuildCategoryWordCountsAsync(bool reset);
/// <summary>
/// catgoru words count
/// </summary>
/// <param name="catId"></param>
/// <param name="paging"></param>
/// <returns></returns>
Task<RServiceResult<(PaginationMetadata PagingMeta, CategoryWordCount[] Items)>> CategoryWordCountsAsync(int catId, PagingParameterModel paging);
}
}

View File

@ -8,6 +8,8 @@ using System.Collections.Generic;
using RSecurityBackend.Services.Implementation;
using System.Threading.Tasks;
using RSecurityBackend.Models.Generic.Db;
using RMuseum.Models.Ganjoor.ViewModels;
using RSecurityBackend.Models.Generic;
namespace RMuseum.Services.Implementation
{
@ -16,6 +18,27 @@ namespace RMuseum.Services.Implementation
/// </summary>
public partial class GanjoorService : IGanjoorService
{
/// <summary>
/// catgoru words count
/// </summary>
/// <param name="catId"></param>
/// <param name="paging"></param>
/// <returns></returns>
public async Task<RServiceResult<(PaginationMetadata PagingMeta, CategoryWordCount[] Items)>> CategoryWordCountsAsync(int catId, PagingParameterModel paging)
{
var source =
from cwd in _context.CategoryWordCounts
where cwd.CatId == catId
orderby cwd.Count descending
select
cwd;
(PaginationMetadata PagingMeta, CategoryWordCount[] Items) paginatedResult =
await QueryablePaginator<CategoryWordCount>.Paginate(source, paging);
return new RServiceResult<(PaginationMetadata PagingMeta, CategoryWordCount[] Items)>(paginatedResult);
}
/// <summary>
/// build word counts
/// </summary>