feat(桌面与监控): 完善工作台导航和登录活动定位
Client Quality Gates / Shared client and Web (push) Has been cancelled
Client Quality Gates / macOS Desktop (push) Has been cancelled

- 优化桌面标签、上下文标题、前进后退、导航栏隐藏和原生菜单体验

- 补充登录会话 IP 采集、地理位置回退、管理端展示及数据库迁移

- 更新桌面发布检查、运维文档和前后端测试覆盖
This commit is contained in:
Cheng Zhou
2026-07-13 16:03:20 +08:00
parent b26ebdda02
commit ab59476d10
50 changed files with 2086 additions and 191 deletions
+4 -3
View File
@@ -109,9 +109,9 @@
<span class="meta-label">申办方</span>
<span class="meta-val">{{ project.sponsor }}</span>
</div>
<div v-if="project.role_in_study && !isAdmin" class="meta-item">
<span class="meta-label">分配角色</span>
<span class="meta-val">{{ project.role_in_study }}</span>
<div v-if="isAdmin || project.role_in_study" class="meta-item">
<span class="meta-label">我的角色</span>
<span class="meta-val" :title="projectRoleLabel(project)">{{ projectRoleLabel(project) }}</span>
</div>
</div>
@@ -180,6 +180,7 @@ const entrySubtitle = computed(() =>
const statusLabel = (status: string | undefined) =>
status ? TEXT.enums.projectStatus[status as keyof typeof TEXT.enums.projectStatus] || status : "未知";
const projectRoleLabel = (project: Study) => isAdmin.value ? "系统管理员" : project.role_in_study || "未分配";
const loadProjects = async () => {
loading.value = true;