feat(database): add fun logging to database

This commit is contained in:
smyalygames
2023-03-07 15:04:26 +00:00
parent c8521d0c06
commit 60c4b8f0f3
3 changed files with 138 additions and 0 deletions

91
src/utils/database/fun.ts Normal file
View File

@@ -0,0 +1,91 @@
import { container } from '@sapphire/framework';
import type { Snowflake } from 'discord.js';
// Balance
export async function countTotal(
senderId: Snowflake,
type: string,
receiverId: Snowflake | undefined = undefined,
) {
const result = await container.database.funLog.count({
where: {
sendUserId: senderId,
receiveUserId: receiverId,
type: {
name: type,
},
},
});
return result;
}
export async function addFunLog(
senderId: Snowflake,
type: string,
receiverId: Snowflake | undefined = undefined,
) {
if (receiverId === undefined) {
await container.database.funLog.create({
data: {
sendUser: {
connectOrCreate: {
where: {
id: senderId,
},
create: {
id: senderId,
},
},
},
type: {
connectOrCreate: {
where: {
name: type,
},
create: {
name: type,
},
},
},
},
});
return;
}
await container.database.funLog.create({
data: {
sendUser: {
connectOrCreate: {
where: {
id: senderId,
},
create: {
id: senderId,
},
},
},
receiveUser: {
connectOrCreate: {
where: {
id: receiverId,
},
create: {
id: receiverId,
},
},
},
type: {
connectOrCreate: {
where: {
name: type,
},
create: {
name: type,
},
},
},
},
});
}