Files
kupshop/bundles/KupShop/GraphQLBundle/ApiPublic/Controller/RecommenderController.php
2025-08-02 16:30:27 +02:00

31 lines
915 B
PHP

<?php
namespace KupShop\GraphQLBundle\ApiPublic\Controller;
use GraphQL\Type\Definition\ResolveInfo;
use KupShop\GraphQLBundle\ApiAdmin\Annotation\Module;
use KupShop\RecommendersBundle\Util\RecommendersUtil;
use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
use TheCodingMachine\GraphQLite\Annotations\Query;
use TheCodingMachine\GraphQLite\Annotations\UseInputType;
class RecommenderController
{
public function __construct(private ?RecommendersUtil $recommendersUtil)
{
}
#[Query]
#[Module(\Modules::RECOMMENDERS)]
public function recommender(ResolveInfo $resolveInfo, #[UseInputType('String')] $data): string
{
$data = json_decode($data, true);
try {
return $this->recommendersUtil->renderRecommendersProducts($data);
} catch (NotFoundHttpException $exception) {
return $exception->getMessage();
}
}
}