Удален файл интеграции с Parts Index API и обновлены компоненты для работы с корзиной и избранным. Добавлены функции для обработки добавления товаров в корзину с уведомлениями, улучшена логика работы с избранным, а также добавлены фильтры для истории поиска по производителю.

This commit is contained in:
Bivekich
2025-06-29 03:36:21 +03:00
parent d268bb3359
commit 7f91da525f
23 changed files with 685 additions and 780 deletions

View File

@ -58,6 +58,15 @@ const Header: React.FC<HeaderProps> = ({ onOpenAuthModal = () => console.log('Au
setSearchQuery(q);
}
}
// Если мы находимся на странице деталей автомобиля, восстанавливаем VIN из URL
else if (router.pathname === '/vehicle-search/[brand]/[vehicleId]') {
const { vin } = router.query;
if (vin && typeof vin === 'string') {
setSearchQuery(vin);
} else {
setSearchQuery('');
}
}
// Для других страниц очищаем поисковый запрос
else {
setSearchQuery('');
@ -321,11 +330,31 @@ const Header: React.FC<HeaderProps> = ({ onOpenAuthModal = () => console.log('Au
const catalogCode = (vehicle as any).catalog || vehicle.brand.toLowerCase();
console.log('🚗 Переход на страницу автомобиля:', { catalogCode, vehicleId: vehicle.vehicleid, ssd: vehicle.ssd });
// Создаем параметры URL
const urlParams = new URLSearchParams();
// Добавляем SSD если есть
if (vehicle.ssd) {
urlParams.set('ssd', vehicle.ssd);
}
// Добавляем VIN-номер в URL, если поиск был по VIN
if (searchType === 'vin' && searchQuery) {
urlParams.set('vin', searchQuery);
}
// Если переход происходит из поиска автомобилей по артикулу, передаем артикул для автоматического поиска
const currentOEMNumber = oemSearchMode === 'vehicles' ? searchQuery.trim().toUpperCase() : '';
const url = `/vehicle-search/${catalogCode}/${vehicle.vehicleid}?ssd=${vehicle.ssd || ''}${currentOEMNumber ? `&oemNumber=${encodeURIComponent(currentOEMNumber)}` : ''}`;
if (currentOEMNumber) {
urlParams.set('oemNumber', currentOEMNumber);
}
setSearchQuery('');
// Формируем URL
const baseUrl = `/vehicle-search/${catalogCode}/${vehicle.vehicleid}`;
const url = urlParams.toString() ? `${baseUrl}?${urlParams.toString()}` : baseUrl;
// НЕ очищаем поисковый запрос, чтобы он остался в строке поиска
// setSearchQuery('');
router.push(url);
};