diff --git a/PARR.API/Contracts/V1/Requests/Queries/WeekendQuery.cs b/PARR.API/Contracts/V1/Requests/Queries/WeekendQuery.cs
new file mode 100644
index 00000000..102fabf2
--- /dev/null
+++ b/PARR.API/Contracts/V1/Requests/Queries/WeekendQuery.cs
@@ -0,0 +1,9 @@
+namespace PARR.API.Contracts.V1.Requests.Queries
+{
+ public class WeekendQuery
+ {
+ public DateOnly? StartPeriod { get; set; }
+
+ public DateOnly? EndPeriod { get; set; }
+ }
+}
diff --git a/PARR.API/Controllers/V1/WeekendController.cs b/PARR.API/Controllers/V1/WeekendController.cs
index 0bcd0216..9dd7fc35 100644
--- a/PARR.API/Controllers/V1/WeekendController.cs
+++ b/PARR.API/Controllers/V1/WeekendController.cs
@@ -48,12 +48,15 @@ namespace PARR.API.Controllers.V1
///
///
[HttpGet(ApiRoutes.Weekend.GetAll)]
- public async Task GetAll([FromQuery] PaginationQuery paginationQuery)
+ public async Task GetAll([FromQuery] PaginationQuery paginationQuery, [FromQuery] WeekendQuery weekendQuery)
{
var paginationFilter = mapper.Map(paginationQuery);
IQueryable query = weekendDayService.Get().OrderBy(t => t.Date);
+ if (weekendQuery.StartPeriod.HasValue && weekendQuery.EndPeriod.HasValue)
+ query = query.Where(t => t.Date >= weekendQuery.StartPeriod.Value && t.Date <= weekendQuery.EndPeriod);
+
var weekends = await weekendDayService.GetPage(query, paginationFilter).ToListAsync();
if (!weekends.Any())