From a6c2dc7b06dfeb45ef1cdad6e06e4ac9e75f4855 Mon Sep 17 00:00:00 2001 From: Redume Date: Tue, 8 Oct 2024 20:15:20 +0300 Subject: [PATCH] =?UTF-8?q?=D0=A2=D0=B5=D0=BF=D0=B5=D1=80=D1=8C=20=D0=BF?= =?UTF-8?q?=D1=80=D0=B8=20=D0=B7=D0=B0=D0=BF=D1=83=D1=81=D0=BA=D0=B5=20?= =?UTF-8?q?=D0=BE=D0=B4=D0=BD=D0=BE=D0=B3=D0=BE=20=D0=B8=D0=B7=20JS=20?= =?UTF-8?q?=D1=81=D0=B5=D1=80=D0=B2=D0=B8=D1=81=D0=BE=D0=B2,=20=D0=B1?= =?UTF-8?q?=D1=83=D0=B4=D0=B5=D1=82=20=D1=81=D0=BE=D0=B7=D0=B4=D0=B0=D0=B2?= =?UTF-8?q?=D0=B0=D1=82=D1=8C=D1=81=D1=8F=20=D1=82=D0=B0=D0=B1=D0=BB=D0=B8?= =?UTF-8?q?=D1=86=D1=8B,=20=D0=B5=D1=81=D0=BB=D0=B8=20=D0=B8=D1=85=20?= =?UTF-8?q?=D0=BD=D0=B5=D1=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- collect-currency/main.js | 2 ++ server/main.js | 2 ++ shared/database/src/create_table.js | 14 ++++++++++++++ 3 files changed, 18 insertions(+) create mode 100644 shared/database/src/create_table.js diff --git a/collect-currency/main.js b/collect-currency/main.js index af828f5..950dc46 100644 --- a/collect-currency/main.js +++ b/collect-currency/main.js @@ -6,6 +6,8 @@ const save_fiat = require('./save_fiat'); const save_crypto = require('./save_crypto'); async function main() { + await require('../shared/database/src/create_table')(); + const config_schedule = config['currency']['collecting']['schedule']; if (!config_schedule) throw new Error('The crontab schedule is not set'); if (!cron.isValidCron(config_schedule, { alias: true })) diff --git a/server/main.js b/server/main.js index 717de6e..1d96bbc 100644 --- a/server/main.js +++ b/server/main.js @@ -2,6 +2,8 @@ const logger = require('../shared/logger/src/main.js'); const config = require('../shared/config/src/main.js')(); const fs = require('fs'); +require('../shared/database/src/create_table.js')(); + const fastify = require('fastify')({ logger: config['server']['log']['print'] ? logger : false, ...(config['server']['ssl']['work'] diff --git a/shared/database/src/create_table.js b/shared/database/src/create_table.js new file mode 100644 index 0000000..c9b0280 --- /dev/null +++ b/shared/database/src/create_table.js @@ -0,0 +1,14 @@ +const fs = require('fs'); +const pool = require('./postgresql.js'); + +async function create_table() { + const schema = fs.readFileSync('../shared/database/data/schema.sql', 'utf8'); + + for (let i = 0; i < schema.split(';').length; i++) { + try { + await pool.query(schema.split(';')[i]); + } catch (err) { continue } + } +} + +module.exports = create_table; \ No newline at end of file