更新品牌文案与演示项目名称

- 登录页和侧栏统一使用根目录 logo_square.png,并更新登录系统名称与副标题。

- 更新 Dashboard、项目库和工作区时间轴文案,移除底层时序视频图层说明。

- 演示视频项目显示名改为“演视LC视频序列”,启动时兼容迁移旧 Data_MyVideo_1 名称,恢复出厂设置使用新名。

- 调整侧栏用户管理入口为用户图标,底部当前用户入口为退出图标,并让退出提示不接收鼠标事件。

- 补充前端组件测试、后端演示重置测试和文档说明。
This commit is contained in:
2026-05-07 15:14:53 +08:00
parent f6ee9fa924
commit d583b32221
21 changed files with 65 additions and 30 deletions

View File

@@ -68,6 +68,7 @@ def _seed_default_project_sync() -> None:
from services.demo_media import (
DEMO_DICOM_PROJECT_NAME,
DEMO_VIDEO_PROJECT_NAME,
LEGACY_DEMO_VIDEO_PROJECT_NAMES,
create_parsed_dicom_demo_project,
create_unparsed_video_demo_project,
demo_dicom_files,
@@ -76,6 +77,14 @@ def _seed_default_project_sync() -> None:
db = SessionLocal()
try:
admin = ensure_default_admin(db)
legacy_video = (
db.query(Project)
.filter(Project.name.in_(LEGACY_DEMO_VIDEO_PROJECT_NAMES))
.first()
)
if legacy_video is not None:
legacy_video.name = DEMO_VIDEO_PROJECT_NAME
db.commit()
existing_video = db.query(Project).filter(Project.name == DEMO_VIDEO_PROJECT_NAME).first()
if existing_video is None and os.path.exists(settings.demo_video_path):
video_project = create_unparsed_video_demo_project(

View File

@@ -17,7 +17,8 @@ from statuses import PROJECT_STATUS_PENDING, PROJECT_STATUS_READY
DEMO_DICOM_PROJECT_NAME = "演示DICOM序列"
DEMO_DICOM_PARSE_FPS = 30.0
DEMO_VIDEO_PROJECT_NAME = "Data_MyVideo_1"
DEMO_VIDEO_PROJECT_NAME = "演视LC视频序列"
LEGACY_DEMO_VIDEO_PROJECT_NAMES = {"Data_MyVideo_1"}
def demo_dicom_files(dicom_dir: str) -> list[Path]:

View File

@@ -194,7 +194,7 @@ def test_demo_factory_reset_leaves_admin_and_parsed_demo_dicom(client, db_sessio
assert data["project"]["source_type"] == "dicom"
assert data["project"]["frame_count"] == 3
assert data["project"]["video_path"] == f"uploads/{data['project']['id']}/dicom"
assert [project["name"] for project in data["projects"]] == ["Data_MyVideo_1", "演示DICOM序列"]
assert [project["name"] for project in data["projects"]] == ["演视LC视频序列", "演示DICOM序列"]
assert data["projects"][0]["status"] == "pending"
assert data["projects"][0]["source_type"] == "video"
assert data["projects"][0]["frame_count"] == 0