mirror of
https://github.com/avipatilpro/FileStreamBot.git
synced 2026-01-15 14:22:53 -03:00
37 lines
942 B
Python
37 lines
942 B
Python
|
|
|
|
import datetime
|
|
import motor.motor_asyncio
|
|
|
|
|
|
class Database:
|
|
def __init__(self, uri, database_name):
|
|
self._client = motor.motor_asyncio.AsyncIOMotorClient(uri)
|
|
self.db = self._client[database_name]
|
|
self.col = self.db.users
|
|
|
|
def new_user(self, id):
|
|
return dict(
|
|
id=id,
|
|
join_date=datetime.date.today().isoformat()
|
|
)
|
|
|
|
async def add_user(self, id):
|
|
user = self.new_user(id)
|
|
await self.col.insert_one(user)
|
|
|
|
async def is_user_exist(self, id):
|
|
user = await self.col.find_one({'id': int(id)})
|
|
return True if user else False
|
|
|
|
async def total_users_count(self):
|
|
count = await self.col.count_documents({})
|
|
return count
|
|
|
|
async def get_all_users(self):
|
|
all_users = self.col.find({})
|
|
return all_users
|
|
|
|
async def delete_user(self, user_id):
|
|
await self.col.delete_many({'id': int(user_id)})
|