35 lines
1.3 KiB
Python
35 lines
1.3 KiB
Python
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)
|
|
|