Skip to content

Commit c142e08

Browse files
authored
Added search endpoint (#574)
1 parent 483d2cc commit c142e08

File tree

1 file changed

+33
-0
lines changed

1 file changed

+33
-0
lines changed

EmpleoDotNet.WebApi/Controllers/JobsController.cs

+33
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,39 @@ public IHttpActionResult Get(int page = 1, int pageSize = 2)
4545

4646
return Json(response);
4747
}
48+
49+
50+
51+
[Route("api/jobs/search/")]
52+
[HttpGet]
53+
public IHttpActionResult Search(string keyword = "", bool isRemote = false, int page = 1, int pageSize = 2)
54+
{
55+
56+
var pagingParameters = new JobOpportunityPagingParameter();
57+
pagingParameters.Keyword = keyword;
58+
pagingParameters.IsRemote = isRemote;
59+
pagingParameters.Page = page;
60+
pagingParameters.PageSize = pageSize;
61+
62+
// We should really take advantage of the fact that we have a PagedList
63+
var opportunities = _jobsService.GetAllJobOpportunitiesPagedByFilters(pagingParameters);
64+
65+
var jobCards = GetJobCards(opportunities);
66+
67+
68+
var response = new JobCardListResponse()
69+
{
70+
Jobs = jobCards,
71+
PageSize = opportunities.PageSize,
72+
PageNumber = opportunities.PageNumber,
73+
PagesCount = opportunities.PageCount,
74+
TotalItemCount = opportunities.TotalItemCount
75+
};
76+
77+
return Json(response);
78+
}
79+
80+
4881
[Route("api/jobs/detail/{id}")]
4982
[HttpGet]
5083
public IHttpActionResult Detail(string id)

0 commit comments

Comments
 (0)