“单设备登录(同端互斥)”功能和后台全局用户配置
This commit is contained in:
@@ -0,0 +1,30 @@
|
||||
"""单设备登录拆分设备类型 + 用户级覆盖
|
||||
|
||||
Revision ID: 20260813_split_device_type
|
||||
Revises: 20260813_token_version
|
||||
Create Date: 2026-08-13 12:00:00.000000
|
||||
"""
|
||||
from alembic import op
|
||||
import sqlalchemy as sa
|
||||
|
||||
# revision identifiers, used by Alembic.
|
||||
revision = '20260813_split_device_type'
|
||||
down_revision = '20260813_token_version'
|
||||
branch_labels = None
|
||||
depends_on = None
|
||||
|
||||
|
||||
def upgrade():
|
||||
# 拆分为按设备类型管理
|
||||
op.add_column('users', sa.Column('pc_token_version', sa.Integer(), nullable=False, server_default='0'))
|
||||
op.add_column('users', sa.Column('mobile_token_version', sa.Integer(), nullable=False, server_default='0'))
|
||||
op.drop_column('users', 'token_version')
|
||||
# 用户级覆盖:None=跟随全局, True=强制启用, False=强制禁用
|
||||
op.add_column('users', sa.Column('single_device_login_override', sa.Boolean(), nullable=True))
|
||||
|
||||
|
||||
def downgrade():
|
||||
op.add_column('users', sa.Column('token_version', sa.Integer(), nullable=False, server_default='0'))
|
||||
op.drop_column('users', 'single_device_login_override')
|
||||
op.drop_column('users', 'mobile_token_version')
|
||||
op.drop_column('users', 'pc_token_version')
|
||||
Reference in New Issue
Block a user