mirror of
https://github.com/yasirarism/MissKatyPyro.git
synced 2025-12-29 17:44:50 +00:00
42 lines
1.1 KiB
Python
42 lines
1.1 KiB
Python
from typing import Dict, List, Union
|
|
|
|
from database import dbname
|
|
|
|
notesdb = dbname["notes"]
|
|
|
|
|
|
async def _get_notes(chat_id: int) -> Dict[str, int]:
|
|
_notes = await notesdb.find_one({"chat_id": chat_id})
|
|
return _notes["notes"] if _notes else {}
|
|
|
|
|
|
async def delete_note(chat_id: int, name: str) -> bool:
|
|
notesd = await _get_notes(chat_id)
|
|
name = name.lower().strip()
|
|
if name in notesd:
|
|
del notesd[name]
|
|
await notesdb.update_one(
|
|
{"chat_id": chat_id},
|
|
{"$set": {"notes": notesd}},
|
|
upsert=True,
|
|
)
|
|
return True
|
|
return False
|
|
|
|
|
|
async def get_note(chat_id: int, name: str) -> Union[bool, dict]:
|
|
name = name.lower().strip()
|
|
_notes = await _get_notes(chat_id)
|
|
return _notes[name] if name in _notes else False
|
|
|
|
|
|
async def get_note_names(chat_id: int) -> List[str]:
|
|
return list(await _get_notes(chat_id))
|
|
|
|
|
|
async def save_note(chat_id: int, name: str, note: dict):
|
|
name = name.lower().strip()
|
|
_notes = await _get_notes(chat_id)
|
|
_notes[name] = note
|
|
|
|
await notesdb.update_one({"chat_id": chat_id}, {"$set": {"notes": _notes}}, upsert=True)
|