const { PrismaClient } = require('@prisma/client') const prisma = new PrismaClient() async function fixSupplyTypes() { try { console.log('🔧 ИСПРАВЛЯЕМ ТИПЫ SUPPLY ЗАПИСЕЙ...') // Найдем проблемную Supply запись "Тестовый Пакет" const problemSupply = await prisma.supply.findFirst({ where: { name: 'Тестовый Пакет', article: 'ТП1755161624282', type: 'FULFILLMENT_CONSUMABLES' } }) if (!problemSupply) { console.log('❌ Supply запись "Тестовый Пакет" не найдена') return } console.log('📦 НАЙДЕНА ПРОБЛЕМНАЯ SUPPLY ЗАПИСЬ:') console.log(` ID: ${problemSupply.id}`) console.log(` Название: ${problemSupply.name}`) console.log(` Артикул: ${problemSupply.article}`) console.log(` Текущий тип: ${problemSupply.type}`) console.log(` Остаток: ${problemSupply.currentStock}`) // Найдем заказы селлеров с этим товаром const sellerOrders = await prisma.supplyOrder.findMany({ where: { consumableType: 'SELLER_CONSUMABLES', items: { some: { product: { article: 'ТП1755161624282' } } } }, include: { organization: { select: { id: true, name: true, type: true } } } }) if (sellerOrders.length > 0) { // Это товар из заказов селлеров, нужно исправить const firstSellerOrder = sellerOrders[0] console.log(`\n🔧 ИСПРАВЛЯЕМ SUPPLY ЗАПИСЬ:`) console.log(` Причина: Товар из заказов селлера "${firstSellerOrder.organization?.name}"`) console.log(` БЫЛО: type = FULFILLMENT_CONSUMABLES, sellerOwnerId = null`) console.log(` СТАЛО: type = SELLER_CONSUMABLES, sellerOwnerId = ${firstSellerOrder.organization?.id}`) await prisma.supply.update({ where: { id: problemSupply.id }, data: { type: 'SELLER_CONSUMABLES', sellerOwnerId: firstSellerOrder.organization?.id } }) console.log('✅ Supply запись успешно исправлена!') // Проверяем результат const updatedSupply = await prisma.supply.findUnique({ where: { id: problemSupply.id }, include: { sellerOwner: { select: { name: true, type: true } } } }) console.log('\n📋 РЕЗУЛЬТАТ ИСПРАВЛЕНИЯ:') console.log(` Тип: ${updatedSupply?.type}`) console.log(` Владелец-селлер: ${updatedSupply?.sellerOwner?.name}`) console.log(` Остаток: ${updatedSupply?.currentStock}`) console.log('\n🎯 ОЖИДАЕМЫЙ РЕЗУЛЬТАТ В UI:') console.log(' 📊 Карточка "Расходники селлеров": 10 штук') console.log(' 📊 Карточка "Расходники фулфилмента": 0 штук') console.log(' 📋 Столбец "Расходники селлеров" в таблице: 10 штук') console.log(' 📋 Столбец "Расходники фулфилмента" в таблице: 0 штук') } else { console.log('❌ Не найдены связанные заказы селлеров') } } catch (error) { console.error('❌ Ошибка при исправлении Supply:', error.message) } finally { await prisma.$disconnect() } } fixSupplyTypes()