Commit a78e29e9 authored by Александр Плохих's avatar Александр Плохих 🌔
Browse files

STA-960 | make all news controllers&handles & fix some restauranst issues

parent d2e016fa
Loading
Loading
Loading
Loading
+15 −15
Original line number Diff line number Diff line
@@ -18,21 +18,21 @@ abstract class AbstractController extends BundleController

    protected function build(AbstractRequest $request): JsonResponse
    {
        try {
//        try {
            return new JsonResponse($this->service->serve($request));

        } catch (AbstractError $error) {
            $errorDto = new ErrorDto();

            $errorDto->message = $error->message;
            $errorDto->code = $error->code;
            $errorDto->status = $error->status;

            return new JsonResponse($errorDto, $error->status);

        } catch (Throwable $exception) {
            $error = new ErrorDto();
            return new JsonResponse($error, $error->status);
        }
//
//        } catch (AbstractError $error) {
//            $errorDto = new ErrorDto();
//
//            $errorDto->message = $error->message;
//            $errorDto->code = $error->code;
//            $errorDto->status = $error->status;
//
//            return new JsonResponse($errorDto, $error->status);
//
//        } catch (Throwable $exception) {
//            $error = new ErrorDto();
//            return new JsonResponse($error, $error->status);
//        }
    }
}
+23 −0
Original line number Diff line number Diff line
<?php

namespace App\Controller;

use App\Request\NewsListingRequest;
use App\Service\NewsListingService;
use Symfony\Component\HttpFoundation\JsonResponse;
use Symfony\Component\Routing\Attribute\Route;

#[Route('api/v1/news')]
class NewsController extends AbstractController
{
    public function __construct(NewsListingService $service)
    {
        parent::__construct($service);
    }

    #[Route('/', name: 'news')]
    public function index(NewsListingRequest $request): JsonResponse
    {
        return $this->build($request);
    }
}
+23 −0
Original line number Diff line number Diff line
<?php

namespace App\Controller;

use App\Request\DetailRequest;
use App\Service\NewsDetailService;
use Symfony\Component\HttpFoundation\JsonResponse;
use Symfony\Component\Routing\Attribute\Route;

#[Route('/api/v1/news')]
class NewsDetailController extends AbstractController
{
    public function __construct(NewsDetailService $service)
    {
        parent::__construct($service);
    }

    #[Route('/{detailId}', name: 'oneNews')]
    public function index(DetailRequest $request): JsonResponse
    {
        return $this->build($request);
    }
}
+23 −0
Original line number Diff line number Diff line
<?php

namespace App\Controller;

use App\Request\EmptyRequest;
use App\Service\NewsMainNewsService;
use App\Service\ServiceInterface;
use Symfony\Component\Routing\Attribute\Route;

#[Route('/api/v1/news')]
class NewsMainNewsController extends AbstractController
{
    public function __construct(NewsMainNewsService $service)
    {
        parent::__construct($service);
    }

    #[Route('/mainNews', name: 'mainNews')]
    public function index (EmptyRequest $request)
    {
        return $this->build($request);
    }
}
 No newline at end of file
+23 −0
Original line number Diff line number Diff line
<?php

namespace App\Controller;

use App\Request\EmptyRequest;
use App\Service\NewsSearchService;
use Symfony\Component\HttpFoundation\JsonResponse;
use Symfony\Component\Routing\Attribute\Route;

#[Route('/api/v1/news')]
class NewsSearchController extends AbstractController
{
    public function __construct(NewsSearchService $service)
    {
        parent::__construct($service);
    }

    #[Route('/search', name: 'newsSearch')]
    public function index(EmptyRequest $request): JsonResponse
    {
        return $this->build($request);
    }
}
 No newline at end of file
Loading