From fd7d5d78f3a320f28ad6eee4ec7cf31de0e2f059 Mon Sep 17 00:00:00 2001 From: Mikhail Kuznetsov Date: Tue, 12 Mar 2024 16:01:55 +1000 Subject: [PATCH] =?UTF-8?q?feat(api):=20appInWorks,=20=D1=84=D0=B8=D0=BB?= =?UTF-8?q?=D1=8C=D1=82=D1=80=20=D0=BF=D0=BE=20short=20description?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../V1/Requests/Queries/ApplicationInWorkQuery.cs | 10 ++++++++++ PARR.API/Controllers/V1/ApplicationInWorkController.cs | 5 ++++- 2 files changed, 14 insertions(+), 1 deletion(-) create mode 100644 PARR.API/Contracts/V1/Requests/Queries/ApplicationInWorkQuery.cs diff --git a/PARR.API/Contracts/V1/Requests/Queries/ApplicationInWorkQuery.cs b/PARR.API/Contracts/V1/Requests/Queries/ApplicationInWorkQuery.cs new file mode 100644 index 00000000..f10afccb --- /dev/null +++ b/PARR.API/Contracts/V1/Requests/Queries/ApplicationInWorkQuery.cs @@ -0,0 +1,10 @@ +namespace PARR.API.Contracts.V1.Requests.Queries +{ + public class ApplicationInWorkQuery + { + /// + /// Поиск по краткому описанию + /// + public string? ShortDescription { get; set; } + } +} diff --git a/PARR.API/Controllers/V1/ApplicationInWorkController.cs b/PARR.API/Controllers/V1/ApplicationInWorkController.cs index 7d70858e..20a839c6 100644 --- a/PARR.API/Controllers/V1/ApplicationInWorkController.cs +++ b/PARR.API/Controllers/V1/ApplicationInWorkController.cs @@ -39,7 +39,7 @@ namespace PARR.API.Controllers.V1 /// /// [HttpGet(ApiRoutes.Job.GetAll)] - public async Task GetAll([FromQuery] PaginationQuery paginationQuery) + public async Task GetAll([FromQuery] PaginationQuery paginationQuery, [FromQuery] ApplicationInWorkQuery filter) { var paginationFilter = mapper.Map(paginationQuery); @@ -48,6 +48,9 @@ namespace PARR.API.Controllers.V1 .Include(t => t.Work) .OrderBy(t => t.ShortDescription); + if (!string.IsNullOrEmpty(filter.ShortDescription)) + query = query.Where(t => t.ShortDescription.ToLower().Contains(filter.ShortDescription.ToLower())); + var appInWorks = await applicationsInWorkService.GetPage(query, paginationFilter).ToListAsync(); if (!appInWorks.Any())