diff --git a/api/models/account.py b/api/models/account.py index 9436d9553d..ba01756021 100644 --- a/api/models/account.py +++ b/api/models/account.py @@ -201,7 +201,7 @@ class Tenant(Base): id: Mapped[str] = mapped_column(StringUUID, server_default=db.text("uuid_generate_v4()")) name: Mapped[str] = mapped_column(db.String(255)) - encrypt_public_key: Mapped[Optional[str]] = mapped_column(db.Text, nullable=True) + encrypt_public_key: Mapped[str] = mapped_column(db.Text) plan: Mapped[str] = mapped_column(db.String(255), server_default=db.text("'basic'::character varying")) status: Mapped[str] = mapped_column(db.String(255), server_default=db.text("'normal'::character varying")) custom_config: Mapped[Optional[str]] = mapped_column(db.Text) diff --git a/api/models/model.py b/api/models/model.py index ab76a491c1..605fa61985 100644 --- a/api/models/model.py +++ b/api/models/model.py @@ -79,7 +79,7 @@ class App(Base): name: Mapped[str] = mapped_column(db.String(255)) description: Mapped[str] = mapped_column(db.Text, server_default=db.text("''::character varying")) mode: Mapped[str] = mapped_column(db.String(255)) - icon_type = mapped_column(db.String(255), nullable=True) # image, emoji + icon_type: Mapped[str] = mapped_column(db.String(255)) # image, emoji icon: Mapped[str] = mapped_column(db.String(255)) icon_background: Mapped[str] = mapped_column(db.String(255)) app_model_config_id = mapped_column(StringUUID, nullable=True) @@ -93,12 +93,12 @@ class App(Base): is_public: Mapped[bool] = mapped_column(db.Boolean, server_default=db.text("false")) is_universal: Mapped[bool] = mapped_column(db.Boolean, server_default=db.text("false")) tracing = mapped_column(db.Text, nullable=True) - max_active_requests: Mapped[Optional[int]] = mapped_column(nullable=True) + max_active_requests: Mapped[Optional[int]] created_by = mapped_column(StringUUID, nullable=True) created_at = mapped_column(db.DateTime, nullable=False, server_default=func.current_timestamp()) updated_by = mapped_column(StringUUID, nullable=True) updated_at: Mapped[datetime] = mapped_column(db.DateTime, nullable=False, server_default=func.current_timestamp()) - use_icon_as_answer_icon = mapped_column(db.Boolean, nullable=False, server_default=db.text("false")) + use_icon_as_answer_icon: Mapped[bool] = mapped_column(db.Boolean, nullable=False, server_default=db.text("false")) @property def desc_or_prompt(self): diff --git a/api/services/app_service.py b/api/services/app_service.py index e0836cace0..f68bce0ece 100644 --- a/api/services/app_service.py +++ b/api/services/app_service.py @@ -1,3 +1,4 @@ +from typing import TypedDict import json import logging from typing import Optional, cast @@ -220,7 +221,16 @@ class AppService: return app - def update_app(self, app: App, args: dict) -> App: + class ArgsDict(TypedDict): + name: str + description: str + icon_type: str + icon: str + icon_background: str + use_icon_as_answer_icon: bool + max_active_requests: int + + def update_app(self, app: App, args: ArgsDict) -> App: """ Update app :param app: App instance