1
1
using Api . Contract ;
2
2
using EmpleoDotNet . AppServices ;
3
+ using EmpleoDotNet . Core . Domain ;
3
4
using EmpleoDotNet . Core . Dto ;
4
5
using EmpleoDotNet . WebAPI . Services ;
5
6
using System . Collections . Generic ;
@@ -20,10 +21,27 @@ public JobsController(IJobOpportunityService jobsService, IJobOpportunityToMobil
20
21
}
21
22
22
23
[ Route ( "api/jobs/" ) ]
23
- public IHttpActionResult Get ( int page = 1 , int pageSize = 25 )
24
+ public IHttpActionResult Get ( int page = 1 , int pageSize = 2 )
24
25
{
25
- var jobCards = GetJobCards ( page , pageSize ) . ToList ( ) ;
26
- var response = new JobCardListResponse ( jobCards ) ;
26
+
27
+ var pagingParameters = new JobOpportunityPagingParameter ( ) ;
28
+ pagingParameters . Page = page ;
29
+ pagingParameters . PageSize = pageSize ;
30
+
31
+ // We should really take advantage of the fact that we have a PagedList
32
+ var opportunities = _jobsService . GetAllJobOpportunitiesPagedByFilters ( pagingParameters ) ;
33
+
34
+ var jobCards = GetJobCards ( opportunities ) ;
35
+
36
+
37
+ var response = new JobCardListResponse ( )
38
+ {
39
+ Jobs = jobCards ,
40
+ PageSize = opportunities . PageSize ,
41
+ PageNumber = opportunities . PageNumber ,
42
+ PagesCount = opportunities . PageCount ,
43
+ TotalItemCount = opportunities . TotalItemCount
44
+ } ;
27
45
28
46
return Json ( response ) ;
29
47
}
@@ -39,16 +57,9 @@ public IHttpActionResult Detail(string id)
39
57
return Json ( jobDetails ) ;
40
58
}
41
59
42
- private IEnumerable < JobCardDTO > GetJobCards ( int page , int pageSize )
60
+ private IEnumerable < JobCardDTO > GetJobCards ( IEnumerable < JobOpportunity > jobOpportunities )
43
61
{
44
- var pagingParameters = new JobOpportunityPagingParameter ( ) ;
45
- pagingParameters . Page = page ;
46
- pagingParameters . PageSize = pageSize ;
47
-
48
- // We should really take advantage of the fact that we have a PagedList
49
- var opportunities = _jobsService . GetAllJobOpportunitiesPagedByFilters ( pagingParameters ) ;
50
-
51
- var jobCards = opportunities . Select ( x => _adapter . GetJobCard ( x ) ) ;
62
+ var jobCards = jobOpportunities . Select ( x => _adapter . GetJobCard ( x ) ) ;
52
63
return jobCards ;
53
64
}
54
65
}
0 commit comments