inventoryService = $inventoryService; } /** * 提供外部 POS 查詢指定倉庫的商品庫存餘額 * * @param string $warehouseCode * @return JsonResponse */ public function show(string $warehouseCode): JsonResponse { // 透過 Service 調用跨模組庫存查詢功能 $inventoryData = $this->inventoryService->getPosInventoryByWarehouseCode($warehouseCode); // 若回傳 null,表示尋無此倉庫代碼 if (is_null($inventoryData)) { return response()->json([ 'status' => 'error', 'message' => "Warehouse with code '{$warehouseCode}' not found.", ], 404); } // 以 JSON 格式回傳組合好的商品庫存列表 return response()->json([ 'status' => 'success', 'warehouse_code' => $warehouseCode, 'data' => $inventoryData->map(function ($item) { return [ 'external_pos_id' => $item->external_pos_id, 'product_code' => $item->product_code, 'product_name' => $item->product_name, 'quantity' => (float) $item->total_quantity, ]; }) ], 200); } }