Moved all db logic to db functions
This commit is contained in:
32
src/drizzle/functions/guildApps.ts
Normal file
32
src/drizzle/functions/guildApps.ts
Normal file
@@ -0,0 +1,32 @@
|
||||
import { eq, or } from "drizzle-orm"
|
||||
import db from "../db.js"
|
||||
import { guildApps, InsertGuildApp } from "../schema.js"
|
||||
|
||||
type GuildAppDBData = Partial<Pick<InsertGuildApp, "userID" | "uuid">>
|
||||
|
||||
export async function addGuildApp(data: InsertGuildApp) {
|
||||
await db.insert(guildApps).values(data)
|
||||
}
|
||||
|
||||
export async function getGuildApp(data: GuildAppDBData) {
|
||||
const userId = data.userID ?? ""
|
||||
const uuid = data.uuid ?? ""
|
||||
|
||||
return await db.query.guildApps.findFirst({
|
||||
where: (({ userID: dbUserId, uuid: dbUuid }, { eq, or }) =>
|
||||
or(
|
||||
eq(dbUuid, uuid),
|
||||
eq(dbUserId, userId)
|
||||
))
|
||||
})
|
||||
}
|
||||
|
||||
export async function removeGuildApp(data: GuildAppDBData) {
|
||||
const userId = data.userID ?? ""
|
||||
const uuid = data.uuid ?? ""
|
||||
|
||||
await db.delete(guildApps).where(or(
|
||||
eq(guildApps.userID, userId),
|
||||
eq(guildApps.uuid, uuid)
|
||||
))
|
||||
}
|
||||
41
src/drizzle/functions/settings.ts
Normal file
41
src/drizzle/functions/settings.ts
Normal file
@@ -0,0 +1,41 @@
|
||||
import { eq, or } from "drizzle-orm"
|
||||
import db from "../db.js"
|
||||
import { InsertSetting, settings } from "../schema.js"
|
||||
|
||||
type SettingsDBData = Partial<Pick<InsertSetting, "name" | "value">>
|
||||
|
||||
export async function addSetting(data: InsertSetting) {
|
||||
await db.insert(settings).values(data)
|
||||
}
|
||||
|
||||
export async function getSetting(data: SettingsDBData) {
|
||||
const name = data.name ?? ""
|
||||
const value = data.value ?? ""
|
||||
|
||||
return await db.query.settings.findFirst({
|
||||
where: (({ name: dbName, value: dbValue }, { eq, or }) =>
|
||||
or(
|
||||
eq(dbName, name),
|
||||
eq(dbValue, value)
|
||||
))
|
||||
})
|
||||
}
|
||||
|
||||
export async function updateSetting(data: SettingsDBData) {
|
||||
const name = data.name ?? ""
|
||||
const value = data.value
|
||||
|
||||
await db.update(settings).set({
|
||||
value: value
|
||||
}).where(eq(settings.name, name))
|
||||
}
|
||||
|
||||
export async function removeSetting(data: SettingsDBData) {
|
||||
const name = data.name ?? ""
|
||||
const value = data.value ?? ""
|
||||
|
||||
await db.delete(settings).where(or(
|
||||
eq(settings.name, name),
|
||||
eq(settings.value, value)
|
||||
))
|
||||
}
|
||||
32
src/drizzle/functions/staffApps.ts
Normal file
32
src/drizzle/functions/staffApps.ts
Normal file
@@ -0,0 +1,32 @@
|
||||
import { eq, or } from "drizzle-orm"
|
||||
import db from "../db.js"
|
||||
import { InsertStaffApp, staffApps } from "../schema.js"
|
||||
|
||||
type StaffAppDBData = Partial<Pick<InsertStaffApp, "userID" | "uuid">>
|
||||
|
||||
export async function addStaffApp(data: InsertStaffApp) {
|
||||
await db.insert(staffApps).values(data)
|
||||
}
|
||||
|
||||
export async function getStaffApp(data: StaffAppDBData) {
|
||||
const userId = data.userID ?? ""
|
||||
const uuid = data.uuid ?? ""
|
||||
|
||||
return await db.query.staffApps.findFirst({
|
||||
where: (({ userID: dbUserId, uuid: dbUuid }, { eq, or }) =>
|
||||
or(
|
||||
eq(dbUuid, uuid),
|
||||
eq(dbUserId, userId)
|
||||
))
|
||||
})
|
||||
}
|
||||
|
||||
export async function removeStaffApp(data: StaffAppDBData) {
|
||||
const userId = data.userID ?? ""
|
||||
const uuid = data.uuid ?? ""
|
||||
|
||||
await db.delete(staffApps).where(or(
|
||||
eq(staffApps.userID, userId),
|
||||
eq(staffApps.uuid, uuid)
|
||||
))
|
||||
}
|
||||
36
src/drizzle/functions/verifies.ts
Normal file
36
src/drizzle/functions/verifies.ts
Normal file
@@ -0,0 +1,36 @@
|
||||
import { eq, or } from "drizzle-orm"
|
||||
import db from "../db.js"
|
||||
import { InsertVerify, verifies } from "../schema.js"
|
||||
|
||||
type VerifyDBData = Partial<Pick<InsertVerify, "userID" | "uuid">>
|
||||
|
||||
export async function addVerify(data: InsertVerify) {
|
||||
await db.insert(verifies).values(data)
|
||||
}
|
||||
|
||||
export async function getVerify(data: VerifyDBData) {
|
||||
const userId = data.userID ?? ""
|
||||
const uuid = data.uuid ?? ""
|
||||
|
||||
return await db.query.verifies.findFirst({
|
||||
where: (({ userID: dbUserId, uuid: dbUuid }, { eq, or }) =>
|
||||
or(
|
||||
eq(dbUuid, uuid),
|
||||
eq(dbUserId, userId)
|
||||
))
|
||||
})
|
||||
}
|
||||
|
||||
export async function getVerifies() {
|
||||
return await db.query.verifies.findMany()
|
||||
}
|
||||
|
||||
export async function removeVerify(data: VerifyDBData) {
|
||||
const userId = data.userID ?? ""
|
||||
const uuid = data.uuid ?? ""
|
||||
|
||||
await db.delete(verifies).where(or(
|
||||
eq(verifies.userID, userId),
|
||||
eq(verifies.uuid, uuid)
|
||||
))
|
||||
}
|
||||
36
src/drizzle/functions/waitingList.ts
Normal file
36
src/drizzle/functions/waitingList.ts
Normal file
@@ -0,0 +1,36 @@
|
||||
import { eq, or } from "drizzle-orm"
|
||||
import db from "../db.js"
|
||||
import { InsertWaitingList, waitingLists } from "../schema.js"
|
||||
|
||||
type WaitingListDBData = Partial<Pick<InsertWaitingList, "userID" | "uuid">>
|
||||
|
||||
export async function addWaitingList(data: InsertWaitingList) {
|
||||
await db.insert(waitingLists).values(data)
|
||||
}
|
||||
|
||||
export async function getWaitingList(data: WaitingListDBData) {
|
||||
const userId = data.userID ?? ""
|
||||
const uuid = data.uuid ?? ""
|
||||
|
||||
return await db.query.waitingLists.findFirst({
|
||||
where: (({ userID: dbUserId, uuid: dbUuid }, { eq, or }) =>
|
||||
or(
|
||||
eq(dbUuid, uuid),
|
||||
eq(dbUserId, userId)
|
||||
))
|
||||
})
|
||||
}
|
||||
|
||||
export async function getWaitingLists() {
|
||||
return await db.query.waitingLists.findMany()
|
||||
}
|
||||
|
||||
export async function removeWaitingList(data: WaitingListDBData) {
|
||||
const userId = data.userID ?? ""
|
||||
const uuid = data.uuid ?? ""
|
||||
|
||||
await db.delete(waitingLists).where(or(
|
||||
eq(waitingLists.userID, userId),
|
||||
eq(waitingLists.uuid, uuid)
|
||||
))
|
||||
}
|
||||
Reference in New Issue
Block a user