From 156c44c8f6522686635089ecff7a358b4145d545 Mon Sep 17 00:00:00 2001 From: Chocobozzz Date: Thu, 3 Mar 2022 10:23:44 +0100 Subject: Refactor a little bit raw sql builders --- server/models/shared/abstract-run-query.ts | 28 ++++++++++++++++++++++++++++ server/models/shared/index.ts | 1 + 2 files changed, 29 insertions(+) create mode 100644 server/models/shared/abstract-run-query.ts (limited to 'server/models/shared') diff --git a/server/models/shared/abstract-run-query.ts b/server/models/shared/abstract-run-query.ts new file mode 100644 index 000000000..c39b7bcfe --- /dev/null +++ b/server/models/shared/abstract-run-query.ts @@ -0,0 +1,28 @@ +import { QueryTypes, Sequelize, Transaction } from 'sequelize' + +/** + * + * Abstact builder to run video SQL queries + * + */ + +export class AbstractRunQuery { + protected query: string + protected replacements: any = {} + + constructor (protected readonly sequelize: Sequelize) { + + } + + protected runQuery (options: { nest?: boolean, transaction?: Transaction, logging?: boolean } = {}) { + const queryOptions = { + transaction: options.transaction, + logging: options.logging, + replacements: this.replacements, + type: QueryTypes.SELECT as QueryTypes.SELECT, + nest: options.nest ?? false + } + + return this.sequelize.query(this.query, queryOptions) + } +} diff --git a/server/models/shared/index.ts b/server/models/shared/index.ts index 802404555..04528929c 100644 --- a/server/models/shared/index.ts +++ b/server/models/shared/index.ts @@ -1,3 +1,4 @@ +export * from './abstract-run-query' export * from './model-builder' export * from './query' export * from './update' -- cgit v1.2.3