#106 add site banner api

This commit is contained in:
Hamid Reza Mohammadi 2021-04-21 19:53:10 +04:30
parent d22f39bf11
commit 57b92e2c4c
2 changed files with 57 additions and 0 deletions

View File

@ -931,6 +931,57 @@ namespace RMuseum.Controllers
return Ok(res.Result);
}
/// <summary>
/// add site banner (send form) with these feilds: filename, alt, url and an image attachment
/// </summary>
/// <returns></returns>
[HttpPost]
[Route("site/banner")]
[Authorize(Policy = RMuseumSecurableItem.GanjoorEntityShortName + ":" + RMuseumSecurableItem.ImportOperationShortName)]
[ProducesResponseType((int)HttpStatusCode.OK, Type = typeof(GanjoorSiteBanner))]
[ProducesResponseType((int)HttpStatusCode.BadRequest, Type = typeof(string))]
[ProducesResponseType((int)HttpStatusCode.Unauthorized)]
public async Task<IActionResult> AddSiteBanner()
{
try
{
if (!Request.Form.TryGetValue("filename", out Microsoft.Extensions.Primitives.StringValues filename))
{
return BadRequest("filename is null");
}
if (!Request.Form.TryGetValue("alt", out Microsoft.Extensions.Primitives.StringValues alt))
{
return BadRequest("alt is null");
}
if (!Request.Form.TryGetValue("url", out Microsoft.Extensions.Primitives.StringValues url))
{
return BadRequest("url is null");
}
if(Request.Form.Files.Count != 1)
{
return BadRequest("a single image is not provided");
}
using Stream stream = Request.Form.Files[0].OpenReadStream();
RServiceResult<GanjoorSiteBanner> res = await _ganjoorService.AddSiteBanner(stream, filename.ToString(), alt.ToString(), alt.ToString(), false);
if (!string.IsNullOrEmpty(res.ExceptionString))
{
return BadRequest(res.ExceptionString);
}
return Ok(res.Result);
}
catch (Exception exp)
{
return BadRequest(exp.ToString());
}
}
/// <summary>
/// Ganjoor Service
/// </summary>

View File

@ -883,6 +883,12 @@
</summary>
<returns></returns>
</member>
<member name="M:RMuseum.Controllers.GanjoorController.AddSiteBanner">
<summary>
add site banner (send form) with these feilds: filename, alt, url and an image attachment
</summary>
<returns></returns>
</member>
<member name="F:RMuseum.Controllers.GanjoorController._ganjoorService">
<summary>
Ganjoor Service