29 lines
990 B
Python
29 lines
990 B
Python
from sqlalchemy import Column, Integer, BigInteger, UniqueConstraint
|
|
from infra.db.base import Base, TimestampMixin
|
|
|
|
class HomeDebt(Base, TimestampMixin):
|
|
__tablename__ = "home_debt"
|
|
|
|
id = Column(Integer, primary_key=True, autoincrement=True)
|
|
guild_id = Column(BigInteger, nullable=False, default=0)
|
|
user_id = Column(BigInteger, nullable=False)
|
|
value = Column(Integer, nullable=False, default=0)
|
|
|
|
__table_args__ = (
|
|
UniqueConstraint('guild_id', 'user_id', name='uq_home_debt_guild_user'),
|
|
)
|
|
|
|
def __str__(self):
|
|
return f"ID: {self.id}, User ID: {self.user_id}, Value: {self.value}, Created At: {self.created_at}, Updated At: {self.updated_at}"
|
|
|
|
def __repr__(self):
|
|
return self.__str__()
|
|
|
|
def to_dict(self):
|
|
return {
|
|
"id": self.id,
|
|
"user_id": self.user_id,
|
|
"value": self.value,
|
|
"created_at": self.created_at,
|
|
"updated_at": self.updated_at
|
|
} |