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