docs: #382 api for deleting suggested photo spec

This commit is contained in:
Hamid Reza Mohammadi 2023-05-02 09:25:07 +03:30
parent 5ee181b625
commit 3cb91d741d
4 changed files with 72 additions and 1 deletions

View File

@ -149,6 +149,25 @@ namespace RMuseum.Controllers
return Ok(res.Result);
}
/// <summary>
/// delete published suggested spec line
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
[HttpDelete("{id}")]
[Authorize(Policy = RMuseumSecurableItem.GanjoorEntityShortName + ":" + RMuseumSecurableItem.ModeratePoetPhotos)]
[ProducesResponseType((int)HttpStatusCode.OK, Type = typeof(bool))]
[ProducesResponseType((int)HttpStatusCode.BadRequest, Type = typeof(string))]
[ProducesResponseType((int)HttpStatusCode.Unauthorized)]
public async Task<IActionResult> DeletePoetSuggestedSpecLinesAsync(int id)
{
var res = await _ganjoorService.DeletePoetSuggestedSpecLinesAsync(id);
if (!string.IsNullOrEmpty(res.ExceptionString))
return BadRequest(res.ExceptionString);
return Ok(res.Result);
}
/// <summary>

View File

@ -2103,6 +2103,13 @@
<param name="rejectionCause"></param>
<returns></returns>
</member>
<member name="M:RMuseum.Controllers.GanjoorPoetSuggestedSpecLinesController.DeletePoetSuggestedSpecLinesAsync(System.Int32)">
<summary>
delete published suggested spec line
</summary>
<param name="id"></param>
<returns></returns>
</member>
<member name="F:RMuseum.Controllers.GanjoorPoetSuggestedSpecLinesController._ganjoorService">
<summary>
Ganjoor Service
@ -13397,6 +13404,13 @@
<param name="rejectionCause"></param>
<returns></returns>
</member>
<member name="M:RMuseum.Services.IGanjoorService.DeletePoetSuggestedSpecLinesAsync(System.Int32)">
<summary>
delete published suggested spec line
</summary>
<param name="id"></param>
<returns></returns>
</member>
<member name="M:RMuseum.Services.IGanjoorService.DeleteCategoryAsync(System.Int32)">
<summary>
delete a category
@ -15371,6 +15385,13 @@
<param name="rejectionCause"></param>
<returns></returns>
</member>
<member name="M:RMuseum.Services.Implementation.GanjoorService.DeletePoetSuggestedSpecLinesAsync(System.Int32)">
<summary>
delete published suggested spec line
</summary>
<param name="id"></param>
<returns></returns>
</member>
<member name="M:RMuseum.Services.Implementation.GanjoorService.AddPoemGeoDateTagAsync(RMuseum.Models.Ganjoor.PoemGeoDateTag)">
<summary>
add poem geo tag

View File

@ -939,6 +939,13 @@ namespace RMuseum.Services
/// <returns></returns>
Task<RServiceResult<bool>> RejectPoetSuggestedSpecLinesAsync(int id, Guid deleteUserId, string rejectionCause);
/// <summary>
/// delete published suggested spec line
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
Task<RServiceResult<bool>> DeletePoetSuggestedSpecLinesAsync(int id);
/// <summary>
/// delete a category
/// </summary>

View File

@ -269,7 +269,31 @@ namespace RMuseum.Services.Implementation
}
}
/// <summary>
/// delete published suggested spec line
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
public async Task<RServiceResult<bool>> DeletePoetSuggestedSpecLinesAsync(int id)
{
try
{
var dbModel = await _context.GanjoorPoetSuggestedSpecLines.Where(s => s.Id == id).SingleAsync();
if (dbModel.Published)
{
return new RServiceResult<bool>(false, "برای رد مشخصات تأیید نشده از تابع reject استفاده کنید.");
}
_context.Remove(dbModel);
await _context.SaveChangesAsync();
return new RServiceResult<bool>(true);
}
catch (Exception exp)
{
return new RServiceResult<bool>(false, exp.ToString());
}
}
}
}