docs: #285 CRUD API for FAQ Categories and Items
This commit is contained in:
parent
e9ee2de210
commit
46f577048c
@ -61,6 +61,58 @@ namespace RMuseum.Controllers
|
||||
return Ok(res.Result);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// add a new faq category
|
||||
/// </summary>
|
||||
/// <param name="cat"></param>
|
||||
/// <returns></returns>
|
||||
|
||||
[HttpPost("cat")]
|
||||
[Authorize(Policy = RMuseumSecurableItem.FAQEntityShortName + ":" + RMuseumSecurableItem.ModerateOperationShortName)]
|
||||
[ProducesResponseType((int)HttpStatusCode.OK, Type = typeof(FAQCategory))]
|
||||
[ProducesResponseType((int)HttpStatusCode.BadRequest, Type = typeof(string))]
|
||||
public async Task<IActionResult> AddCategoryAsync([FromBody]FAQCategory cat)
|
||||
{
|
||||
var res = await _faqService.AddCategoryAsync(cat);
|
||||
if (!string.IsNullOrEmpty(res.ExceptionString))
|
||||
return BadRequest(res.ExceptionString);
|
||||
return Ok(res.Result);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// update an existing faq category
|
||||
/// </summary>
|
||||
/// <param name="cat"></param>
|
||||
/// <returns></returns>
|
||||
[HttpPut("cat")]
|
||||
[Authorize(Policy = RMuseumSecurableItem.FAQEntityShortName + ":" + RMuseumSecurableItem.ModerateOperationShortName)]
|
||||
[ProducesResponseType((int)HttpStatusCode.OK, Type = typeof(FAQCategory))]
|
||||
[ProducesResponseType((int)HttpStatusCode.BadRequest, Type = typeof(string))]
|
||||
public async Task<IActionResult> UpdateCategoryAsync([FromBody] FAQCategory cat)
|
||||
{
|
||||
var res = await _faqService.UpdateCategoryAsync(cat);
|
||||
if (!string.IsNullOrEmpty(res.ExceptionString))
|
||||
return BadRequest(res.ExceptionString);
|
||||
return Ok(res.Result);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// delete a faq category
|
||||
/// </summary>
|
||||
/// <param name="id"></param>
|
||||
/// <returns></returns>
|
||||
[HttpDelete("cat/{id}")]
|
||||
[Authorize(Policy = RMuseumSecurableItem.FAQEntityShortName + ":" + RMuseumSecurableItem.ModerateOperationShortName)]
|
||||
[ProducesResponseType((int)HttpStatusCode.OK, Type = typeof(bool))]
|
||||
[ProducesResponseType((int)HttpStatusCode.BadRequest, Type = typeof(string))]
|
||||
public async Task<IActionResult> DeleteCategoryAsync(int id)
|
||||
{
|
||||
var res = await _faqService.DeleteCategoryAsync(id);
|
||||
if (!string.IsNullOrEmpty(res.ExceptionString))
|
||||
return BadRequest(res.ExceptionString);
|
||||
return Ok(res.Result);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// get published pinned items
|
||||
/// </summary>
|
||||
@ -130,6 +182,60 @@ namespace RMuseum.Controllers
|
||||
}
|
||||
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// add a new faq item
|
||||
/// </summary>
|
||||
/// <param name="item"></param>
|
||||
/// <returns></returns>
|
||||
|
||||
[HttpPost]
|
||||
[Authorize(Policy = RMuseumSecurableItem.FAQEntityShortName + ":" + RMuseumSecurableItem.ModerateOperationShortName)]
|
||||
[ProducesResponseType((int)HttpStatusCode.OK, Type = typeof(FAQCategory))]
|
||||
[ProducesResponseType((int)HttpStatusCode.BadRequest, Type = typeof(string))]
|
||||
public async Task<IActionResult> AddItemAsync([FromBody] FAQItem item)
|
||||
{
|
||||
var res = await _faqService.AddItemAsync(item);
|
||||
if (!string.IsNullOrEmpty(res.ExceptionString))
|
||||
return BadRequest(res.ExceptionString);
|
||||
return Ok(res.Result);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// update an existing faq item
|
||||
/// </summary>
|
||||
/// <param name="item"></param>
|
||||
/// <returns></returns>
|
||||
[HttpPut]
|
||||
[Authorize(Policy = RMuseumSecurableItem.FAQEntityShortName + ":" + RMuseumSecurableItem.ModerateOperationShortName)]
|
||||
[ProducesResponseType((int)HttpStatusCode.OK, Type = typeof(FAQCategory))]
|
||||
[ProducesResponseType((int)HttpStatusCode.BadRequest, Type = typeof(string))]
|
||||
public async Task<IActionResult> UpdateItemAsync([FromBody] FAQItem item)
|
||||
{
|
||||
var res = await _faqService.UpdateItemAsync(item);
|
||||
if (!string.IsNullOrEmpty(res.ExceptionString))
|
||||
return BadRequest(res.ExceptionString);
|
||||
return Ok(res.Result);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// delete a faq item
|
||||
/// </summary>
|
||||
/// <param name="id"></param>
|
||||
/// <returns></returns>
|
||||
[HttpDelete("{id}")]
|
||||
[Authorize(Policy = RMuseumSecurableItem.FAQEntityShortName + ":" + RMuseumSecurableItem.ModerateOperationShortName)]
|
||||
[ProducesResponseType((int)HttpStatusCode.OK, Type = typeof(bool))]
|
||||
[ProducesResponseType((int)HttpStatusCode.BadRequest, Type = typeof(string))]
|
||||
public async Task<IActionResult> DeleteItemAsync(int id)
|
||||
{
|
||||
var res = await _faqService.DeleteItemAsync(id);
|
||||
if (!string.IsNullOrEmpty(res.ExceptionString))
|
||||
return BadRequest(res.ExceptionString);
|
||||
return Ok(res.Result);
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// FAQ Service
|
||||
/// </summary>
|
||||
|
||||
@ -772,6 +772,27 @@
|
||||
<param name="id"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:RMuseum.Controllers.FAQController.AddCategoryAsync(RMuseum.Models.FAQ.FAQCategory)">
|
||||
<summary>
|
||||
add a new faq category
|
||||
</summary>
|
||||
<param name="cat"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:RMuseum.Controllers.FAQController.UpdateCategoryAsync(RMuseum.Models.FAQ.FAQCategory)">
|
||||
<summary>
|
||||
update an existing faq category
|
||||
</summary>
|
||||
<param name="cat"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:RMuseum.Controllers.FAQController.DeleteCategoryAsync(System.Int32)">
|
||||
<summary>
|
||||
delete a faq category
|
||||
</summary>
|
||||
<param name="id"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:RMuseum.Controllers.FAQController.GetPinnedItemsAsync">
|
||||
<summary>
|
||||
get published pinned items
|
||||
@ -798,6 +819,27 @@
|
||||
<param name="id"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:RMuseum.Controllers.FAQController.AddItemAsync(RMuseum.Models.FAQ.FAQItem)">
|
||||
<summary>
|
||||
add a new faq item
|
||||
</summary>
|
||||
<param name="item"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:RMuseum.Controllers.FAQController.UpdateItemAsync(RMuseum.Models.FAQ.FAQItem)">
|
||||
<summary>
|
||||
update an existing faq item
|
||||
</summary>
|
||||
<param name="item"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:RMuseum.Controllers.FAQController.DeleteItemAsync(System.Int32)">
|
||||
<summary>
|
||||
delete a faq item
|
||||
</summary>
|
||||
<param name="id"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="F:RMuseum.Controllers.FAQController._faqService">
|
||||
<summary>
|
||||
FAQ Service
|
||||
|
||||
Loading…
Reference in New Issue
Block a user