first commit 🎉
This commit is contained in:
@@ -0,0 +1,52 @@
|
||||
import { db } from '~/db'
|
||||
|
||||
export default abstract class Query {
|
||||
static async listUser() {
|
||||
const user = await db.query.users.findMany({
|
||||
where: (u, { isNull }) => isNull(u.deletedAt),
|
||||
})
|
||||
return user
|
||||
}
|
||||
|
||||
static async getUserById(id: number) {
|
||||
const user = await db.query.users.findFirst({
|
||||
columns: {
|
||||
deletedAt: false,
|
||||
},
|
||||
where: (u, { and, eq, isNull }) => and(
|
||||
eq(u.id, id),
|
||||
isNull(u.deletedAt),
|
||||
),
|
||||
})
|
||||
|
||||
return user
|
||||
}
|
||||
|
||||
static async getUserByEmail(email: string) {
|
||||
const user = await db.query.users.findFirst({
|
||||
columns: {
|
||||
deletedAt: false,
|
||||
},
|
||||
where: (u, { and, eq, isNull }) => and(
|
||||
eq(u.email, email),
|
||||
isNull(u.deletedAt),
|
||||
),
|
||||
})
|
||||
|
||||
return user
|
||||
}
|
||||
|
||||
static async getUserByName(name: string) {
|
||||
const user = await db.query.users.findFirst({
|
||||
columns: {
|
||||
deletedAt: false,
|
||||
},
|
||||
where: (u, { and, eq, isNull }) => and(
|
||||
eq(u.name, name),
|
||||
isNull(u.deletedAt),
|
||||
),
|
||||
})
|
||||
|
||||
return user
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user