Change to sqlalchemy and orm scheme. Remove classes due to orm. Edit requirements.
This commit is contained in:
@@ -1,79 +0,0 @@
|
||||
"""File for Category class."""
|
||||
|
||||
|
||||
class Category:
|
||||
"""Stores a category's information. Used just to pass sql query information around."""
|
||||
|
||||
def __init__(self, category_info: tuple) -> None:
|
||||
"""
|
||||
Default constructor for Category class. Populates class from sql query results. Tuple order is important.
|
||||
|
||||
Args:
|
||||
name (str): Category's name
|
||||
"""
|
||||
self._id: int = category_info[0]
|
||||
self._name: str = category_info[1]
|
||||
self._group_id: int = category_info[2]
|
||||
self._is_ascending: bool = category_info[3]
|
||||
self._is_time_record: bool = category_info[4]
|
||||
self._is_validated: bool = category_info[5]
|
||||
|
||||
@property
|
||||
def id(self) -> int:
|
||||
"""
|
||||
Getter for id.
|
||||
|
||||
Returns:
|
||||
int: id
|
||||
"""
|
||||
return self._id
|
||||
|
||||
@property
|
||||
def name(self) -> str:
|
||||
"""
|
||||
Getter for name.
|
||||
|
||||
Returns:
|
||||
str: name
|
||||
"""
|
||||
return self._name
|
||||
|
||||
@property
|
||||
def group_id(self) -> int:
|
||||
"""
|
||||
Getter for group id.
|
||||
|
||||
Returns:
|
||||
int: group id
|
||||
"""
|
||||
return self._group_id
|
||||
|
||||
@property
|
||||
def is_ascending(self) -> bool:
|
||||
"""
|
||||
Getter for is ascending.
|
||||
|
||||
Returns:
|
||||
bool: is ascending
|
||||
"""
|
||||
return self._is_ascending
|
||||
|
||||
@property
|
||||
def is_time_record(self) -> bool:
|
||||
"""
|
||||
Getter for is time record.
|
||||
|
||||
Returns:
|
||||
bool: is time record
|
||||
"""
|
||||
return self._is_time_record
|
||||
|
||||
@property
|
||||
def is_validated(self) -> bool:
|
||||
"""
|
||||
Getter for is validated.
|
||||
|
||||
Returns:
|
||||
bool: is validated
|
||||
"""
|
||||
return self._is_validated
|
||||
@@ -1,90 +0,0 @@
|
||||
"""File for Group class."""
|
||||
|
||||
|
||||
class Group:
|
||||
"""Stores a group's information. Used just to pass sql query information around."""
|
||||
|
||||
def __init__(self, group_info: tuple) -> None:
|
||||
"""
|
||||
Default constructor for group class. Populates class from sql query results. Tuple order is important.
|
||||
|
||||
Args:
|
||||
name (str): group's name
|
||||
"""
|
||||
self._id: int = group_info[0]
|
||||
self._name: str = group_info[1]
|
||||
self._channel_id: int = group_info[2]
|
||||
self._guild_id: int = group_info[3]
|
||||
self._message_id: int = group_info[4]
|
||||
self._pad_length: int = group_info[5]
|
||||
self._size = group_info[6]
|
||||
|
||||
@property
|
||||
def id(self) -> int:
|
||||
"""
|
||||
Getter for id
|
||||
|
||||
Returns:
|
||||
int: id
|
||||
"""
|
||||
return self._id
|
||||
|
||||
@property
|
||||
def name(self) -> str:
|
||||
"""
|
||||
Getter for name.
|
||||
|
||||
Returns:
|
||||
str: name
|
||||
"""
|
||||
return self._name
|
||||
|
||||
@property
|
||||
def channel_id(self) -> int:
|
||||
"""
|
||||
Getter for channel id.
|
||||
|
||||
Returns:
|
||||
int: channel id
|
||||
"""
|
||||
return self._channel_id
|
||||
|
||||
@property
|
||||
def guild_id(self) -> int:
|
||||
"""
|
||||
Getter for guild id.
|
||||
|
||||
Returns:
|
||||
int: guild id
|
||||
"""
|
||||
return self._guild_id
|
||||
|
||||
@property
|
||||
def message_id(self) -> int:
|
||||
"""
|
||||
Getter for message id
|
||||
|
||||
Returns:
|
||||
int: message id
|
||||
"""
|
||||
return self._message_id
|
||||
|
||||
@property
|
||||
def pad_length(self) -> int:
|
||||
"""
|
||||
Getter for pad length.
|
||||
|
||||
Returns:
|
||||
int: pad length
|
||||
"""
|
||||
return self._pad_length
|
||||
|
||||
@property
|
||||
def size(self) -> int:
|
||||
"""
|
||||
Getter for size of group.
|
||||
|
||||
Returns:
|
||||
int: Size of group
|
||||
"""
|
||||
return self._size
|
||||
@@ -1,57 +0,0 @@
|
||||
"""File for Guild class."""
|
||||
|
||||
|
||||
class Guild:
|
||||
"""Stores a guild's information. Used just to pass sql query information around."""
|
||||
|
||||
def __init__(self, guild_info: tuple) -> None:
|
||||
"""
|
||||
Default constructor for Guild class. Populates class from sql query results. Tuple order is important.
|
||||
|
||||
Args:
|
||||
guild_id (int): Discord Guild id of new Guild
|
||||
"""
|
||||
self._id: int = guild_info[0]
|
||||
self._submission_channel_id: int = guild_info[1]
|
||||
self._username_length: int = guild_info[2]
|
||||
self._verification_channel_id: int = guild_info[3]
|
||||
|
||||
@property
|
||||
def id(self) -> int:
|
||||
"""
|
||||
Getter for Guild id.
|
||||
|
||||
Returns:
|
||||
int: Guild id
|
||||
"""
|
||||
return self._id
|
||||
|
||||
@property
|
||||
def submission_channel(self) -> int:
|
||||
"""
|
||||
Getter for submission channel id.
|
||||
|
||||
Returns:
|
||||
int: submission channel id
|
||||
"""
|
||||
return self._submission_channel_id
|
||||
|
||||
@property
|
||||
def username_length(self) -> int:
|
||||
"""
|
||||
Getter for username length.
|
||||
|
||||
Returns:
|
||||
int: username length
|
||||
"""
|
||||
return self._username_length
|
||||
|
||||
@property
|
||||
def verification_channel(self) -> int:
|
||||
"""
|
||||
Getter for verification channel id.
|
||||
|
||||
Returns:
|
||||
int: verification channel id
|
||||
"""
|
||||
return self._verification_channel_id
|
||||
@@ -1,96 +0,0 @@
|
||||
"""File for Score classes"""
|
||||
|
||||
import time
|
||||
|
||||
|
||||
class Score:
|
||||
"""Parent class for Scores. Used just to pass sql query information around."""
|
||||
|
||||
# no user setter, it should never change.
|
||||
|
||||
def __init__(self, score_info: tuple) -> None:
|
||||
"""
|
||||
Default constructor for Score class. Populates class from sql query results. Tuple order is important.
|
||||
|
||||
Args:
|
||||
user (str): Score's user
|
||||
value (int): Score's value
|
||||
"""
|
||||
self._user: str = score_info[0]
|
||||
self._value: int = score_info[1]
|
||||
self._category_id: int = score_info[2]
|
||||
|
||||
@property
|
||||
def user(self) -> str:
|
||||
"""
|
||||
Getter for score user.
|
||||
|
||||
Returns:
|
||||
str: user
|
||||
"""
|
||||
return self._user
|
||||
|
||||
@property
|
||||
def value(self) -> int:
|
||||
"""
|
||||
Getter for score value.
|
||||
|
||||
Returns:
|
||||
int: value
|
||||
"""
|
||||
return self._value
|
||||
|
||||
@property
|
||||
def category_id(self) -> int:
|
||||
"""
|
||||
Getter for category id.
|
||||
|
||||
Returns:
|
||||
int: category id
|
||||
"""
|
||||
return self._category_id
|
||||
|
||||
def get_str(self) -> str:
|
||||
"""
|
||||
Gets score's value as string.
|
||||
|
||||
Returns:
|
||||
str: Score's value
|
||||
"""
|
||||
return str(self._value)
|
||||
|
||||
|
||||
class ScoreTime(Score):
|
||||
"""Class for a time based score. Inherits from Score."""
|
||||
|
||||
def __init__(self, score_info: tuple) -> None:
|
||||
"""
|
||||
Default constructor for ScoreTime class. Populates class from sql query results. Tuple order is important.
|
||||
|
||||
Args:
|
||||
user (str): Score's user
|
||||
score (float): Score's value
|
||||
"""
|
||||
super().__init__(score_info)
|
||||
# store time score as seconds.
|
||||
self._score: float = score_info[1]
|
||||
|
||||
@property
|
||||
def value(self) -> float:
|
||||
"""
|
||||
Getter for score value.
|
||||
|
||||
Returns:
|
||||
float: value
|
||||
"""
|
||||
return self._score
|
||||
|
||||
def get_str(self) -> str:
|
||||
"""
|
||||
Gets score's value as string. Turns seconds into MM:SS.ms format.
|
||||
|
||||
Returns:
|
||||
str: value in time format.
|
||||
"""
|
||||
milliseconds = round((self.value - int(self.value)) * 10)
|
||||
return time.strftime(f"%-M:%S.{milliseconds}", time.gmtime(self.value))
|
||||
Reference in New Issue
Block a user