|
|
|
@ -0,0 +1,44 @@
|
|
|
|
|
|
|
|
# 新产品调查与分析:第二步选定调查平台与产品
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
## 范围
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
仅调整学生端“新产品调查与分析”(`new-product-survey`)的第二步,以及支持该步骤提交校验的后端接口。保留当前任务配置的案例资料下载入口和下载行为;不调整教师端、管理端及其余实训步骤。
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
## 页面与交互
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
第二步标题为“选定调查平台与产品”。学生以消费者身份,通过搜索、浏览和对比采集一个真实 AI 产品的数据,并完成以下字段:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1. 调查平台:必选单选项为京东、天猫、抖音电商,并展示原型中的平台说明。
|
|
|
|
|
|
|
|
2. 调查场景:必选单选项为 AI 智能家居、AI 智能办公、AI 儿童玩具、AI 学习设备、AI 美妆辅助、其他场景;每项展示示例。选择“其他场景”后显示必填文本框,填写自定义场景名称。
|
|
|
|
|
|
|
|
3. 搜索关键词:必填单行输入框,提示学生按“核心词 + 属性词 + 场景词”组织关键词,并展示原型示例。
|
|
|
|
|
|
|
|
4. 产品名称:必填单行输入框。
|
|
|
|
|
|
|
|
5. 产品图片:必传 1 至 5 张图片。上传完成后以缩略图显示;点击缩略图查看大图,学生可删除已上传的图片。超过 5 张、非图片文件或上传失败均显示明确提示,且不写入答案。
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
步骤导航继续使用既有四步名称。点击“下一步”时,先调用第二步校验接口;校验通过后保存答案并进入第三步,未通过时停留当前页并显示校验提示。普通“保存”仍可保存草稿,不强制所有字段完整。
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
## 数据持久化与接口
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
页面将一个对象序列化到既有学生答案的 `step2Answer` 字段:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
```json
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"platform": "京东",
|
|
|
|
|
|
|
|
"scene": "AI儿童玩具",
|
|
|
|
|
|
|
|
"customScene": "",
|
|
|
|
|
|
|
|
"keyword": "AI智能对话机器人 3-6岁 玩具",
|
|
|
|
|
|
|
|
"productName": "示例产品",
|
|
|
|
|
|
|
|
"images": [
|
|
|
|
|
|
|
|
{ "name": "product-main.png", "url": "/profile/upload/202608/...png" }
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
图片继续上传到现有 `/common/upload`,只在答案 JSON 中保存原始文件名和服务端返回的 URL,不新增图片表。刷新或再次进入页面时回填表单和缩略图;旧版第二步表格 JSON 可以安全忽略,不阻止学生填写新版内容。
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
后端新增仅学生可调用的 `POST /api/student-training-answers/new-product-survey/step-2/validate`。请求包括平台、场景、自定义场景、关键词、产品名称和图片 URL 列表。接口校验:学生身份、平台与场景已选择、选择“其他场景”时自定义场景非空、关键词与产品名称非空、图片 URL 数量在 1 至 5 范围且每项非空。校验成功后返回成功结果;前端随后复用现有学生实训答案保存接口持久化 `step2Answer`。不新增标准答案或判题逻辑,因为本步骤采集的是学生自行选择的真实产品资料。
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
## 兼容性与验证
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
现有 `student_training_answer` 与步骤答案明细表继续承载 JSON,因此成绩、进度和导出链路保持兼容。演示模式沿用浏览器会话存储,并在本地执行同等的必填与图片数量校验,不发起上传或后端校验请求。
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
验证包括:后端服务与控制器的合法请求、缺失字段、其他场景未填写、图片数量越界和非学生权限测试;前端静态测试覆盖选择项、自定义场景条件渲染、上传数量限制、缩略图预览、数据保存与校验调用;再执行前端构建与后端测试。
|