const sqlite3 = require('sqlite3');
const crypto = require('crypto');

// Данные для записи
const data = [
    { "name": "Богданова Л.", "group": "1", "status": "lamb" },
    { "name": "Ботюк Л.", "group": "1", "status": "lamb" },
    { "name": "Ботюк М.", "group": "1", "status": "elder" },
    { "name": "Венгер С.", "group": "1", "status": "lamb" },
    { "name": "Гловюк С.", "group": "1", "status": "lamb" },
    { "name": "Гнатюк П.", "group": "1", "status": "lamb" },
    { "name": "Дуньковська Г.", "group": "1", "status": "lamb" },
    { "name": "Корінь О.", "group": "1", "status": "lamb" },
    { "name": "Медецька Л.", "group": "1", "status": "lamb" },
    { "name": "Меладзе А.", "group": "1", "status": "lamb" },
    { "name": "Меладзе М.", "group": "1", "status": "lamb" },
    { "name": "Нуждіна Н.", "group": "1", "status": "lamb" },
    { "name": "Сидорчук І.", "group": "1", "status": "lamb" },
    { "name": "Сидорчук О.", "group": "1", "status": "elder" },
    { "name": "Смірнов Б.", "group": "1", "status": "lamb" },
    { "name": "Смірнова В.", "group": "1", "status": "lamb" },
    { "name": "Смірнов Л.", "group": "1", "status": "lamb" },
    { "name": "Ткаченко Н.", "group": "1", "status": "lamb" },
    { "name": "Медецький Р.", "group": "1", "status": "lamb" },
    { "name": "Заболотний В.", "group": "1", "status": "lamb" },
    { "name": "Власюк Т.", "group": "2", "status": "lamb" },
    { "name": "Демків В.", "group": "2", "status": "lamb" },
    { "name": "Іващенко А.", "group": "2", "status": "lamb" },
    { "name": "Кіналь Г.", "group": "2", "status": "lamb" },
    { "name": "Кіналь М.", "group": "2", "status": "lamb" },
    { "name": "Кіналь Т.", "group": "2", "status": "lamb" },
    { "name": "Ковчук Д.", "group": "2", "status": "lamb" },
    { "name": "Кушнірук Н.", "group": "2", "status": "lamb" },
    { "name": "Муц М.", "group": "2", "status": "elder" },
    { "name": "Муц Н.", "group": "2", "status": "lamb" },
    { "name": "Муц О.", "group": "2", "status": "lamb" },
    { "name": "Подвірна О.", "group": "2", "status": "lamb" },
    { "name": "Позовиков М.", "group": "2", "status": "elder" },
    { "name": "Позовиков О.", "group": "2", "status": "lamb" },
    { "name": "Позовикова Е.", "group": "2", "status": "lamb" },
    { "name": "Позовикова Л.", "group": "2", "status": "lamb" },
    { "name": "Позовикова М.", "group": "2", "status": "lamb" },
    { "name": "Резніченко А.", "group": "2", "status": "lamb" },
    { "name": "Резніченко В.", "group": "2", "status": "lamb" },
    { "name": "Хоптій Л.", "group": "2", "status": "lamb" },
    { "name": "Авдєєва В.", "group": "3", "status": "lamb" },
    { "name": "Авдєєв П.", "group": "3", "status": "lamb" },
    { "name": "Гречило Л.", "group": "3", "status": "lamb" },
    { "name": "Гушатей З.", "group": "3", "status": "lamb" },
    { "name": "Дворянська Н.", "group": "3", "status": "lamb" },
    { "name": "Дворянський М.", "group": "3", "status": "lamb" },
    { "name": "Дворянська М.", "group": "3", "status": "lamb" },
    { "name": "Дуньковська Ол.", "group": "3", "status": "lamb" },
    { "name": "Дуньковський В.", "group": "3", "status": "elder" },
    { "name": "Дуньковська Л.", "group": "3", "status": "lamb" },
    { "name": "Кавюк Н.", "group": "3", "status": "lamb" },
    { "name": "Ковалюк Е.", "group": "3", "status": "lamb" },
    { "name": "Ковалюк С.", "group": "3", "status": "lamb" },
    { "name": "Липа А.", "group": "3", "status": "lamb" },
    { "name": "Липа Н.", "group": "3", "status": "lamb" },
    { "name": "Музика С.", "group": "3", "status": "elder" },
    { "name": "Музика Св.", "group": "3", "status": "lamb" },
    { "name": "Філь Н.", "group": "3", "status": "lamb" },
    { "name": "Червенко Л.", "group": "3", "status": "lamb" },
    { "name": "Майка М.", "group": "3", "status": "lamb" },
    { "name": "Петрович І.", "group": "3", "status": "lamb" },
    { "name": "Буняк Н.", "group": "4", "status": "lamb" },
    { "name": "Буярська А.", "group": "4", "status": "lamb" },
    { "name": "Буярська Н.", "group": "4", "status": "lamb" },
    { "name": "Буярський М.", "group": "4", "status": "elder" },
    { "name": "Грищук Т.", "group": "4", "status": "lamb" },
    { "name": "Карелін І.", "group": "4", "status": "lamb" },
    { "name": "Кареліна Ір.", "group": "4", "status": "lamb" },
    { "name": "Кареліна С.", "group": "4", "status": "lamb" },
    { "name": "Ковальчук Н.", "group": "4", "status": "lamb" },
    { "name": "Ковальчук Р.", "group": "4", "status": "lamb" },
    { "name": "Ковчук Р.", "group": "4", "status": "lamb" },
    { "name": "Резніченко Т.", "group": "4", "status": "lamb" },
    { "name": "Сергієнко О.", "group": "4", "status": "lamb" },
    { "name": "Сергієнко С.", "group": "4", "status": "lamb" },
    { "name": "Стойкевич М.", "group": "4", "status": "lamb" },
    { "name": "Чапайло Г.", "group": "4", "status": "lamb" },
    { "name": "Шептицька В.", "group": "4", "status": "lamb" },
    { "name": "Шептицький І.", "group": "4", "status": "lamb" },
    { "name": "Благов Я.", "group": "5", "status": "lamb" },
    { "name": "Благова П.", "group": "5", "status": "lamb" },
    { "name": "Богів Г.", "group": "5", "status": "lamb" },
    { "name": "Богів Т.", "group": "5", "status": "lamb" },
    { "name": "Галка А.", "group": "5", "status": "lamb" },
    { "name": "Домбрович О.", "group": "5", "status": "lamb" },
    { "name": "Кавюк А.", "group": "5", "status": "lamb" },
    { "name": "Кавюк В.", "group": "5", "status": "elder" },
    { "name": "Кузнєцова Н.", "group": "5", "status": "lamb" },
    { "name": "Луців І.", "group": "5", "status": "lamb" },
    { "name": "Луців О.", "group": "5", "status": "lamb" },
    { "name": "Сиротюк В.", "group": "5", "status": "lamb" },
    { "name": "Сиротюк О.", "group": "5", "status": "lamb" },
    { "name": "Солонинка С.", "group": "5", "status": "lamb" },
    { "name": "Ульянич І.", "group": "5", "status": "lamb" },
    { "name": "Ульянич О.", "group": "5", "status": "lamb" },
    { "name": "Шмигельська С.", "group": "5", "status": "lamb" },
    { "name": "Сидорчук Т.", "group": "5", "status": "lamb" },
    { "name": "Білоліпецький І.", "group": "6", "status": "lamb" },
    { "name": "Винниченко Г.", "group": "6", "status": "lamb" },
    { "name": "Воронцов Д.", "group": "6", "status": "lamb" },
    { "name": "Дуньковська О.", "group": "6", "status": "lamb" },
    { "name": "Загурська О.", "group": "6", "status": "lamb" },
    { "name": "Іваненко К.", "group": "6", "status": "lamb" },
    { "name": "Кравчук Н.", "group": "6", "status": "lamb" },
    { "name": "Кузюк В.", "group": "6", "status": "lamb" },
    { "name": "Кузюк С.", "group": "6", "status": "lamb" },
    { "name": "Маняхіна А.", "group": "6", "status": "lamb" },
    { "name": "Мельник Н.", "group": "6", "status": "lamb" },
    { "name": "Мінтенко М.", "group": "6", "status": "lamb" },
    { "name": "Мінтенко Н.", "group": "6", "status": "lamb" },
    { "name": "Наворинська Н.", "group": "6", "status": "lamb" },
    { "name": "Носевич І.", "group": "6", "status": "lamb" },
    { "name": "Носевич Т.", "group": "6", "status": "lamb" },
    { "name": "Страшок М.", "group": "6", "status": "elder" },
    { "name": "Страшок О.", "group": "6", "status": "lamb" },
    { "name": "Мельник О.", "group": "6", "status": "lamb" },
    { "name": "Бугайов Д.", "group": "7", "status": "lamb" },
    { "name": "Гергель Л.", "group": "7", "status": "lamb" },
    { "name": "Гергель О.", "group": "7", "status": "lamb" },
    { "name": "Горун А.", "group": "7", "status": "lamb" },
    { "name": "Ковчук Л.", "group": "7", "status": "lamb" },
    { "name": "Ковчук Н.", "group": "7", "status": "lamb" },
    { "name": "Михайлів С.", "group": "7", "status": "lamb" },
    { "name": "Музика І.", "group": "7", "status": "lamb" },
    { "name": "Музика О.", "group": "7", "status": "lamb" },
    { "name": "Наворинський Р.", "group": "7", "status": "lamb" },
    { "name": "Парила І.", "group": "7", "status": "lamb" },
    { "name": "Резніченко А.", "group": "7", "status": "elder" },
    { "name": "Резніченко В.", "group": "7", "status": "lamb" },
    { "name": "Семчишин Ф.", "group": "7", "status": "elder" },
    { "name": "Сувалко В.", "group": "7", "status": "elder" },
    { "name": "Сувалко Н.", "group": "7", "status": "lamb" },
    { "name": "Якубович Л.", "group": "7", "status": "lamb" }
];

// Подключение к базе данных (или создание, если не существует)
const db = new sqlite3.Database('../database.sqlite', (err) => {
    if (err) {
        console.error('Ошибка при подключении к БД:', err.message);
    } else {
        console.log('Подключение к SQLite успешно');
    }
});

// Вставка данных
const insertData = () => {
    const stmt = db.prepare("INSERT INTO sheep (name, group_id, appointment, hash) VALUES (?, ?, ?, ?)");
    data.forEach(user => {
        stmt.run(user.name, user.group, user.status, crypto.randomUUID());
    });
    stmt.finalize();
    console.log('Данные успешно записаны');
};

// Запуск вставки данных после создания таблицы
insertData();

// Закрытие соединения с БД
db.close((err) => {
    if (err) {
        console.error('Ошибка при закрытии БД:', err.message);
    } else {
        console.log('Соединение с БД закрыто');
    }
});