From 25e21ee6d71ba5c3ab55a5f41c613c4dc615f3a1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=B6=8C=ED=98=81=EC=84=B1?= Date: Sat, 21 Feb 2026 15:46:53 +0900 Subject: [PATCH] =?UTF-8?q?feat(WEB):=20=EC=A0=88=EA=B3=A1=ED=92=88=20?= =?UTF-8?q?=EC=84=A0=EC=83=9D=EC=82=B0=E2=86=92=EC=9E=AC=EA=B3=A0=EC=A0=81?= =?UTF-8?q?=EC=9E=AC=20Phase=202=20-=20=ED=92=88=EB=AA=A9=20=EC=B9=B4?= =?UTF-8?q?=ED=85=8C=EA=B3=A0=EB=A6=AC=20=ED=95=84=ED=84=B0=20=EC=B6=94?= =?UTF-8?q?=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - StockController: item_category 파라미터 수용 - StockService: items.item_category 기반 필터링 로직 추가 Co-Authored-By: Claude Opus 4.6 --- app/Http/Controllers/Api/V1/StockController.php | 1 + app/Services/StockService.php | 5 +++++ 2 files changed, 6 insertions(+) diff --git a/app/Http/Controllers/Api/V1/StockController.php b/app/Http/Controllers/Api/V1/StockController.php index f7cc586..fe9e03e 100644 --- a/app/Http/Controllers/Api/V1/StockController.php +++ b/app/Http/Controllers/Api/V1/StockController.php @@ -22,6 +22,7 @@ public function index(Request $request): JsonResponse $params = $request->only([ 'search', 'item_type', + 'item_category', 'status', 'location', 'sort_by', diff --git a/app/Services/StockService.php b/app/Services/StockService.php index 72f043d..e3569cf 100644 --- a/app/Services/StockService.php +++ b/app/Services/StockService.php @@ -69,6 +69,11 @@ public function index(array $params): LengthAwarePaginator $query->where('items.item_type', strtoupper($params['item_type'])); } + // 품목 카테고리 필터 (Item.item_category: BENDING, SCREEN, STEEL 등) + if (! empty($params['item_category'])) { + $query->where('items.item_category', strtoupper($params['item_category'])); + } + // 재고 상태 필터 (Stock.status) if (! empty($params['status'])) { $query->whereHas('stock', function ($q) use ($params) {