const prisma = require('../../../src/prisma/PrismaClient.js');
const timeLocal = require('../../../src/utils/TimeLocal.js')

const cityNames = [
    'Kabupaten Asahan',
    'Kabupaten Batu Bara',
    'Kabupaten Dairi',
    'Kabupaten Deli Serdang',
    'Kabupaten Humbang Hasundutan',
    'Kabupaten Karo',
    'Kabupaten Labuhanbatu',
    'Kabupaten Labuhanbatu Selatan',
    'Kabupaten Labuhanbatu Utara',
    'Kabupaten Langkat',
    'Kabupaten Mandailing Natal',
    'Kabupaten Nias',
    'Kabupaten Nias Barat',
    'Kabupaten Nias Selatan',
    'Kabupaten Nias Utara',
    'Kabupaten Padang Lawas',
    'Kabupaten Padang Lawas Utara',
    'Kabupaten Pakpak Bharat',
    'Kabupaten Samosir',
    'Kabupaten Serdang Bedagai',
    'Kabupaten Simalungun',
    'Kabupaten Tapanuli Selatan',
    'Kabupaten Tapanuli Tengah',
    'Kabupaten Tapanuli Utara',
    'Kabupaten Toba',
    'Kota Binjai',
    'Kota Gunungsitoli',
    'Kota Medan',
    'Kota Padangsidimpuan',
    'Kota Pematangsiantar',
    'Kota Sibolga',
    'Kota Tanjungbalai',
    'Kota Tebing Tinggi'

    // 33
];

exports.seedSumateraUtaraCities = async () => {
    const province = await prisma.province.findFirst({
        where: { name: 'Sumatera Utara' },
    });

    if (!province) {
        console.error('❌ Province Sumatera Utara not found. Seed it first.');
        return;
    }

    for (const name of cityNames) {
        await prisma.city.upsert({
            where: {
                name_province_id: {
                    name,
                    province_id: province.id,
                },
            },
            update: { updatedAt: timeLocal.now().toDate() },
            create: {
                name,
                province_id: province.id,
                createdAt: timeLocal.now().toDate()
            },
        });
    }

    console.log('✅ Sumatera Utara City seeded!.');
};