From 7bb55cc31fa1b0f36ff47da761197957b4a6ebbb Mon Sep 17 00:00:00 2001 From: "a.shamavov" <a.shamavov@iqdev.digital> Date: Tue, 16 Apr 2024 10:49:04 +0500 Subject: [PATCH] fix --- src/Controller/HomeController.php | 20 ++++++-------------- src/Requests/HowDaysToNyRequest.php | 11 +++++++++++ 2 files changed, 17 insertions(+), 14 deletions(-) create mode 100644 src/Requests/HowDaysToNyRequest.php diff --git a/src/Controller/HomeController.php b/src/Controller/HomeController.php index f8eec4a..a1933a3 100644 --- a/src/Controller/HomeController.php +++ b/src/Controller/HomeController.php @@ -7,7 +7,8 @@ use App\Requests\{ SortPriceRequest, SearchRequest, UniqElementsRequest, - MenuRequest + MenuRequest, + HowDaysToNyRequest }; use DateTimeImmutable; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; @@ -48,21 +49,12 @@ class HomeController extends AbstractController return $this->json($result); } - #[Route( - '/howDaysToNy/{day}/{month}/{year}', - name: 'howDaysToNy', - requirements: [ - 'day' => '(?<!-)(?<!\d)\d+', - 'month' => '(?<!-)(?<!\d)\d+', - 'year' => '(?<!-)(?<!\d)\d+' - ], - methods: ['GET'] - )] - public function howDaysToNy(int $day, int $month, int $year): Response + #[Route('/howDaysToNy', name: 'howDaysToNy', methods: ['GET'])] + public function howDaysToNy(HowDaysToNyRequest $request): Response { - $dateAsString = $year . "-" . $month . "-" . $day; + $date = $request->getRequest()->get('date'); try { - $result = $this->functions->howDaysToNy(new DateTimeImmutable($dateAsString)); + $result = $this->functions->howDaysToNy(new DateTimeImmutable($date)); } catch (\Exception $e) { return new Response($e->getMessage()); } diff --git a/src/Requests/HowDaysToNyRequest.php b/src/Requests/HowDaysToNyRequest.php new file mode 100644 index 0000000..c786942 --- /dev/null +++ b/src/Requests/HowDaysToNyRequest.php @@ -0,0 +1,11 @@ +<?php + +namespace App\Requests; + +use Symfony\Component\Validator\Constraints as Assert; + +class HowDaysToNyRequest extends BaseRequest +{ + #[Assert\Type('date')] + public $date; +} -- GitLab