docs: #296 Bulk tag poems of a category with language tags - API added

This commit is contained in:
Hamid Reza Mohammadi 2022-03-23 16:37:26 +04:30
parent f156c1bae1
commit 2411a6f61c
4 changed files with 75 additions and 10 deletions

View File

@ -481,19 +481,13 @@ namespace RMuseum.Controllers
return Ok(res.Result);
}
/// <summary>
/// starts assigning poem rhymes
/// </summary>
/// <param name="id"></param>
/// <param name="retag"></param>
/// <returns></returns>
[HttpPut]
[Route("cat/startassigningrhymes/{id}/{retag}")]
[Authorize(Policy = RMuseumSecurableItem.GanjoorEntityShortName + ":" + SecurableItem.ModifyOperationShortName)]
[ProducesResponseType((int)HttpStatusCode.OK, Type = typeof(bool))]
[ProducesResponseType((int)HttpStatusCode.BadRequest, Type = typeof(string))]
public IActionResult FindCategoryPoemsRhymes(int id, bool retag)
public IActionResult FindCategoryPoemsRhymes(int id, bool retag)
{
RServiceResult<bool> res =
@ -503,6 +497,28 @@ namespace RMuseum.Controllers
return Ok(res.Result);
}
/// <summary>
/// set category poems language tag
/// </summary>
/// <param name="id"></param>
/// <param name="language"></param>
/// <returns></returns>
[HttpPut]
[Route("cat/language/{id}/{language}")]
[Authorize(Policy = RMuseumSecurableItem.GanjoorEntityShortName + ":" + SecurableItem.ModifyOperationShortName)]
[ProducesResponseType((int)HttpStatusCode.OK)]
[ProducesResponseType((int)HttpStatusCode.BadRequest, Type = typeof(string))]
public async Task<IActionResult> SetCategoryLanguageTag(int id, string language)
{
var res =
await _ganjoorService.SetCategoryLanguageTag(id, language);
if (!string.IsNullOrEmpty(res.ExceptionString))
return BadRequest(res.ExceptionString);
return Ok();
}
/// <summary>
/// start assigning poem rhythms
/// </summary>

View File

@ -980,12 +980,12 @@
<param name="model"></param>
<returns></returns>
</member>
<member name="M:RMuseum.Controllers.GanjoorController.FindCategoryPoemsRhymes(System.Int32,System.Boolean)">
<member name="M:RMuseum.Controllers.GanjoorController.SetCategoryLanguageTag(System.Int32,System.String)">
<summary>
starts assigning poem rhymes
set category poems language tag
</summary>
<param name="id"></param>
<param name="retag"></param>
<param name="language"></param>
<returns></returns>
</member>
<member name="M:RMuseum.Controllers.GanjoorController.FindCategoryPoemsRhythms(System.Int32,System.Boolean,System.String)">
@ -11246,6 +11246,14 @@
<param name="rejectionCause"></param>
<returns></returns>
</member>
<member name="M:RMuseum.Services.IGanjoorService.SetCategoryLanguageTag(System.Int32,System.String)">
<summary>
set category poems language tag
</summary>
<param name="catId"></param>
<param name="language"></param>
<returns></returns>
</member>
<member name="T:RMuseum.Services.IGanjoorTranslationService">
<summary>
translation service implementation
@ -13442,6 +13450,14 @@
<param name="id"></param>
<returns></returns>
</member>
<member name="M:RMuseum.Services.Implementation.GanjoorService.SetCategoryLanguageTag(System.Int32,System.String)">
<summary>
set category poems language tag
</summary>
<param name="catId"></param>
<param name="language"></param>
<returns></returns>
</member>
<member name="M:RMuseum.Services.Implementation.GanjoorService.FindCategoryPoemsRhymes(System.Int32,System.Boolean)">
<summary>
find category poem rhymes

View File

@ -824,5 +824,13 @@ namespace RMuseum.Services
/// <param name="rejectionCause"></param>
/// <returns></returns>
Task<RServiceResult<bool>> RejectPoetSuggestedSpecLinesAsync(int id, Guid deleteUserId, string rejectionCause);
/// <summary>
/// set category poems language tag
/// </summary>
/// <param name="catId"></param>
/// <param name="language"></param>
/// <returns></returns>
Task<RServiceResult<bool>> SetCategoryLanguageTag(int catId, string language);
}
}

View File

@ -3008,6 +3008,31 @@ namespace RMuseum.Services.Implementation
}
}
/// <summary>
/// set category poems language tag
/// </summary>
/// <param name="catId"></param>
/// <param name="language"></param>
/// <returns></returns>
public async Task<RServiceResult<bool>> SetCategoryLanguageTag(int catId, string language)
{
try
{
var poemList = await _context.GanjoorPoems.Where(p => p.CatId == catId).ToListAsync();
foreach (var poem in poemList)
{
poem.Language = language;
}
_context.UpdateRange(poemList);
await _context.SaveChangesAsync();
return new RServiceResult<bool>(true);
}
catch (Exception exp)
{
return new RServiceResult<bool>(false, exp.ToString());
}
}
/// <summary>
/// find category poem rhymes
/// </summary>