const { PrismaClient } = require('@prisma/client') const prisma = new PrismaClient() async function populateSupplyArticles() { console.log('πŸ”„ ЗаполняСм ΠΏΠΎΠ»Π΅ article для ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… Supply записСй...') try { // НайдСм всС Supply записи Π±Π΅Π· Π°Ρ€Ρ‚ΠΈΠΊΡƒΠ»Π° const suppliesWithoutArticle = await prisma.supply.findMany({ where: { article: "" }, select: { id: true, name: true, article: true, organizationId: true, type: true, createdAt: true, }, }) console.log(`πŸ“¦ НайдСно Supply записСй Π±Π΅Π· Π°Ρ€Ρ‚ΠΈΠΊΡƒΠ»Π°: ${suppliesWithoutArticle.length}`) if (suppliesWithoutArticle.length === 0) { console.log('βœ… ВсС Supply записи ΡƒΠΆΠ΅ ΠΈΠΌΠ΅ΡŽΡ‚ Π°Ρ€Ρ‚ΠΈΠΊΡƒΠ»Ρ‹') return } for (const supply of suppliesWithoutArticle) { // Π“Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ Π°Ρ€Ρ‚ΠΈΠΊΡƒΠ» Π‘Π€ Π½Π° основС ID ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ создания const timestamp = supply.createdAt.toISOString().slice(0, 10).replace(/-/g, '') const shortId = supply.id.slice(-6).toUpperCase() const article = `Π‘Π€${timestamp}${shortId}` console.log(`πŸ“ ОбновляСм Supply "${supply.name}" (${supply.id})`) console.log(` Π‘Ρ‚Π°Ρ€Ρ‹ΠΉ Π°Ρ€Ρ‚ΠΈΠΊΡƒΠ»: "${supply.article}"`) console.log(` Новый Π°Ρ€Ρ‚ΠΈΠΊΡƒΠ»: "${article}"`) await prisma.supply.update({ where: { id: supply.id }, data: { article }, }) } console.log('βœ… ВсС Supply записи ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Ρ‹ с ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ Π°Ρ€Ρ‚ΠΈΠΊΡƒΠ»Π°ΠΌΠΈ') // ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠ΅ΠΌ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ const updatedSupplies = await prisma.supply.findMany({ select: { id: true, name: true, article: true, }, orderBy: { createdAt: 'desc' }, }) console.log('\nπŸ“‹ Π€ΠΈΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ список Supply с Π°Ρ€Ρ‚ΠΈΠΊΡƒΠ»Π°ΠΌΠΈ:') updatedSupplies.forEach((supply, index) => { console.log(` ${index + 1}. ${supply.name} (Артикул: ${supply.article})`) }) } catch (error) { console.error('❌ Ошибка ΠΏΡ€ΠΈ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ Π°Ρ€Ρ‚ΠΈΠΊΡƒΠ»ΠΎΠ²:', error) } finally { await prisma.$disconnect() } } populateSupplyArticles()