diff --git a/ai_knowledge_base_v2/apps/admin-web/src/components/SsoIntegrationView.vue b/ai_knowledge_base_v2/apps/admin-web/src/components/SsoIntegrationView.vue index 953e20e..72d7ddd 100644 --- a/ai_knowledge_base_v2/apps/admin-web/src/components/SsoIntegrationView.vue +++ b/ai_knowledge_base_v2/apps/admin-web/src/components/SsoIntegrationView.vue @@ -299,38 +299,63 @@ function showError(error: unknown, fallback: string) { 保存地址 - + - - - - - - - - - - - - - - - - - - - - +
+ + + + + + + + + + + + + + + + + +
+
+ +
+
+
{{ client.name }}{{ client.appId }}
+
{{ client.status === 1 ? "已启用" : "已停用" }}
+
+
+
账号策略
{{ client.allowAutoRegister ? `自动注册 · ${client.defaultEntitlementPlanName || "未配置权益"}` : "仅已有学员" }}(已绑定 {{ client.identityCount }} 人)
+
回跳地址
{{ client.redirectUris.join("、") || "未配置" }}
+
最近使用
{{ formatTime(client.lastUsedAt) }}
+
+
编辑更新密钥
+
+
@@ -386,28 +411,50 @@ function showError(error: unknown, fallback: string) {
- - -
- - -
- - - -
-
- 自动注册新学员 -

可信应用传入本地尚不存在的已验证手机号和姓名时,自动创建学员并分配默认权益。

+ + +
+
+ 基本信息 + 用于识别接入方,应用 ID 创建后不可修改。
- -
- - - - - - +
+ + +
+ +
+
+ 登录后回跳 + 每行一个完整 HTTPS 地址,不需要回跳时可以留空。 +
+ + + +
+
+
+ 访问与账号策略 + 控制应用是否可用,以及首次进入时如何处理新学员。 +
+
+
+
启用应用停用后,该应用将无法继续申请或使用免登录。
+ +
+
+
自动注册新学员传入已验证手机号和姓名时,可自动创建账号并分配权益。
+ +
+
+ + + + + +
+
+
diff --git a/ai_knowledge_base_v2/design-qa.md b/ai_knowledge_base_v2/design-qa.md index eee85f4..0de1d0b 100644 --- a/ai_knowledge_base_v2/design-qa.md +++ b/ai_knowledge_base_v2/design-qa.md @@ -162,3 +162,48 @@ final result: passed - 未发现剩余 P0、P1、P2 问题。 final result: passed + +--- + +# 应用接入页面设计验收 + +- 源视觉依据:`/var/folders/hn/vg5lxj0j60d2cp0k6vv_k0mw0000gn/T/codex-clipboard-70a7e9c2-c058-4665-b236-e73ccef6d2b0.png` +- 浏览器实现截图:`development_records/ui-evidence/sso-integration-2026-08-03/implementation.png` +- 同屏对比图:`development_records/ui-evidence/sso-integration-2026-08-03/comparison.png` +- 验收地址:`http://localhost:5174/` +- 状态:管理员已登录,进入“应用接入”,打开“新增接入应用”弹窗 +- 视口:1380 × 900 CSS px,设备像素密度 1 +- 源图像素:1380 × 1026;实现图像素:1380 × 900 +- 归一化方式:保持两张图 1380 px 等宽,不缩放;对比图仅将实现图底部补白至 1026 px,避免密度或缩放造成误判 + +## 全视图对比证据 + +- 原界面将基础字段、回跳地址、自动注册和启用开关连续堆叠,字段说明与控件边界不清,底部留白失衡。 +- 新界面拆分为“基本信息”“登录后回跳”“访问与账号策略”三个语义区,主次关系、上下间距与操作路径清晰。 +- 应用列表合并重复维度并限制列宽;在容器宽度不足时切换为卡片布局,不再依赖横向滚动。 + +## 聚焦区域对比证据 + +- 表单区:输入框高度、标签间距、两列表单对齐、文本域高度均保持一致;说明文字从占位符中分离,阅读层级更稳定。 +- 策略区:“启用应用”和“自动注册新学员”采用同一行式设置组件,开关右对齐;自动注册开启后才展示默认权益,减少无关内容。 +- 标签页:在 1380 px 视口下,页面、标签内容和表格的 `scrollWidth` 均等于 `clientWidth`;无页面级横向滚动。 + +## 发现项 + +- 未发现仍需处理的 P0、P1 或 P2 问题。 +- P3:后台整体框架在小于约 1180 px 的窗口仍有全局最小宽度限制;该行为不是本次应用接入页面引入,且不影响当前桌面端验收范围。 + +## 交互与运行验证 + +- 已验证进入应用接入、切换“接入应用 / 账号绑定 / 登录审计”、打开与关闭新增应用弹窗;自动注册开关可正常显示和隐藏默认权益配置。 +- 已验证 1380 × 900 与 1280 × 720 桌面视口;弹窗内容过高时仅弹窗正文区域滚动,头部和底部操作保持可见。 +- 已检查浏览器控制台,新增错误和警告为 0。 +- 已执行前端类型检查与生产构建,构建通过。 + +## 对比历史 + +1. 初始问题:弹窗内容拥挤、策略控件分散;应用列表固定列宽总和过大,引发横向滚动。 +2. 修复:分区重构弹窗;合并列表信息列;补充容器宽度约束和窄容器卡片布局。 +3. 复验:同屏对比中信息层级与留白已改善;桌面视口下页面级横向滚动已消除。 + +final result: passed diff --git a/ai_knowledge_base_v2/development_records/ui-evidence/sso-integration-2026-08-03/comparison.png b/ai_knowledge_base_v2/development_records/ui-evidence/sso-integration-2026-08-03/comparison.png new file mode 100644 index 0000000..6aa3570 Binary files /dev/null and b/ai_knowledge_base_v2/development_records/ui-evidence/sso-integration-2026-08-03/comparison.png differ diff --git a/ai_knowledge_base_v2/development_records/ui-evidence/sso-integration-2026-08-03/implementation.png b/ai_knowledge_base_v2/development_records/ui-evidence/sso-integration-2026-08-03/implementation.png new file mode 100644 index 0000000..58d11dc Binary files /dev/null and b/ai_knowledge_base_v2/development_records/ui-evidence/sso-integration-2026-08-03/implementation.png differ