diff --git a/src/services/databases/databases.service.ts b/src/services/databases/databases.service.ts new file mode 100644 index 0000000..27d3d30 --- /dev/null +++ b/src/services/databases/databases.service.ts @@ -0,0 +1,34 @@ +import {MariadbService} from "@services/databases/mariadb.service"; +import {MongodbService} from "@services/databases/mongodb.service"; +import {LogsUtils} from "@utils/logs.util"; + +interface MariaDbStatusResult { + fieldCount: number; + affectedRows: number; + insertId: number; + info: string; + serverStatus: number; + warningStatus: number; + changedRows: number; +} + +class DatabasesService { + private readonly _appName; + private readonly maria: MariadbService; + private readonly mongo: MongodbService; + private readonly logs: LogsUtils; + constructor(appName?: string) { + this._appName = appName || 'App'; + this.maria = new MariadbService(this._appName + ' DbInteractions'); + this.mongo = new MongodbService(this._appName + ' DbInteractions'); + this.logs = new LogsUtils(this._appName + ' DbInteractions'); + } + + async getAllUsers() { + const result = await this.maria.query("SELECT * FROM users"); + this.logs.debug('Fetching users from database', result) + return result; + } +} + +export const justForTesting = new DatabasesService('OnlyDevs') \ No newline at end of file