import React, { useState, useEffect } from 'react'; import { useRouter } from 'next/router'; import { useQuery } from '@apollo/client'; import Head from 'next/head'; import Header from '@/components/Header'; import Footer from '@/components/Footer'; import { FIND_LAXIMO_VEHICLES_BY_PART_NUMBER } from '@/lib/graphql'; import { LaximoVehiclesByPartResult, LaximoVehicleSearchResult } from '@/types/laximo'; import MetaTags from "../components/MetaTags"; import { getMetaByPath } from "../lib/meta-config"; const VehiclesByPartPage = () => { const router = useRouter(); const { partNumber, catalogCode } = router.query; const [selectedCatalog, setSelectedCatalog] = useState('all'); // Отладочная информация console.log('🔍 VehiclesByPartPage - URL параметры:', { partNumber, catalogCode }); console.log('🔍 VehiclesByPartPage - Тип partNumber:', typeof partNumber, 'Значение:', partNumber); // Очищаем артикул от лишних символов const cleanPartNumber = partNumber ? (partNumber as string).trim() : ''; console.log('🔍 VehiclesByPartPage - Очищенный артикул:', cleanPartNumber); // Запрос для поиска автомобилей по артикулу const { data, loading, error } = useQuery<{ laximoFindVehiclesByPartNumber: LaximoVehiclesByPartResult }>( FIND_LAXIMO_VEHICLES_BY_PART_NUMBER, { variables: { partNumber: cleanPartNumber }, skip: !cleanPartNumber, errorPolicy: 'all' } ); const handleVehicleSelect = (vehicle: LaximoVehicleSearchResult) => { // Переходим сразу на страницу поиска результатов с артикулом console.log('🔍 Переход на поиск результатов с артикулом:', { partNumber: cleanPartNumber, vehicle: vehicle.name }); // Определяем бренд для поиска (используем первое слово из названия автомобиля или бренд) const vehicleBrand = vehicle.brand || vehicle.name?.split(' ')[0] || 'UNKNOWN'; // Переходим на search-result с артикулом const url = `/search-result?article=${encodeURIComponent(cleanPartNumber)}&brand=${encodeURIComponent(vehicleBrand)}`; router.push(url); }; const handleBackToSearch = () => { router.back(); }; const metaConfig = getMetaByPath('/vehicles-by-part'); if (loading) { return ( <>

Поиск автомобилей...