spt-items-api/app/Http/Controllers/ItemController.php

43 lines
919 B
PHP

<?php
namespace App\Http\Controllers;
use App\Data\ItemsCollection;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class ItemController extends Controller
{
/**
* @var ItemsCollection
*/
private ItemsCollection $itemsCollection;
public function __construct(ItemsCollection $itemsCollection)
{
$this->itemsCollection = $itemsCollection;
}
/**
* @param Request $request
* @return JsonResponse
*/
public function search(Request $request): JsonResponse
{
return response()->json([
'item' => $this->itemsCollection->findItem($request->input('query')),
]);
}
/**
* @param string $id
* @return JsonResponse
*/
public function getItem(string $id): JsonResponse
{
return response()->json([
'item' => $this->itemsCollection->getItemById($id),
]);
}
}