Files
service-user-revenue/src/helpers/orm.ts
wayanrivan 1c5195d986
Some checks failed
Deploy Backend / deploy (push) Has been cancelled
update for revenue dashboard
2026-07-07 09:03:33 +07:00

45 lines
1.0 KiB
TypeScript

import config from "config"
import { DataSource } from "typeorm"
import {
User,
UserActivity,
UserRefreshToken,
UserRole,
} from "entity"
import { ILogObj, Logger } from "tslog"
export class OrmHelper {
static DB: DataSource = null
static setup() {
const log: Logger<ILogObj> = new Logger({ name: "[OrmHelper]", type: "pretty" })
const engine: "mysql" | "postgres" = config.get("database.engine")
OrmHelper.DB = new DataSource({
type: engine,
host: config.get("database.host"),
port: Number(config.get("database.port")),
username: String(config.get("database.username")),
password: String(config.get("database.password")),
database: String(config.get("database.database")),
synchronize: true,
logging: config.get("database.logging"),
entities: [
User, //
UserRole,
UserActivity,
UserRefreshToken,
],
subscribers: [],
migrations: [],
})
OrmHelper.DB.initialize()
.then(() => {
// here you can start to work with your database
})
.catch((error: any) => log.error(error))
}
}