59 lines
2.3 KiB
JavaScript
59 lines
2.3 KiB
JavaScript
// Тест формирования URL изображений для разных артикулов
|
|
|
|
function getImageUrl(article) {
|
|
const articleNum = parseInt(article);
|
|
const vol = Math.floor(articleNum / 100000);
|
|
const part = Math.floor(articleNum / 1000);
|
|
|
|
// Определяем номер корзины в зависимости от диапазона артикула
|
|
let basketNum;
|
|
if (articleNum < 14400000) {
|
|
basketNum = vol.toString().padStart(2, '0');
|
|
} else if (articleNum < 32800000) {
|
|
basketNum = (Math.floor(vol / 100) + 1).toString().padStart(2, '0');
|
|
} else if (articleNum < 72000000) {
|
|
basketNum = (Math.floor(vol / 100) + 2).toString().padStart(2, '0');
|
|
} else if (articleNum < 166400000) {
|
|
basketNum = (Math.floor(vol / 100) + 3).toString().padStart(2, '0');
|
|
} else {
|
|
basketNum = (Math.floor(vol / 100) + 4).toString().padStart(2, '0');
|
|
}
|
|
|
|
const imageUrl = `https://basket-${basketNum}.wbbasket.ru/vol${vol}/part${part}/${article}/images/c516x688/1.webp`;
|
|
|
|
return {
|
|
article,
|
|
articleNum,
|
|
vol,
|
|
part,
|
|
basketNum,
|
|
imageUrl
|
|
};
|
|
}
|
|
|
|
// Тестируем артикулы из логов
|
|
const testArticles = [
|
|
'240122176', // vol: 2401, basket: ?
|
|
'466992246', // vol: 4669, basket: ?
|
|
'281810311', // vol: 2818, basket: ?
|
|
'221321827', // vol: 2213, basket: ?
|
|
];
|
|
|
|
console.log('Тестирование формирования URL изображений:\n');
|
|
|
|
testArticles.forEach(article => {
|
|
const result = getImageUrl(article);
|
|
console.log(`Артикул: ${result.article}`);
|
|
console.log(` Vol: ${result.vol}, Part: ${result.part}, Basket: ${result.basketNum}`);
|
|
console.log(` URL: ${result.imageUrl}`);
|
|
console.log('');
|
|
});
|
|
|
|
// Проверяем корректность URL для артикула 240122176
|
|
// Из логов видно, что изображение должно быть на basket-2401
|
|
const expected240 = 'https://basket-2401.wbbasket.ru/vol2401/part240122/240122176/images/c516x688/1.webp';
|
|
const actual240 = getImageUrl('240122176');
|
|
console.log('Проверка артикула 240122176:');
|
|
console.log('Ожидается:', expected240);
|
|
console.log('Получено:', actual240.imageUrl);
|
|
console.log('Совпадает:', expected240 === actual240.imageUrl); |