From 25c9606fbc994a1f14290738c9b3944261633c91 Mon Sep 17 00:00:00 2001 From: fit2cloud-chenyw Date: Fri, 15 Aug 2025 17:45:44 +0800 Subject: [PATCH] perf(X-Pack): Optimize appearance-related configuration APIs --- backend/alembic/versions/035_sys_arg_ddl.py | 34 +++++++++++++++++++++ backend/common/core/config.py | 2 ++ backend/common/utils/utils.py | 1 - backend/pyproject.toml | 2 +- 4 files changed, 37 insertions(+), 2 deletions(-) create mode 100644 backend/alembic/versions/035_sys_arg_ddl.py diff --git a/backend/alembic/versions/035_sys_arg_ddl.py b/backend/alembic/versions/035_sys_arg_ddl.py new file mode 100644 index 00000000..65ba04d0 --- /dev/null +++ b/backend/alembic/versions/035_sys_arg_ddl.py @@ -0,0 +1,34 @@ +"""035_sys_arg_ddl + +Revision ID: 29559ee607af +Revises: e8b470d2b150 +Create Date: 2025-08-15 11:43:26.175792 + +""" +from alembic import op +import sqlalchemy as sa +import sqlmodel.sql.sqltypes + + +# revision identifiers, used by Alembic. +revision = '29559ee607af' +down_revision = 'e8b470d2b150' +branch_labels = None +depends_on = None + + +def upgrade(): + op.create_table( + 'sys_arg', + sa.Column('id', sa.BigInteger(), primary_key=True, nullable=False, comment='ID'), + sa.Column('pkey', sa.String(255), nullable=False, comment='pkey'), + sa.Column('pval', sa.String(255), nullable=True, comment='pval'), + sa.Column('ptype', sa.String(255), nullable=False, server_default='str', comment='str or file'), + sa.Column('sort_no', sa.Integer(), nullable=False, server_default='1', comment='sort_no') + ) + op.create_index(op.f('ix_sys_arg_id'), 'sys_arg', ['id'], unique=False) + + +def downgrade(): + op.drop_index(op.f('ix_sys_arg_id'), table_name='sys_arg') + op.drop_table('sys_arg') diff --git a/backend/common/core/config.py b/backend/common/core/config.py index ba9287ee..1d1a6bfe 100644 --- a/backend/common/core/config.py +++ b/backend/common/core/config.py @@ -63,6 +63,8 @@ class Settings(BaseSettings): LOG_DIR: str = "logs" LOG_FORMAT: str = "%(asctime)s - %(name)s - %(levelname)s:%(lineno)d - %(message)s" SQL_DEBUG: bool = False + + UPLOAD_DIR: str = "/opt/sqlbot/data/file" @computed_field # type: ignore[prop-decorator] @property diff --git a/backend/common/utils/utils.py b/backend/common/utils/utils.py index cea2a95e..9b2570d1 100644 --- a/backend/common/utils/utils.py +++ b/backend/common/utils/utils.py @@ -17,7 +17,6 @@ import orjson from jwt.exceptions import InvalidTokenError from common.core import security -from common.core.config import settings def generate_password_reset_token(email: str) -> str: diff --git a/backend/pyproject.toml b/backend/pyproject.toml index e4b2f1b0..efed0b3c 100644 --- a/backend/pyproject.toml +++ b/backend/pyproject.toml @@ -36,7 +36,7 @@ dependencies = [ "pyyaml (>=6.0.2,<7.0.0)", "fastapi-mcp (>=0.3.4,<0.4.0)", "tabulate>=0.9.0", - "sqlbot-xpack==0.0.3.15", + "sqlbot-xpack==0.0.3.16", "fastapi-cache2>=0.2.2", "sqlparse>=0.5.3", "redis>=6.2.0",