#70 returing total number of suggested songs
This commit is contained in:
parent
b159afaaf0
commit
d60760320a
@ -1,5 +1,6 @@
|
||||
using Microsoft.AspNetCore.Authorization;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
using Newtonsoft.Json;
|
||||
using RMuseum.Models.Auth.Memory;
|
||||
using RMuseum.Models.Ganjoor;
|
||||
using RMuseum.Models.Ganjoor.ViewModels;
|
||||
@ -316,6 +317,7 @@ namespace RMuseum.Controllers
|
||||
[ProducesResponseType((int)HttpStatusCode.OK, Type = typeof(PoemMusicTrackViewModel))]
|
||||
[ProducesResponseType((int)HttpStatusCode.BadRequest, Type = typeof(string))]
|
||||
[ProducesResponseType((int)HttpStatusCode.Forbidden)]
|
||||
[ProducesResponseType((int)HttpStatusCode.NotFound)]
|
||||
public async Task<IActionResult> GetNextUnreviewedSong(int skip = 0, bool onlyMine = false)
|
||||
{
|
||||
Guid userId =
|
||||
@ -332,6 +334,28 @@ namespace RMuseum.Controllers
|
||||
await _ganjoorService.GetNextUnreviewedSong(skip, onlyMine ? userId : Guid.Empty);
|
||||
if (!string.IsNullOrEmpty(res.ExceptionString))
|
||||
return BadRequest(res.ExceptionString);
|
||||
|
||||
if (res.Result == null)
|
||||
return NotFound();
|
||||
|
||||
var resCount = await _ganjoorService.GetUnreviewedSongsCount(onlyMine ? userId : Guid.Empty);
|
||||
if (!string.IsNullOrEmpty(resCount.ExceptionString))
|
||||
return BadRequest(resCount.ExceptionString);
|
||||
|
||||
// Paging Header
|
||||
HttpContext.Response.Headers.Add("paging-headers",
|
||||
JsonConvert.SerializeObject(
|
||||
new PaginationMetadata()
|
||||
{
|
||||
totalCount = resCount.Result,
|
||||
pageSize = -1,
|
||||
currentPage = -1,
|
||||
hasNextPage = false,
|
||||
hasPreviousPage = false,
|
||||
totalPages = -1
|
||||
})
|
||||
);
|
||||
|
||||
return Ok(res.Result);
|
||||
}
|
||||
|
||||
|
||||
@ -5706,6 +5706,13 @@
|
||||
<param name="song"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:RMuseum.Services.IGanjoorService.GetUnreviewedSongsCount(System.Guid)">
|
||||
<summary>
|
||||
get unreviewed count
|
||||
</summary>
|
||||
<param name="suggestedById"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:RMuseum.Services.IGanjoorService.ReviewSong(RMuseum.Models.Ganjoor.ViewModels.PoemMusicTrackViewModel)">
|
||||
<summary>
|
||||
review song
|
||||
@ -6546,6 +6553,13 @@
|
||||
<param name="song"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:RMuseum.Services.Implementation.GanjoorService.GetUnreviewedSongsCount(System.Guid)">
|
||||
<summary>
|
||||
get unreviewed count
|
||||
</summary>
|
||||
<param name="suggestedById"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:RMuseum.Services.Implementation.GanjoorService.GetNextUnreviewedSong(System.Int32,System.Guid)">
|
||||
<summary>
|
||||
next unreviewed track
|
||||
|
||||
@ -131,6 +131,13 @@ namespace RMuseum.Services
|
||||
/// <returns></returns>
|
||||
Task<RServiceResult<PoemMusicTrackViewModel>> SuggestSong(Guid userId, PoemMusicTrackViewModel song);
|
||||
|
||||
/// <summary>
|
||||
/// get unreviewed count
|
||||
/// </summary>
|
||||
/// <param name="suggestedById"></param>
|
||||
/// <returns></returns>
|
||||
Task<RServiceResult<int>> GetUnreviewedSongsCount(Guid suggestedById);
|
||||
|
||||
/// <summary>
|
||||
/// review song
|
||||
/// </summary>
|
||||
|
||||
@ -846,6 +846,25 @@ namespace RMuseum.Services.Implementation
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// get unreviewed count
|
||||
/// </summary>
|
||||
/// <param name="suggestedById"></param>
|
||||
/// <returns></returns>
|
||||
public async Task<RServiceResult<int>> GetUnreviewedSongsCount(Guid suggestedById)
|
||||
{
|
||||
try
|
||||
{
|
||||
return new RServiceResult<int>(await _context.GanjoorPoemMusicTracks
|
||||
.Where(p => p.Approved == false && p.Rejected == false && (suggestedById == Guid.Empty || p.SuggestedById == suggestedById))
|
||||
.CountAsync());
|
||||
}
|
||||
catch(Exception exp)
|
||||
{
|
||||
return new RServiceResult<int>(0, exp.ToString());
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// next unreviewed track
|
||||
|
||||
Loading…
Reference in New Issue
Block a user