Webhook paged results (#15802)
* Add controller to fetch paged results of webhooks * Return OK directly * Fix total * Update all languages
This commit is contained in:
committed by
GitHub
parent
ea31ddea6d
commit
ae541f5636
@@ -26,13 +26,14 @@ public class AllLanguageController : LanguageControllerBase
|
||||
[ProducesResponseType(typeof(PagedViewModel<LanguageResponseModel>), StatusCodes.Status200OK)]
|
||||
public async Task<ActionResult<PagedViewModel<LanguageResponseModel>>> All(int skip = 0, int take = 100)
|
||||
{
|
||||
ILanguage[] allLanguages = (await _languageService.GetAllAsync()).ToArray();
|
||||
IEnumerable<ILanguage> result = await _languageService.GetAllAsync();
|
||||
ILanguage[] allLanguages = result.ToArray();
|
||||
var viewModel = new PagedViewModel<LanguageResponseModel>
|
||||
{
|
||||
Total = allLanguages.Length,
|
||||
Items = _umbracoMapper.MapEnumerable<ILanguage, LanguageResponseModel>(allLanguages.Skip(skip).Take(take))
|
||||
};
|
||||
|
||||
return await Task.FromResult(Ok(viewModel));
|
||||
return Ok(viewModel);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,39 @@
|
||||
using Asp.Versioning;
|
||||
using Microsoft.AspNetCore.Http;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
using Umbraco.Cms.Api.Common.ViewModels.Pagination;
|
||||
using Umbraco.Cms.Api.Management.ViewModels.Webhook;
|
||||
using Umbraco.Cms.Core.Mapping;
|
||||
using Umbraco.Cms.Core.Models;
|
||||
using Umbraco.Cms.Core.Services;
|
||||
|
||||
namespace Umbraco.Cms.Api.Management.Controllers.Webhook;
|
||||
|
||||
[ApiVersion("1.0")]
|
||||
public class AllWebhookController : WebhookControllerBase
|
||||
{
|
||||
private readonly IWebhookService _webhookService;
|
||||
private readonly IUmbracoMapper _umbracoMapper;
|
||||
|
||||
public AllWebhookController(IWebhookService webhookService, IUmbracoMapper umbracoMapper)
|
||||
{
|
||||
_webhookService = webhookService;
|
||||
_umbracoMapper = umbracoMapper;
|
||||
}
|
||||
|
||||
[HttpGet]
|
||||
[MapToApiVersion("1.0")]
|
||||
[ProducesResponseType(typeof(PagedViewModel<WebhookResponseModel>), StatusCodes.Status200OK)]
|
||||
public async Task<ActionResult<PagedViewModel<WebhookResponseModel>>> All(int skip = 0, int take = 100)
|
||||
{
|
||||
PagedModel<IWebhook> result = await _webhookService.GetAllAsync(skip, take);
|
||||
IWebhook[] webhooks = result.Items.ToArray();
|
||||
var viewModel = new PagedViewModel<WebhookResponseModel>
|
||||
{
|
||||
Total = result.Total,
|
||||
Items = _umbracoMapper.MapEnumerable<IWebhook, WebhookResponseModel>(webhooks)
|
||||
};
|
||||
|
||||
return Ok(viewModel);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user