From 0219de6fa8bf32545d8b05af71164b0072e37b8a Mon Sep 17 00:00:00 2001 From: let5sne Date: Fri, 10 Jul 2026 02:20:56 +0800 Subject: [PATCH] fix(mobile): drive learning search from assignments --- docs/20260708/uni-app用户侧前端重建计划.md | 3 + mobile-uni/package.json | 1 + mobile-uni/src/pages/user/cases/index.vue | 18 ++++- mobile-uni/src/pages/user/learning/index.vue | 53 ++++++++------ mobile-uni/src/services/learning.ts | 44 ++++++++++++ mobile-uni/src/services/navigation.ts | 15 ++++ mobile-uni/src/styles/base.css | 30 ++++++++ mobile-uni/tests/learning.test.mjs | 75 ++++++++++++++++++++ 8 files changed, 213 insertions(+), 26 deletions(-) create mode 100644 mobile-uni/src/services/learning.ts create mode 100644 mobile-uni/tests/learning.test.mjs diff --git a/docs/20260708/uni-app用户侧前端重建计划.md b/docs/20260708/uni-app用户侧前端重建计划.md index 933bf7ba..ff0ea8d1 100644 --- a/docs/20260708/uni-app用户侧前端重建计划.md +++ b/docs/20260708/uni-app用户侧前端重建计划.md @@ -153,6 +153,9 @@ mobile-uni/ - 员工端训练前预习卡已接入: 新 uni-app 对练页复用 `/api/train/practice/scenarios/{id}/prep-card`,开始前展示要点、红线和可说话术。 - 员工端训练前预习卡与页头已收敛展示: 隐藏内部 promptVersion,训练卡标题跟随当前专项场景,页头不再固定写“投诉接待”。 - 员工端训练中已接 SOP 求助: 新 uni-app 对练页复用 `/api/knowledge/search`,展示正式检索答案和引用,失败明确报错不兜假答案。 +- 员工学习页已按正式 assignment 驱动专项检索: 先读取员工今日任务,优先用未完成的非 daily 场景名检索知识并加载对应预习卡;assignment 失败时明确报错,仍用岗位默认主题和默认场景继续加载,不补前端假数据。 +- 员工学习页和案例素材页已补“返回今日”子页闭环: 正常页面栈返回来源页,直链进入时回到员工今日页。 +- 当前“学”页仍是今日任务、SOP 检索和训练前预习的辅助入口,不是课程/考试系统;当前范围不包含课程编排、章节进度、题库考试或证书能力。 - 员工端对练建议已接调节按钮: 老师傅建议生成后可按“再严肃/再温柔/更细致/更专业”调用 `turn` 的 `regenerate/style`,只替换建议不重复计分。 - 员工端训练中已展示情绪/信任/红线纠偏: 新 uni-app 对练页直接渲染 `turn` 返回的 `emotion/trust/redFlag`,让员工看到话术对业主状态的影响。 - 员工端红线话术已改为同轮重说: `redFlag=true` 时不推进下一轮、不结束评分,提示员工按老师傅建议重说当前轮;纠正提交会替换本轮旧话术,与后端覆盖语义一致。 diff --git a/mobile-uni/package.json b/mobile-uni/package.json index 26646851..99de3ee2 100644 --- a/mobile-uni/package.json +++ b/mobile-uni/package.json @@ -8,6 +8,7 @@ "dev": "uni -p h5", "dev:h5": "uni -p h5", "build:h5": "uni build -p h5", + "test:unit": "node --test tests/*.test.mjs", "typecheck": "vue-tsc --noEmit" }, "dependencies": { diff --git a/mobile-uni/src/pages/user/cases/index.vue b/mobile-uni/src/pages/user/cases/index.vue index 202c5f20..cf2b2fbf 100644 --- a/mobile-uni/src/pages/user/cases/index.vue +++ b/mobile-uni/src/pages/user/cases/index.vue @@ -1,7 +1,19 @@