fix: fix duplicate app lose custom image (#19775)
This commit is contained in:
parent
b2ae46b80f
commit
618981f1ae
5 changed files with 19 additions and 7 deletions
|
|
@ -192,6 +192,7 @@ class AppCopyApi(Resource):
|
|||
parser.add_argument("icon_type", type=str, location="json")
|
||||
parser.add_argument("icon", type=str, location="json")
|
||||
parser.add_argument("icon_background", type=str, location="json")
|
||||
parser.add_argument("icon_url", type=str, location="json")
|
||||
args = parser.parse_args()
|
||||
|
||||
with Session(db.engine) as session:
|
||||
|
|
@ -206,6 +207,7 @@ class AppCopyApi(Resource):
|
|||
description=args.get("description"),
|
||||
icon_type=args.get("icon_type"),
|
||||
icon=args.get("icon"),
|
||||
icon_url=args.get("icon_url"),
|
||||
icon_background=args.get("icon_background"),
|
||||
)
|
||||
session.commit()
|
||||
|
|
|
|||
|
|
@ -100,6 +100,7 @@ class PendingData(BaseModel):
|
|||
description: str | None
|
||||
icon_type: str | None
|
||||
icon: str | None
|
||||
icon_url: str | None
|
||||
icon_background: str | None
|
||||
app_id: str | None
|
||||
|
||||
|
|
@ -124,6 +125,7 @@ class AppDslService:
|
|||
description: Optional[str] = None,
|
||||
icon_type: Optional[str] = None,
|
||||
icon: Optional[str] = None,
|
||||
icon_url: Optional[str] = None,
|
||||
icon_background: Optional[str] = None,
|
||||
app_id: Optional[str] = None,
|
||||
) -> Import:
|
||||
|
|
@ -248,6 +250,7 @@ class AppDslService:
|
|||
icon_type=icon_type,
|
||||
icon=icon,
|
||||
icon_background=icon_background,
|
||||
icon_url=icon_url,
|
||||
app_id=app_id,
|
||||
)
|
||||
redis_client.setex(
|
||||
|
|
@ -288,6 +291,7 @@ class AppDslService:
|
|||
description=description,
|
||||
icon_type=icon_type,
|
||||
icon=icon,
|
||||
icon_url=icon_url,
|
||||
icon_background=icon_background,
|
||||
dependencies=check_dependencies_pending_data,
|
||||
)
|
||||
|
|
@ -409,6 +413,7 @@ class AppDslService:
|
|||
description: Optional[str] = None,
|
||||
icon_type: Optional[str] = None,
|
||||
icon: Optional[str] = None,
|
||||
icon_url: Optional[str] = None,
|
||||
icon_background: Optional[str] = None,
|
||||
dependencies: Optional[list[PluginDependency]] = None,
|
||||
) -> App:
|
||||
|
|
@ -421,12 +426,12 @@ class AppDslService:
|
|||
|
||||
# Set icon type
|
||||
icon_type_value = icon_type or app_data.get("icon_type")
|
||||
if icon_type_value in ["emoji", "link"]:
|
||||
if icon_type_value in ["emoji", "link", "image"]:
|
||||
icon_type = icon_type_value
|
||||
else:
|
||||
icon_type = "emoji"
|
||||
icon = icon or str(app_data.get("icon", ""))
|
||||
|
||||
icon_url = icon_url or str(app_data.get("icon_url", ""))
|
||||
if app:
|
||||
# Update existing app
|
||||
app.name = name or app_data.get("name", app.name)
|
||||
|
|
@ -434,6 +439,7 @@ class AppDslService:
|
|||
app.icon_type = icon_type
|
||||
app.icon = icon
|
||||
app.icon_background = icon_background or app_data.get("icon_background", app.icon_background)
|
||||
app.icon_url = icon_url or app_data.get("icon_url", app.icon_url)
|
||||
app.updated_by = account.id
|
||||
else:
|
||||
if account.current_tenant_id is None:
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue