From 960e1cdd1a6535bb6986d71fc67420a79be9e415 Mon Sep 17 00:00:00 2001 From: David Arranz Date: Thu, 12 Sep 2024 13:24:12 +0200 Subject: [PATCH] . --- .../sequelize/SequelizeAdapter.ts | 4 +++ server/src/infrastructure/http/server.ts | 2 +- .../infrastructure/sequelize/initStructure.ts | 34 +++++++++++-------- 3 files changed, 25 insertions(+), 15 deletions(-) diff --git a/server/src/contexts/common/infrastructure/sequelize/SequelizeAdapter.ts b/server/src/contexts/common/infrastructure/sequelize/SequelizeAdapter.ts index b77c12f..ba8e4ae 100644 --- a/server/src/contexts/common/infrastructure/sequelize/SequelizeAdapter.ts +++ b/server/src/contexts/common/infrastructure/sequelize/SequelizeAdapter.ts @@ -63,6 +63,10 @@ export class SequelizeAdapter implements ISequelizeAdapter { return this._queryBuilder; } + get connection(): Sequelize { + return this._connection; + } + public startTransaction(): SequelizeBusinessTransactionType { return new SequelizeBusinessTransaction(this._connection); } diff --git a/server/src/infrastructure/http/server.ts b/server/src/infrastructure/http/server.ts index 4adbadb..0b56a9b 100644 --- a/server/src/infrastructure/http/server.ts +++ b/server/src/infrastructure/http/server.ts @@ -107,7 +107,7 @@ const server: http.Server = http try { //firebirdConn.sync().then(() => { sequelizeConn.sync({ force: false, alter: true }).then(() => { - initStructure(sequelizeConn); + initStructure(sequelizeConn.connection); insertUsers(); // Launch server diff --git a/server/src/infrastructure/sequelize/initStructure.ts b/server/src/infrastructure/sequelize/initStructure.ts index a077e14..e18c824 100644 --- a/server/src/infrastructure/sequelize/initStructure.ts +++ b/server/src/infrastructure/sequelize/initStructure.ts @@ -1,14 +1,20 @@ -const createCatalogTableIfNotExists = async (sequelize) => { +import { initLogger } from "@/infrastructure/logger"; +import rTracer from "cls-rtracer"; +import { Sequelize } from "sequelize"; + +const logger = initLogger(rTracer); + +const createCatalogTableIfNotExists = async (sequelize: Sequelize) => { try { // Consulta para verificar si la tabla existe const checkTableQuery = ` SELECT COUNT(*) FROM information_schema.tables WHERE table_schema = DATABASE() - AND table_name = 'catalog'; - `; + AND table_name = 'catalog';`; const [result] = await sequelize.query(checkTableQuery); + const tableExists = result[0]["COUNT(*)"] > 0; if (!tableExists) { @@ -40,14 +46,14 @@ const createCatalogTableIfNotExists = async (sequelize) => { `; await sequelize.query(createTableQuery); - console.log('Tabla "catalog" creada con éxito.'); + logger.debug('Tabla "catalog" creada con éxito.'); } } catch (error) { - console.error('Error al crear la tabla "catalog":', error); + logger.error('Error al crear la tabla "catalog":', error); } }; -const createCatalogTranslationsTableIfNotExists = async (sequelize) => { +const createCatalogTranslationsTableIfNotExists = async (sequelize: Sequelize) => { try { // Consulta para verificar si la tabla existe const checkTableQuery = ` @@ -88,14 +94,14 @@ const createCatalogTranslationsTableIfNotExists = async (sequelize) => { `; await sequelize.query(createTableQuery); - console.log('Tabla "catalog_translations" creada con éxito.'); + logger.debug('Tabla "catalog_translations" creada con éxito.'); } } catch (error) { - console.error('Error al crear la tabla "catalog_translations":', error); + logger.error('Error al crear la tabla "catalog_translations":', error); } }; -const createVCatalogViewIfNotExists = async (sequelize) => { +const createVCatalogViewIfNotExists = async (sequelize: Sequelize) => { try { // Consulta para verificar si la tabla existe const checkViewQuery = ` @@ -129,15 +135,15 @@ const createVCatalogViewIfNotExists = async (sequelize) => { `; await sequelize.query(createViewQuery); - console.log('Vista "v_catalog" creada con éxito.'); + logger.debug('Vista "v_catalog" creada con éxito.'); } } catch (error) { - console.error('Error al crear la vista "v_catalog":', error); + logger.error('Error al crear la vista "v_catalog":', error); } }; export const initStructure = async (sequelize) => { - createCatalogTableIfNotExists(sequelize); - createCatalogTranslationsTableIfNotExists(sequelize); - createVCatalogViewIfNotExists(sequelize); + await createCatalogTableIfNotExists(sequelize); + await createCatalogTranslationsTableIfNotExists(sequelize); + await createVCatalogViewIfNotExists(sequelize); };