doc-test
This commit is contained in:
38
database.js
38
database.js
@@ -2,6 +2,7 @@ const sqlite3 = require('sqlite3').verbose();
|
||||
const { Pool } = require('pg');
|
||||
const path = require('path');
|
||||
const fs = require('fs');
|
||||
const initDocTables = require('./init-doc-tables');
|
||||
require('dotenv').config();
|
||||
|
||||
// Определяем, какую базу использовать
|
||||
@@ -71,12 +72,49 @@ async function initializeDatabase() {
|
||||
await initializeSQLite();
|
||||
}
|
||||
|
||||
// Инициализируем таблицы для документов (после создания основных таблиц)
|
||||
try {
|
||||
await initDocTables(db);
|
||||
} catch (error) {
|
||||
console.error('⚠️ Ошибка инициализации таблиц документов:', error.message);
|
||||
}
|
||||
|
||||
// Синхронизируем группы пользователей
|
||||
await syncUserGroups();
|
||||
|
||||
return db;
|
||||
}
|
||||
|
||||
function initializeSQLite() {
|
||||
return new Promise((resolve, reject) => {
|
||||
db = new sqlite3.Database(dbPath, (err) => {
|
||||
if (err) {
|
||||
console.error('❌ Ошибка подключения к SQLite:', err.message);
|
||||
reject(err);
|
||||
return;
|
||||
} else {
|
||||
console.log('✅ Подключение к SQLite установлено');
|
||||
console.log('📁 База данных расположена:', dbPath);
|
||||
|
||||
// Используем serialize для последовательного выполнения
|
||||
db.serialize(() => {
|
||||
// Создаем основные таблицы
|
||||
createSQLiteTables();
|
||||
|
||||
// Инициализируем таблицы для документов
|
||||
initDocTables(db);
|
||||
|
||||
// Добавляем группы по умолчанию
|
||||
addDefaultGroups();
|
||||
|
||||
isInitialized = true;
|
||||
resolve(db);
|
||||
});
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
function initializeSQLite() {
|
||||
return new Promise((resolve, reject) => {
|
||||
db = new sqlite3.Database(dbPath, (err) => {
|
||||
|
||||
Reference in New Issue
Block a user