import React 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 { GET_LAXIMO_CATALOG_INFO, SEARCH_LAXIMO_OEM } from '@/lib/graphql'; import { LaximoCatalogInfo, LaximoOEMResult } from '@/types/laximo'; import MetaTags from '@/components/MetaTags'; import { getMetaByPath } from '@/lib/meta-config'; const InfoPartDetail = ({ brandName, oemNumber }: { brandName: string; oemNumber: string }) => (
Главная
Каталог
{brandName}
Деталь {oemNumber}

Деталь {oemNumber}

Подробная информация о детали {oemNumber}
); const PartDetailPage = () => { const router = useRouter(); const { brand, vehicleId, oemNumber } = router.query; // Получаем SSD из localStorage или URL const useStorage = router.query.use_storage === '1'; const ssdLengthFromUrl = router.query.ssd_length ? parseInt(router.query.ssd_length as string) : 0; let finalSsd = ''; if (useStorage && typeof window !== 'undefined') { const vehicleKey = `vehicle_ssd_${brand}_${vehicleId}`; const storedSsd = localStorage.getItem(vehicleKey); if (storedSsd) { finalSsd = storedSsd; } } // Получаем информацию о каталоге const { data: catalogData, loading: catalogLoading } = useQuery<{ laximoCatalogInfo: LaximoCatalogInfo }>( GET_LAXIMO_CATALOG_INFO, { variables: { catalogCode: brand }, skip: !brand, errorPolicy: 'all', } ); // Получаем информацию о детали const { data: oemData, loading: oemLoading, error: oemError } = useQuery<{ laximoOEMSearch: LaximoOEMResult }>( SEARCH_LAXIMO_OEM, { variables: { catalogCode: brand, vehicleId: vehicleId, oemNumber: oemNumber, ssd: finalSsd }, skip: !brand || vehicleId === undefined || vehicleId === null || !oemNumber || !finalSsd, errorPolicy: 'all' } ); if (!brand || vehicleId === undefined || vehicleId === null || !oemNumber) { return ( <> Деталь не найдена

Деталь не найдена

Неверные параметры для отображения детали