fix: restore dashboard-rendered control center

This commit is contained in:
2026-06-13 09:50:51 +08:00
parent ff9dcdd4e1
commit af879e4607
6 changed files with 52 additions and 1240 deletions
@@ -0,0 +1 @@
+42
View File
@@ -0,0 +1,42 @@
from fastapi import APIRouter, Depends, HTTPException
from sqlalchemy import select
from sqlalchemy.ext.asyncio import AsyncSession
from app.database import get_db
from online_dev.page_manager.model import PageMeta
router = APIRouter(prefix="/page", tags=["page-render"])
def _format_datetime(dt) -> str:
return dt.strftime("%Y-%m-%d %H:%M:%S") if dt else ""
def _build_page_out(page: PageMeta) -> dict:
return {
"id": str(page.id),
"application_id": page.application_id,
"name": page.name,
"code": page.code,
"category": page.category or "",
"description": page.description or "",
"status": page.status,
"version": page.version,
"page_config": page.page_config or {},
"sort": page.sort or 0,
"sys_create_datetime": _format_datetime(page.sys_create_datetime),
"sys_update_datetime": _format_datetime(page.sys_update_datetime),
}
@router.get("/code/{code}", summary="Get page config by code")
async def get_page_by_code(code: str, db: AsyncSession = Depends(get_db)):
stmt = select(PageMeta).where(
PageMeta.code == code,
PageMeta.is_deleted == False, # noqa: E712
)
result = await db.execute(stmt)
page = result.scalar_one_or_none()
if not page:
raise HTTPException(status_code=404, detail="Page config not found")
return _build_page_out(page)
+4
View File
@@ -14,11 +14,13 @@ from core.menu.api import router as menu_router
from core.message.api import announcement_router
from core.message.api import router as message_router
from core.oauth.api import router as oauth_router
from core.page_manager.api import router as page_manager_router
from core.permission.api import router as permission_router
from core.post.api import router as post_router
from core.resource_scope.field_permission.api import router as field_permission_router
from core.resource_scope.scope_permission.api import router as resource_scope_router
from core.role.api import router as role_router
from core.server_monitor.api import router as server_monitor_router
from core.ui_config.api import router as ui_config_router
from core.user.api import router as user_router
@@ -41,5 +43,7 @@ router.include_router(file_manager_router)
router.include_router(message_router)
router.include_router(announcement_router)
router.include_router(oauth_router)
router.include_router(page_manager_router)
router.include_router(server_monitor_router)
router.include_router(ui_config_router)
router.include_router(api_token_router)