新增虎牙账号和任务基础功能
This commit is contained in:
@@ -30,6 +30,7 @@ class User(Base):
|
||||
|
||||
# 客服被分配的账号
|
||||
assigned_accounts = relationship("Account", back_populates="assigned_user", foreign_keys="Account.assigned_to")
|
||||
huya_accounts = relationship("HuyaAccount", back_populates="assigned_user", foreign_keys="HuyaAccount.assigned_to")
|
||||
|
||||
|
||||
class Account(Base):
|
||||
@@ -70,6 +71,75 @@ class LoginTask(Base):
|
||||
account = relationship("Account", back_populates="login_tasks")
|
||||
|
||||
|
||||
class HuyaAccount(Base):
|
||||
"""虎牙 Cookie 账号"""
|
||||
__tablename__ = "huya_accounts"
|
||||
|
||||
id = Column(Integer, primary_key=True, autoincrement=True)
|
||||
uid = Column(String(32), default="", index=True)
|
||||
yyuid = Column(String(32), default="", index=True)
|
||||
username = Column(String(128), default="")
|
||||
nickname = Column(String(128), default="")
|
||||
cookie = Column(EncryptedText(), nullable=False)
|
||||
tag = Column(String(64), default="")
|
||||
remark = Column(String(256), default="")
|
||||
status = Column(String(32), default="imported")
|
||||
points = Column(Integer, nullable=True)
|
||||
game_name = Column(String(128), default="")
|
||||
game_channel = Column(String(64), default="")
|
||||
game_phone = Column(String(64), default="")
|
||||
assigned_to = Column(Integer, ForeignKey("users.id"), nullable=True, index=True)
|
||||
created_at = Column(DateTime, default=_utcnow)
|
||||
updated_at = Column(DateTime, default=_utcnow, onupdate=_utcnow)
|
||||
|
||||
assigned_user = relationship("User", back_populates="huya_accounts", foreign_keys=[assigned_to])
|
||||
tasks = relationship("HuyaTask", back_populates="account")
|
||||
|
||||
|
||||
class HuyaTask(Base):
|
||||
"""虎牙业务任务"""
|
||||
__tablename__ = "huya_tasks"
|
||||
|
||||
id = Column(Integer, primary_key=True, autoincrement=True)
|
||||
batch_id = Column(String(64), nullable=False, index=True)
|
||||
account_id = Column(Integer, ForeignKey("huya_accounts.id"), nullable=False)
|
||||
task_type = Column(String(64), nullable=False, index=True)
|
||||
status = Column(String(32), default="pending")
|
||||
message = Column(String(512), default="")
|
||||
result = Column(JSON, nullable=True)
|
||||
created_by = Column(Integer, ForeignKey("users.id"), nullable=False)
|
||||
created_at = Column(DateTime, default=_utcnow)
|
||||
finished_at = Column(DateTime, nullable=True)
|
||||
|
||||
account = relationship("HuyaAccount", back_populates="tasks")
|
||||
|
||||
|
||||
class HuyaConfig(Base):
|
||||
"""虎牙业务配置"""
|
||||
__tablename__ = "huya_config"
|
||||
|
||||
id = Column(Integer, primary_key=True, autoincrement=True)
|
||||
room_pid = Column(String(64), default="")
|
||||
sid = Column(String(32), default="")
|
||||
outer_act_id = Column(String(32), default="9504")
|
||||
bind_act_id = Column(String(32), default="17096")
|
||||
pay_channel = Column(String(16), default="Zfb")
|
||||
updated_at = Column(DateTime, default=_utcnow, onupdate=_utcnow)
|
||||
|
||||
|
||||
class HuyaGoodsSnapshot(Base):
|
||||
"""虎牙兑换商品快照"""
|
||||
__tablename__ = "huya_goods_snapshot"
|
||||
|
||||
id = Column(Integer, primary_key=True, autoincrement=True)
|
||||
product_id = Column(String(64), nullable=False, index=True)
|
||||
name = Column(String(256), default="")
|
||||
price = Column(Integer, nullable=True)
|
||||
remain_text = Column(String(64), default="")
|
||||
raw = Column(JSON, nullable=True)
|
||||
updated_at = Column(DateTime, default=_utcnow, onupdate=_utcnow)
|
||||
|
||||
|
||||
class ProxyConfig(Base):
|
||||
"""代理配置(全局单条记录)"""
|
||||
__tablename__ = "proxy_config"
|
||||
|
||||
Reference in New Issue
Block a user