2021-08-07 07:56:48 +00:00
|
|
|
from sqlalchemy import Column, Integer, String, Text, TIMESTAMP, Boolean, text
|
2022-06-12 14:30:02 +00:00
|
|
|
from sqlalchemy.dialects.mysql import LONGTEXT
|
2021-07-10 17:05:07 +00:00
|
|
|
from sqlalchemy.ext.declarative import declarative_base
|
|
|
|
|
2022-06-12 14:30:02 +00:00
|
|
|
from config import Config
|
|
|
|
|
2021-07-10 17:05:07 +00:00
|
|
|
Base = declarative_base()
|
|
|
|
|
|
|
|
|
|
|
|
class EnabledModules(Base):
|
|
|
|
"""已打开的模块"""
|
|
|
|
__tablename__ = "EnabledModules"
|
2021-07-15 14:59:32 +00:00
|
|
|
targetId = Column(String(512), primary_key=True)
|
|
|
|
enabledModules = Column(Text)
|
2021-07-10 17:05:07 +00:00
|
|
|
|
|
|
|
|
2021-07-15 14:59:32 +00:00
|
|
|
class SenderInfo(Base):
|
|
|
|
"""发送者信息"""
|
|
|
|
__tablename__ = "SenderInfo"
|
|
|
|
id = Column(String(512), primary_key=True)
|
2021-11-15 16:26:11 +00:00
|
|
|
isInBlockList = Column(Boolean, default=False)
|
|
|
|
isInAllowList = Column(Boolean, default=False)
|
2021-07-15 14:59:32 +00:00
|
|
|
isSuperUser = Column(Boolean, default=False)
|
|
|
|
warns = Column(Integer, default='0')
|
2021-11-14 09:57:53 +00:00
|
|
|
disable_typing = Column(Boolean, default=False)
|
2021-07-10 17:05:07 +00:00
|
|
|
|
|
|
|
|
2022-06-12 14:30:02 +00:00
|
|
|
class StoredData(Base):
|
|
|
|
"""数据存储"""
|
|
|
|
__tablename__ = "StoredData"
|
|
|
|
name = Column(String(512), primary_key=True)
|
|
|
|
value = Column(LONGTEXT if Config('db_path').startswith('mysql') else Text)
|
|
|
|
|
|
|
|
|
2021-07-15 14:59:32 +00:00
|
|
|
class TargetAdmin(Base):
|
2021-07-13 15:48:43 +00:00
|
|
|
"""所属赋予的管理员"""
|
2021-07-15 14:59:32 +00:00
|
|
|
__tablename__ = "TargetAdmin"
|
2021-07-24 08:59:15 +00:00
|
|
|
id = Column(Integer, primary_key=True)
|
|
|
|
senderId = Column(String(512))
|
2021-07-15 14:59:32 +00:00
|
|
|
targetId = Column(String(512))
|
2021-07-13 15:48:43 +00:00
|
|
|
|
|
|
|
|
2022-01-08 11:05:17 +00:00
|
|
|
class MuteList(Base):
|
|
|
|
"""禁言列表"""
|
|
|
|
__tablename__ = "MuteList"
|
|
|
|
targetId = Column(String(512), primary_key=True)
|
|
|
|
|
2022-01-20 12:13:03 +00:00
|
|
|
|
2021-07-10 17:05:07 +00:00
|
|
|
class CommandTriggerTime(Base):
|
|
|
|
"""命令触发时间"""
|
|
|
|
__tablename__ = "CommandTriggerTime"
|
2021-07-27 17:42:47 +00:00
|
|
|
targetId = Column(String(512), primary_key=True)
|
|
|
|
commandName = Column(String(512))
|
|
|
|
timestamp = Column(TIMESTAMP, default=text('CURRENT_TIMESTAMP'))
|
2021-08-25 15:15:20 +00:00
|
|
|
|
|
|
|
|
2021-11-15 16:26:11 +00:00
|
|
|
class GroupAllowList(Base):
|
|
|
|
__tablename__ = "GroupAllowList"
|
2021-10-16 16:17:21 +00:00
|
|
|
targetId = Column(String(512), primary_key=True)
|
|
|
|
|
|
|
|
|
2022-06-12 14:30:02 +00:00
|
|
|
__all__ = ["Base", "EnabledModules", "TargetAdmin", "SenderInfo", "CommandTriggerTime", "GroupAllowList", "StoredData"]
|