using Microsoft.AspNetCore.Mvc; using Microsoft.Extensions.Configuration; using Microsoft.Extensions.Logging; using System.Threading.Tasks; using SearchApi.SearchLogic; using Datamodels.SearchModels; using System.Collections.Generic; using Datamodels.DatabaseModels; namespace FwSearchApi.Controllers { [ApiController] [Route("[controller]")] public class SearchController : ControllerBase { private readonly ILogger _logger; private readonly IConfiguration _configuration; private readonly ISearchLogic _searchLogic; public SearchController(ILogger logger, IConfiguration configuration, ISearchLogic searchLogic) { _logger = logger; _configuration = configuration; _searchLogic = searchLogic; } /// /// This is for Test only /// [HttpGet] [Route("GetAddresses")] public async Task GetAllAddresses() { var result = await _searchLogic.GetAllAddresses(); return new JsonResult(result); } [HttpPost] [Route("GetFilteredData")] public async Task GetFilteredData([FromBody] FilterModel filter, [FromQuery] long skip = 0, [FromQuery] long take = -1) { var result = await _searchLogic.GetFilteredData(filter, skip, take); return new JsonResult(result); } } }