feat(aurora): added a Moderation model
This commit is contained in:
parent
c618f9be72
commit
c0969ea947
5 changed files with 467 additions and 293 deletions
|
@ -9,6 +9,7 @@
|
|||
"disabled": false,
|
||||
"min_bot_version": "3.5.0",
|
||||
"min_python_version": [3, 10, 0],
|
||||
"requirements": ["pydantic"],
|
||||
"tags": [
|
||||
"mod",
|
||||
"moderate",
|
||||
|
|
62
aurora/models.py
Normal file
62
aurora/models.py
Normal file
|
@ -0,0 +1,62 @@
|
|||
from typing import Dict, List, Optional
|
||||
|
||||
|
||||
from discord import Guild
|
||||
from pydantic import BaseModel
|
||||
from utilities.database import connect
|
||||
|
||||
|
||||
class Moderation(BaseModel):
|
||||
moderation_id: int
|
||||
timestamp: int
|
||||
moderation_type: str
|
||||
target_type: str
|
||||
target_id: int
|
||||
moderator_id: int
|
||||
resolved: bool
|
||||
expired: bool
|
||||
duration: str
|
||||
end_timestamp: int
|
||||
reason: str
|
||||
changes: List[Dict]
|
||||
metadata: Dict
|
||||
resolved_by: Optional[int] = None
|
||||
resolve_reason: Optional[str] = None
|
||||
role_id: Optional[int] = None
|
||||
|
||||
def __str__(self):
|
||||
return f"{self.moderation_type} {self.target_type} {self.target_id} {self.reason}"
|
||||
|
||||
async def from_sql(self, moderation_id: int, guild: Guild):
|
||||
""""""
|
||||
database = connect()
|
||||
cursor = database.cursor()
|
||||
|
||||
query = f"SELECT * FROM moderation_{guild.id} WHERE moderation_id = ?;"
|
||||
cursor.execute(query, (moderation_id,))
|
||||
result = cursor.fetchone()
|
||||
|
||||
cursor.close()
|
||||
database.close()
|
||||
|
||||
if result:
|
||||
(
|
||||
self.moderation_id,
|
||||
self.timestamp,
|
||||
self.moderation_type,
|
||||
self.target_type,
|
||||
self.target_id,
|
||||
self.moderator_id,
|
||||
self.role_id,
|
||||
self.duration,
|
||||
self.end_timestamp,
|
||||
self.reason,
|
||||
self.resolved,
|
||||
self.resolved_by,
|
||||
self.resolve_reason,
|
||||
self.expired,
|
||||
self.changes,
|
||||
self.metadata,
|
||||
) = result[0:16]
|
||||
|
||||
return self
|
Loading…
Add table
Add a link
Reference in a new issue