fix: 所有等级奖章模型使用 Base 而非 BaseModel
Some checks failed
continuous-integration/drone/push Build is failing
Some checks failed
continuous-integration/drone/push Build is failing
This commit is contained in:
@@ -17,7 +17,7 @@ from sqlalchemy.orm import relationship
|
|||||||
from app.models.base import Base, BaseModel
|
from app.models.base import Base, BaseModel
|
||||||
|
|
||||||
|
|
||||||
class UserLevel(BaseModel):
|
class UserLevel(Base):
|
||||||
"""用户等级表"""
|
"""用户等级表"""
|
||||||
__tablename__ = "user_levels"
|
__tablename__ = "user_levels"
|
||||||
|
|
||||||
@@ -30,16 +30,14 @@ class UserLevel(BaseModel):
|
|||||||
max_login_streak = Column(Integer, nullable=False, default=0, comment="历史最长连续登录天数")
|
max_login_streak = Column(Integer, nullable=False, default=0, comment="历史最长连续登录天数")
|
||||||
last_login_date = Column(Date, nullable=True, comment="最后登录日期")
|
last_login_date = Column(Date, nullable=True, comment="最后登录日期")
|
||||||
last_checkin_at = Column(DateTime, nullable=True, comment="最后签到时间")
|
last_checkin_at = Column(DateTime, nullable=True, comment="最后签到时间")
|
||||||
|
created_at = Column(DateTime, nullable=False, default=datetime.now)
|
||||||
|
updated_at = Column(DateTime, nullable=False, default=datetime.now, onupdate=datetime.now)
|
||||||
|
|
||||||
# 关联
|
# 关联
|
||||||
user = relationship("User", backref="user_level", uselist=False)
|
user = relationship("User", backref="user_level", uselist=False)
|
||||||
|
|
||||||
# 不继承 is_deleted 等软删除字段
|
|
||||||
is_deleted = None
|
|
||||||
deleted_at = None
|
|
||||||
|
|
||||||
|
|
||||||
class ExpHistory(BaseModel):
|
class ExpHistory(Base):
|
||||||
"""经验值历史表"""
|
"""经验值历史表"""
|
||||||
__tablename__ = "exp_history"
|
__tablename__ = "exp_history"
|
||||||
|
|
||||||
@@ -51,16 +49,13 @@ class ExpHistory(BaseModel):
|
|||||||
description = Column(String(255), nullable=False, comment="描述")
|
description = Column(String(255), nullable=False, comment="描述")
|
||||||
level_before = Column(Integer, nullable=True, comment="变化前等级")
|
level_before = Column(Integer, nullable=True, comment="变化前等级")
|
||||||
level_after = Column(Integer, nullable=True, comment="变化后等级")
|
level_after = Column(Integer, nullable=True, comment="变化后等级")
|
||||||
|
created_at = Column(DateTime, nullable=False, default=datetime.now)
|
||||||
|
|
||||||
# 关联
|
# 关联
|
||||||
user = relationship("User", backref="exp_histories")
|
user = relationship("User", backref="exp_histories")
|
||||||
|
|
||||||
# 不继承软删除字段
|
|
||||||
is_deleted = None
|
|
||||||
deleted_at = None
|
|
||||||
|
|
||||||
|
|
||||||
class BadgeDefinition(BaseModel):
|
class BadgeDefinition(Base):
|
||||||
"""奖章定义表"""
|
"""奖章定义表"""
|
||||||
__tablename__ = "badge_definitions"
|
__tablename__ = "badge_definitions"
|
||||||
|
|
||||||
@@ -76,16 +71,14 @@ class BadgeDefinition(BaseModel):
|
|||||||
exp_reward = Column(Integer, nullable=False, default=0, comment="奖励经验值")
|
exp_reward = Column(Integer, nullable=False, default=0, comment="奖励经验值")
|
||||||
sort_order = Column(Integer, nullable=False, default=0, comment="排序")
|
sort_order = Column(Integer, nullable=False, default=0, comment="排序")
|
||||||
is_active = Column(Boolean, nullable=False, default=True, comment="是否启用")
|
is_active = Column(Boolean, nullable=False, default=True, comment="是否启用")
|
||||||
|
created_at = Column(DateTime, nullable=False, default=datetime.now)
|
||||||
|
updated_at = Column(DateTime, nullable=False, default=datetime.now, onupdate=datetime.now)
|
||||||
|
|
||||||
# 关联
|
# 关联
|
||||||
user_badges = relationship("UserBadge", back_populates="badge")
|
user_badges = relationship("UserBadge", back_populates="badge")
|
||||||
|
|
||||||
# 不继承软删除字段
|
|
||||||
is_deleted = None
|
|
||||||
deleted_at = None
|
|
||||||
|
|
||||||
|
|
||||||
class UserBadge(BaseModel):
|
class UserBadge(Base):
|
||||||
"""用户奖章表"""
|
"""用户奖章表"""
|
||||||
__tablename__ = "user_badges"
|
__tablename__ = "user_badges"
|
||||||
|
|
||||||
@@ -95,14 +88,11 @@ class UserBadge(BaseModel):
|
|||||||
unlocked_at = Column(DateTime, nullable=False, default=datetime.now, comment="解锁时间")
|
unlocked_at = Column(DateTime, nullable=False, default=datetime.now, comment="解锁时间")
|
||||||
is_notified = Column(Boolean, nullable=False, default=False, comment="是否已通知")
|
is_notified = Column(Boolean, nullable=False, default=False, comment="是否已通知")
|
||||||
notified_at = Column(DateTime, nullable=True, comment="通知时间")
|
notified_at = Column(DateTime, nullable=True, comment="通知时间")
|
||||||
|
created_at = Column(DateTime, nullable=False, default=datetime.now)
|
||||||
|
|
||||||
# 关联
|
# 关联
|
||||||
user = relationship("User", backref="badges")
|
user = relationship("User", backref="badges")
|
||||||
badge = relationship("BadgeDefinition", back_populates="user_badges")
|
badge = relationship("BadgeDefinition", back_populates="user_badges")
|
||||||
|
|
||||||
# 不继承软删除字段
|
|
||||||
is_deleted = None
|
|
||||||
deleted_at = None
|
|
||||||
|
|
||||||
|
|
||||||
class LevelConfig(Base):
|
class LevelConfig(Base):
|
||||||
|
|||||||
Reference in New Issue
Block a user