runabot/RUNA/Database/Mongo/guild.py

35 lines
1.3 KiB
Python
Raw Permalink Normal View History

2024-05-09 04:05:22 +00:00
from RUNA.Database.Mongo import MongoDBClient
class MongoGuild:
def __init__(self):
self.client = MongoDBClient().connect()
self.guild = self.client["guild"]
async def get_guild(self, guild_id):
return await self.guild.find_one({"_id": guild_id})
async def register_guild(self, guild_id, guild_name):
return await self.guild.insert_one(
{"_id": guild_id, "name": guild_name, "art_point": 0, "use_art": 0, "settings": {}})
async def leave_guild(self, guild_id):
return await self.guild.delete_one({"_id": guild_id})
async def update_guild_name(self, guild_id, guild_name):
return await self.guild.update_one({"_id": guild_id}, {"$set": {"name": guild_name}})
async def update_guild_art_point(self, guild_id, art_point):
return await self.guild.update_one({"_id": guild_id}, {"$set": {"art_point": art_point}})
async def decrease_art_point(self, guild_id: int):
guild = await self.get_guild(guild_id)
art_point = guild["art_point"]
return await self.update_guild_art_point(guild_id, art_point - 1)
async def increase_art_point(self, guild_id: int):
guild = await self.get_guild(guild_id)
art_point = guild["art_point"]
return await self.update_guild_art_point(guild_id, art_point + 1)