Загрузка данных


const sqlite3 = require('sqlite3').verbose();
const path = require('path');

// Путь к вашей базе данных
let projectPath = [[PROJECT_PATH]];
const dbPath = path.join(projectPath, 'TelegramEngineDB.db');
const db = new sqlite3.Database(dbPath);

const sqlQueries = [
`PRAGMA foreign_keys = OFF;`,
`BEGIN TRANSACTION;`,

`CREATE TABLE _01_1_Менеджер_аккаунтов (
    ACCOUNT_ID             INTEGER PRIMARY KEY,
    PHONE                  INTEGER,
    USERNAME               TEXT,
    FIRST_NAME             TEXT,
    LAST_NAME              TEXT,
    BIO                    TEXT,
    PHOTO                  INTEGER,
    PREMIUM                INTEGER,
    STORIES                INTEGER,
    TIME                   TEXT,
    ACCOUNT_WORKING_STATUS TEXT,
    IP_PROXY               TEXT,
    PORT_PROXY             INTEGER,
    LOGIN_PROXY            TEXT,
    PASSWORD_PROXY         TEXT,
    GET_URL                TEXT,
    RESPONSE_URL           TEXT,
    PATCH                  TEXT,
    CHANNEL_LINK           TEXT,
    CHANNEL_NAME           TEXT,
    CHANNEL_DESCRIPTION    TEXT,
    POST                   TEXT,
    NOTE                   TEXT
);`,

`CREATE TABLE IF NOT EXISTS _01_2_Менеджер_аккаунтов_список_прокси (
    IP_PROXY TEXT,
    PORT_PROXY INTEGER,
    LOGIN_PROXY TEXT,
    PASSWORD_PROXY TEXT,
    GET_URL TEXT,
    STATUS TEXT,
    N INTEGER PRIMARY KEY
);`,

`CREATE TABLE IF NOT EXISTS _01_3_Менеджер_аккаунтов_чаты_каналы_на_аккаунтах (
    ACCOUNT_ID INTEGER,
    GROUP_ID INTEGER,
    USERNAME TEXT,
    TITLE TEXT,
    TYPE TEXT,
    ACCOUNT_WORK_TIME TEXT
);`,

`CREATE TABLE IF NOT EXISTS _01_4_Менеджер_аккаунтов_контакты (
    USERNAME_PHONE TEXT PRIMARY KEY,
    TASK TEXT
);`,

`CREATE TABLE IF NOT EXISTS _01_5_Менеджер_аккаунтов_контакты_результаты (
    ACCOUNT_ID INTEGER,
    USERNAME TEXT,
    FIRST_NAME TEXT,
    PHONE TEXT,
    USER_ID TEXT,
    TASK TEXT,
    ACCOUNT_WORK_TIME TEXT
);`,

`CREATE TABLE IF NOT EXISTS _02_1_Массовая_отписка_результаты (
    ACCOUNT_ID INTEGER,
    TITLE TEXT,
    TIME TEXT
);`,

`CREATE TABLE IF NOT EXISTS _03_1_Поиск_чатов_каналов_ключевые_слова (
    KEY TEXT PRIMARY KEY,
    TASK TEXT
);`,

`CREATE TABLE IF NOT EXISTS _03_2_Поиск_чатов_каналов_результаты (
    ACCOUNT_ID INTEGER,
    CHANEL_GROUP_ID INTEGER PRIMARY KEY,
    CHANEL_HASH INTEGER,
    TITLE TEXT,
    URL TEXT,
    USER_COUNT INTEGER,
    TYPE TEXT,
    KEY TEXT,
    ACCOUNT_WORK_TIME TEXT
);`,

`CREATE TABLE IF NOT EXISTS _04_1_Парсер_пользователей_ссылки (
    URL TEXT PRIMARY KEY,
    NAME TEXT,
    TASK TEXT
);`,

`CREATE TABLE IF NOT EXISTS _04_2_Парсер_пользователей_результаты (
    ACCOUNT_ID INTEGER,
    USER_ID INTEGER PRIMARY KEY,
    GROUP_ID INTEGER,
    PHONE INTEGER,
    USERNAME TEXT,
    FIRST_NAME TEXT,
    LAST_NAME TEXT,
    USER_ACTIVITY INTEGER,
    BIO TEXT,
    BIO_CHANNEL_TITLE TEXT,
    BIO_CHANNEL_USERNAME TEXT,
    BIRTHDAY TEXT,
    GENDER TEXT,
    PHOTO INTEGER,
    PREMIUM INTEGER,
    STORIES INTEGER,
    STATUS TEXT,
    TIME TEXT,
    GROUP_CHANNEL_TITLE TEXT,
    GROUP_CHANNEL_URL TEXT,
    TYPE TEXT,
    ACCOUNT_WORK_TIME TEXT
);`,

`CREATE TABLE IF NOT EXISTS _06_1_Чекер_чатов_каналов_ссылки (
    URL TEXT PRIMARY KEY,
    TASK TEXT
);`,

`CREATE TABLE IF NOT EXISTS _06_2_Чекер_чатов_каналов_результаты (
    ACCOUNT_ID INTEGER,
    CHAT_CHANEL_ID INTEGER PRIMARY KEY,
    TITLE INTEGER,
    USER_COUNT INTEGER,
    URL TEXT,
    POST_DATE TEXT,
    BIO TEXT,
    COMMENTS INTEGER,
    TYPE TEXT,
    ACCOUNT_WORK_TIME TEXT
);`,

`CREATE TABLE IF NOT EXISTS _07_1_Сканер_постов_на_каналах_ссылки (
    URL TEXT PRIMARY KEY,
    TASK TEXT
);`,

`CREATE TABLE IF NOT EXISTS _07_2_Сканер_постов_на_каналах_ключевые_слова (
    KEY TEXT PRIMARY KEY
);`,

`CREATE TABLE IF NOT EXISTS _07_3_Сканер_постов_на_каналах_результаты (
    ACCOUNT_ID INTEGER,
    CHANEL_ID TEXT,
    TITLE TEXT,
    URL TEXT,
    POST_TOTAL INTEGER,
    POST_URL TEXT PRIMARY KEY,
    POST_DATE TEXT,
    COMMENTS TEXT,
    KEY TEXT,
    TEXT TEXT,
    ACCOUNT_WORK_TIME TEXT
);`,

`CREATE TABLE IF NOT EXISTS _08_1_Подписка_на_чаты_каналы_ссылки (
    URL TEXT PRIMARY KEY,
    TASK TEXT
);`,

`CREATE TABLE IF NOT EXISTS _08_2_Подписка_на_чаты_каналы_результаты (
    ACCOUNT_ID INTEGER,
    CHAT_CHANEL_ID INTEGER,
    TITLE TEXT,
    URL TEXT,
    INFO TEXT,
    ACCOUNT_WORK_TIME TEXT
);`,

`CREATE TABLE IF NOT EXISTS _09_1_Рассыльщик_в_обсуждения_ссылки (
    POST_URL TEXT PRIMARY KEY,
    TASK TEXT
);`,

`CREATE TABLE IF NOT EXISTS _09_2_Рассыльщик_в_обсуждения_сообщения (
    MESSAGE TEXT PRIMARY KEY
);`,

`CREATE TABLE IF NOT EXISTS _09_3_Рассыльщик_в_обсуждения_результаты (
    ACCOUNT_ID INTEGER,
    POST_URL TEXT,
    MESSAGE_URL TEXT,
    MESSAGE_DATE TEXT,
    MESSAGE_TEXT TEXT,
    ACCOUNT_WORK_TIME TEXT
);`,

`CREATE TABLE IF NOT EXISTS _10_1_Рассыльщик_в_чаты_ссылки (
    CHAT_URL TEXT PRIMARY KEY,
    TASK TEXT
);`,

`CREATE TABLE IF NOT EXISTS _10_2_Рассыльщик_в_чаты_сообщения (
    MESSAGE TEXT PRIMARY KEY
);`,

`CREATE TABLE IF NOT EXISTS _10_3_Рассыльщик_в_чаты_результаты (
    ACCOUNT_ID INTEGER,
    CHAT_URL TEXT,
    MESSAGE_URL TEXT,
    MESSAGE_DATE TEXT,
    MESSAGE_TEXT TEXT,
    ACCOUNT_WORK_TIME TEXT
);`,

`CREATE TABLE IF NOT EXISTS _11_1_Цитатор_комментов_в_обсуждениях_ссылки (
    URL TEXT PRIMARY KEY,
    TASK TEXT
);`,

`CREATE TABLE IF NOT EXISTS _11_2_Цитатор_комментов_в_обсуждениях_ключевые_слова (
    KEY_IN_MESSAGE TEXT PRIMARY KEY
);`,

`CREATE TABLE IF NOT EXISTS _11_3_Цитатор_комментов_в_обсуждениях_сообщения (
    MESSAGE TEXT PRIMARY KEY
);`,

`CREATE TABLE IF NOT EXISTS _11_4_Цитатор_комментов_в_обсуждениях_результаты (
    ACCOUNT_ID INTEGER,
    URL TEXT,
    SENDER_MESSAGE_ID TEXT,
    MESSAGE_URL TEXT,
    MESSAGE_DATE TEXT,
    KEY_IN_MESSAGE TEXT,
    MESSAGE_TEXT TEXT,
    MESSAGE_REPLY TEXT,
    ACCOUNT_WORK_TIME TEXT
);`,

`CREATE TABLE IF NOT EXISTS _12_1_Цитатор_комментов_в_чатах_ссылки (
    URL TEXT PRIMARY KEY,
    TASK TEXT
);`,

`CREATE TABLE IF NOT EXISTS _12_2_Цитатор_комментов_в_чатах_ключевые_слова (
    KEY_IN_MESSAGE TEXT PRIMARY KEY
);`,

`CREATE TABLE IF NOT EXISTS _12_3_Цитатор_комментов_в_чатах_сообщения (
    MESSAGE TEXT PRIMARY KEY
);`,

`CREATE TABLE IF NOT EXISTS _12_4_Цитатор_комментов_в_чатах_результаты (
    ACCOUNT_ID INTEGER,
    URL TEXT,
    SENDER_MESSAGE_ID TEXT,
    MESSAGE_URL TEXT,
    MESSAGE_DATE TEXT,
    KEY_IN_MESSAGE TEXT,
    MESSAGE_TEXT TEXT,
    MESSAGE_REPLY TEXT,
    ACCOUNT_WORK_TIME TEXT
);`,

`CREATE TABLE IF NOT EXISTS _13_1_Лайкер_сообщений_в_чатах_ссылки (
    URL TEXT PRIMARY KEY,
    TASK TEXT
);`,

`CREATE TABLE IF NOT EXISTS _13_2_Лайкер_сообщений_в_чатах_ключевые_слова (
    KEY_IN_MESSAGE TEXT PRIMARY KEY
);`,

`CREATE TABLE IF NOT EXISTS _13_3_Лайкер_сообщений_в_чатах_результаты (
    ACCOUNT_ID INTEGER,
    URL TEXT,
    SENDER_MESSAGE_ID TEXT,
    MESSAGE_URL TEXT,
    MESSAGE_DATE TEXT,
    KEY_IN_MESSAGE TEXT,
    MESSAGE_TEXT TEXT,
    MESSAGE_REPLY TEXT,
    ACCOUNT_WORK_TIME TEXT
);`,

`CREATE TABLE IF NOT EXISTS _14_1_Масслукинг_сторис_список (
    USERNAME TEXT,
    ACCOUNT_ID INTEGER,
    TASK TEXT,
    ACCOUNT_WORK_TIME TEXT
);`,

`CREATE TABLE IF NOT EXISTS _14_2_Масстегинг_сторис_список (
    USERNAME TEXT PRIMARY KEY,
    TASK TEXT
);`,

`CREATE TABLE IF NOT EXISTS _14_3_Масстегинг_сторис_описание (
    MESSAGE_STORIES TEXT
);`,

`CREATE TABLE IF NOT EXISTS _14_4_Масстегинг_сторис_результаты (
    ACCOUNT_ID INTEGER,
    TASK TEXT,
    FILE_NAME TEXT,
    MESSAGE TEXT,
    USERS TEXT,
    ACCOUNT_WORK_TIME TEXT
);`,

`CREATE TABLE IF NOT EXISTS _15_1_Рассыльщик_Дозвонщик_в_лс_список (
    USERNAME TEXT,
    TASK TEXT,
    N INTEGER PRIMARY KEY
);`,

`CREATE TABLE IF NOT EXISTS _15_2_Рассылка_в_лс_сообщения (
    MESSAGE TEXT PRIMARY KEY
);`,

`CREATE TABLE IF NOT EXISTS _15_3_Рассыльщик_Дозвонщик_в_лс_результаты (
    ACCOUNT_ID INTEGER,
    USERNAME TEXT,
    USER_ID INTEGER,
    MESSAGE TEXT,
    TASK TEXT,
    ACCOUNT_WORK_TIME TEXT
);`,

`CREATE TABLE IF NOT EXISTS _16_1_Автоответчик_пересыльщик_список_чатов (
    CHAT_URL TEXT
);`,

`CREATE TABLE IF NOT EXISTS _16_2_Автоответчик_пересыльщик_автоответы (
    KEY TEXT PRIMARY KEY,
    SEND_MESSAGE TEXT
);`,

`CREATE TABLE IF NOT EXISTS _16_3_Автоответчик_пересыльщик_автоответы_результаты (
    ACCOUNT_ID INTEGER,
    USER_ID INTEGER,
    MESSAGE_ID INTEGER,
    SEND_ID TEXT,
    KEY TEXT,
    IN_MESSAGE TEXT,
    SEND_MESSAGE TEXT,
    ACCOUNT_WORK_TIME TEXT
);`,

`CREATE TABLE IF NOT EXISTS _17_1_Инвайтер_список_пользователей (
    USERNAME TEXT PRIMARY KEY,
    TASK TEXT
);`,

`CREATE TABLE IF NOT EXISTS _17_2_Инвайтер_ссылки_на_группы (
    GROUP_URL TEXT,
    TASK TEXT
);`,

`CREATE TABLE IF NOT EXISTS _17_3_Инвайтер_список_админов_для_назначения (
    USERNAME TEXT PRIMARY KEY,
    TASK TEXT
);`,

`CREATE TABLE IF NOT EXISTS _17_4_Инвайтер_результаты (
    ACCOUNT_ID INTEGER,
    USERNAME TEXT,
    USER_ID INTEGER,
    GROUP_URL TEXT,
    TASK TEXT,
    ACCOUNT_WORK_TIME TEXT
);`,

`CREATE TABLE IF NOT EXISTS _18_1_Лидхантер_ключевые_слова (
    KEY TEXT PRIMARY KEY
);`,

`CREATE TABLE IF NOT EXISTS _18_2_Лидхантер_ссылки_на_принимающие_группы (
    GROUP_URL TEXT
);`,

`CREATE TABLE IF NOT EXISTS _19_1_Комментинг_ключевые_слова_в_постах (
    KEY TEXT PRIMARY KEY
);`,

`CREATE TABLE IF NOT EXISTS _19_2_Комментинг_cтоп_слова_в_постах (
    KEY TEXT PRIMARY KEY
);`,

`CREATE TABLE IF NOT EXISTS _19_3_Комментинг_cтоп_слова_в_комментариях (
    KEY TEXT PRIMARY KEY
);`,

`CREATE TABLE IF NOT EXISTS _19_4_Комментинг_комментарии (
    COMMENTS TEXT PRIMARY KEY
);`,

`CREATE TABLE IF NOT EXISTS _19_5_Комментинг_отредактированные_комментарии (
    EDIT_COMMENTS TEXT PRIMARY KEY
);`,

`CREATE TABLE IF NOT EXISTS _19_6_Комментинг_результаты (
    ACCOUNT_ID INTEGER,
    TITLE TEXT,
    COMMENT_ID TEXT,
    COMMENT_URL TEXT,
    POST TEXT,
    COMMENT TEXT,
    COMMENT_TIME TEXT,
    EDIT_COMMENT TEXT,
    ACCOUNT_WORK_TIME TEXT
);`,

`CREATE TABLE IF NOT EXISTS _20_1_Тегер_ссылки_на_чаты (
    CHAT_URL TEXT,
    TASK TEXT
);`,

`CREATE TABLE IF NOT EXISTS _20_2_Тегер_сообщения (
    MESSAGE TEXT
);`,

`CREATE TABLE IF NOT EXISTS _20_3_Тегер_результаты (
    ACCOUNT_ID INTEGER,
    CHAT_URL TEXT,
    MESSAGE TEXT,
    ACCOUNT_WORK_TIME TEXT
);`,

`CREATE TABLE _21_1_Личный_канал_пост (
    POST                TEXT,
);`,

`COMMIT TRANSACTION;`,
`PRAGMA foreign_keys = ON;`
];

function createTables(queries) {
  let i = 0;

  function next() {
    if (i >= queries.length) {
      console.log("Все таблицы созданы!");
      db.close();
      return;
    }

    db.run(queries[i], function (err) {
      if (err) {
        console.log(`Ошибка в запросе #${i + 1}: ${err.message}`);
      } else {
        console.log(`OK: запрос #${i + 1}`);
      }
      i++;
      next();
    });
  }

  next();
}

// Запуск
createTables(sqlQueries);