阶段0: 设备池(SQLite devices 表 + core/device_pool.py 清单/在线状态/CRUD,首次启动自动从 STF 导入)+ STF 摘除迁移计划文档
This commit is contained in:
@@ -216,11 +216,38 @@ class ApkFile(db.Model):
|
||||
return f"<ApkFile {self.display_name}>"
|
||||
|
||||
|
||||
class Device(db.Model):
|
||||
"""设备池(本地设备清单,替代 STF 池作为调度数据源)。
|
||||
|
||||
serial 即 adb 序列号(IP:5555 或 USB 序列号);enabled=False 不参与调度。
|
||||
"""
|
||||
serial = db.Column(db.String(120), primary_key=True)
|
||||
name = db.Column(db.String(80), default="") # 备注名(可选)
|
||||
enabled = db.Column(db.Boolean, default=True) # 是否参与调度
|
||||
note = db.Column(db.Text, default="") # 备注
|
||||
created_at = db.Column(db.String(20), default="") # 添加时间
|
||||
|
||||
def to_dict(self):
|
||||
return {"serial": self.serial, "name": self.name or "",
|
||||
"enabled": bool(self.enabled), "note": self.note or "",
|
||||
"created_at": self.created_at or ""}
|
||||
|
||||
def __repr__(self):
|
||||
return f"<Device {self.serial}>"
|
||||
|
||||
|
||||
# 版本化 schema 迁移:新增结构变更时在此追加 (版本号, 说明, SQL)
|
||||
# 版本号单调递增,只执行比当前 schema_version 新的迁移。
|
||||
SCHEMA_MIGRATIONS = [
|
||||
(1, "用户权限位:user 表新增 perms 列(JSON 数组,默认空=无业务权限,管理员不受限)",
|
||||
"ALTER TABLE user ADD COLUMN perms TEXT DEFAULT '[]'"),
|
||||
(2, "设备池:device 表(本地设备清单,替代 STF 池)",
|
||||
"CREATE TABLE IF NOT EXISTS device ("
|
||||
"serial VARCHAR(120) PRIMARY KEY,"
|
||||
"name VARCHAR(80) DEFAULT '',"
|
||||
"enabled BOOLEAN DEFAULT 1,"
|
||||
"note TEXT DEFAULT '',"
|
||||
"created_at VARCHAR(20) DEFAULT '')"),
|
||||
]
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user