接口联调工作记录
记录接口文档更新情况和页面实际调试情况
📊 总体进度
- 总接口数: 29
- 已完成: 28 (96.6%)
- 联调中: 0 (0%)
- 已废弃: 3 (10.3%)
- 待联调: 0 (0%)
- 后端开发中: 0 (0%)
- 规划中: 1 (3.4%)
- 有阻塞: 0
⏳ 后端开发中(0个)
暂无接口正在开发中。
⏳ 规划中(1个)
| 序号 | 接口名称 | 模块 | 说明 |
|---|---|---|---|
| 1 | getPlanStatusAPI |
计划书模块 | 轮询查询计划书生成状态 |
快速跳转:
📝 最近更新 (2026-02-13):
- ✅ 消息模块接口联调完成:
-
myListAPI(我的消息列表): 从"后端开发中" → "已完成" -
detailAPI(消息详情): 从"后端开发中" → "已完成"
-
- 📊 接口完成度更新:
- 总接口数:29
- 已完成:28 (96.6%)
- 后端开发中:0 (全部完成)
- ✅ 页面优化:
- 消息详情页布局优化:计划书信息长文本自动换行
- 消息详情页状态颜色标识:与计划列表页保持一致
📝 最近更新 (2026-02-12 14:30):
📝 最近更新 (2026-02-09 22:00):
- ✅ 3个待联调接口联调完成:
-
addAPI(埋点模块) - 埋点功能正常 -
weekHotAPI(文档模块) - 周热门资料加载正常 -
fileListAPI(文档模块) - 文档列表加载正常
-
- 📝 新增计划书模块:
- 接口1: 提交计划书表单(submitPlanAPI)- 待后端开发
- 接口2: 查询计划书状态(getPlanStatusAPI)- 规划中
- 接口3: 我的计划书列表(myPlanListAPI)- 后端开发中(新增)
- ⚠️ 数据单位规范:
- 金额字段单位为"分"(非"元")
- 存储格式:整数(如 10000 表示 100.00 元)
- 显示格式:除以 100 并保留 2 位小数
📝 最近更新 (2026-02-09 21:50):
📝 最近更新 (2026-02-09 21:40):
- 🎨 组件优化完成:
- AmountKeyboard 组件 UI 多次优化(极简专业风 → 现代科技风 → 清新毛玻璃)
- 从 SCSS 迁移到 TailwindCSS(84行样式代码替换为 Tailwind utility classes)
- 🧹 代码清理:
- 删除未使用的旧版本选择器组件(AgePicker、DatePicker、SelectPicker)
- 减少代码冗余 759 行
- 组件目录结构重组(分类目录:navigation, list, forms, cards, documents, plan)
- 🔧 路径修复:
- 修复 MaterialCard.vue 等 8 个文件的组件导入路径
- 构建验证通过(pnpm build:weapp)
📝 最近更新 (2026-02-06):
- ✅ 搜索模块联调完成:searchAPI 接口前端已完成集成
- 支持产品和资料的实时搜索
- 支持分页加载和触底加载更多
- 使用可复用卡片组件(MaterialCard、ProductCard)
- 🆕 新增可复用卡片组件:
- MaterialCard.vue - 资料卡片组件(272行)
- ProductCard.vue - 产品卡片组件(106行)
- 已应用到:搜索页、首页、周热门资料页
- 🔄 页面重构:搜索页、首页、周热门资料页使用新组件重构
- 减少代码重复:净减少238行
- 统一UI风格和交互逻辑
- ✅ 收藏模块联调完成:2个接口(delAPI、listAPI)前端已完成联调
- 收藏列表API:获取收藏数据,支持分页
- 取消收藏API:删除单个收藏项
- 添加收藏API:已实现,待页面集成
- ⏳ 文档模块联调中:fileListAPI 字段确认中,还在联调
- 📝 文档模块接口字段确认:
- weekHotAPI(本周热门资料):字段已确认,更新接口文档,待联调
- fileListAPI(文档列表):字段确认中,还在联调
- ✅ 收藏模块后端完成:3 个收藏接口(addAPI、delAPI、listAPI)后端已开发完成,前端待联调
- ✅ 埋点接口后端完成:埋点接口(addAPI)后端已开发完成,前端待联调
- ✅ 产品模块联调完成:产品列表接口(listAPI)联调成功
- 知识库页面:动态标签栏、分类筛选、滚动加载功能正常
- 首页热卖产品:产品列表正常显示
- 🆕 新增产品模块:添加产品列表接口(listAPI),前端集成完成,待联调
- 🆕 知识库页面 API 集成:动态标签栏、分类筛选、滚动加载功能
📝 接口联调明细
用户中心模块
接口 1: 小程序授权
接口信息
-
接口名称:
miniProgramAuthAPI -
接口路径:
/srv/?a=openid - 请求方法: POST
-
负责页面:
src/utils/openid.js(全局工具) - 负责人: 后端团队
接口文档更新记录
| 日期 | 版本 | 变更内容 | 变更原因 | 文档链接 |
|---|---|---|---|---|
| 2026-02-03 | v1.0 | 初始版本 | - | 查看 |
页面调试情况
| 日期 | 调试页面 | 问题记录 | 解决方案 | 状态 |
|---|---|---|---|---|
| 2026-02-03 | src/utils/openid.js |
无 | - | ✅ 已完成 |
接口状态: ✅ 已完成
备注:
- 调用
wx.login获取 code,后端返回 openid - 授权成功后自动将 sessionid 写入本地存储
- 如果用户已绑定账号,授权接口会自动登录并返回用户信息
- 实现位置:
src/utils/openid.js:miniProgramAuth()
接口 2: 查询登录状态
接口信息
-
接口名称:
loginStatusAPI -
接口路径:
/srv/?a=user&t=login_status - 请求方法: GET
-
负责页面:
src/stores/user.js(全局状态管理) - 负责人: 后端团队
接口文档更新记录
| 日期 | 版本 | 变更内容 | 变更原因 | 文档链接 |
|---|---|---|---|---|
| 2026-02-03 | v1.0 | 初始版本 | - | 查看 |
页面调试情况
| 日期 | 调试页面 | 问题记录 | 解决方案 | 状态 |
|---|---|---|---|---|
| 2026-02-03 | src/stores/user.js |
无 | - | ✅ 已完成 |
接口状态: ✅ 已完成
备注:
- 返回
is_login(是否登录) 和is_openid(是否已授权) 两个字段 - 小程序启动时调用,用于判断是否需要展示登录页
- 实现位置:
src/stores/user.js:checkLoginStatus()
接口 3: 获取个人信息
接口信息
-
接口名称:
getProfileAPI -
接口路径:
/srv/?a=user&t=get_profile - 请求方法: GET
-
负责页面:
src/pages/mine/index.vue,src/pages/avatar/index.vue,src/stores/user.js - 负责人: 后端团队
接口文档更新记录
| 日期 | 版本 | 变更内容 | 变更原因 | 文档链接 |
|---|---|---|---|---|
| 2026-02-03 | v1.2 | 修正 avatar 字段结构 | 修复头像显示问题 | 查看 |
| 2026-02-03 | v1.1 | 新增 employee_no 字段(工号) |
业务需求变更 | 查看 |
| 2026-02-03 | v1.0 | 初始版本 | - | 查看 |
页面调试情况
| 日期 | 调试页面 | 问题记录 | 解决方案 | 状态 |
|---|---|---|---|---|
| 2026-02-03 | src/pages/mine/index.vue |
页面显示 ID 字段,应显示工号 | 将 userInfo?.id 改为 userInfo?.employee_no
|
✅ 已完成 |
| 2026-02-03 | src/pages/mine/index.vue |
头像显示不正确 |
userInfo?.avatar_url 改为 userInfo?.avatar.src
|
✅ 已完成 |
| 2026-02-03 | src/pages/avatar/index.vue |
新增获取当前头像功能 | 页面加载时调用 getProfileAPI()
|
✅ 已完成 |
接口状态: ✅ 已完成
备注:
-
返回用户信息结构:
json { "user": { "id": 123, "name": "张三", "employee_no": "EMP001", "avatar": { "name": "avatar.png", "hash": "abc123", "src": "https://cdn.ipadbiz.cn/manulife/avatar.png", // ⭐ 头像URL "height": "200", "width": "200", "size": 10240 } } } -
重要修复:v1.2 版本修正了 avatar 字段结构
- ❌ 之前文档错误描述为
avatar_url(字符串) - ✅ 实际返回
avatar对象(包含完整信息)
- ❌ 之前文档错误描述为
-
访问方式:
- 头像URL:
user.avatar.src - 文件名:
user.avatar.name - 文件hash:
user.avatar.hash
- 头像URL:
- 在"我的"页面加载时调用
- 在"修改头像"页面加载时调用(获取当前头像)
- 401 自动跳转登录页(由 request.js 拦截器处理)
- 实现位置:
src/pages/mine/index.vue:fetchUserProfile()src/pages/avatar/index.vue:fetchCurrentAvatar()src/stores/user.js:fetchUserInfo()
接口 4: 退出登录
接口信息
-
接口名称:
logoutAPI -
接口路径:
/srv/?a=user&t=logout - 请求方法: POST
-
负责页面:
src/pages/mine/index.vue - 负责人: 后端团队
接口文档更新记录
| 日期 | 版本 | 变更内容 | 变更原因 | 文档链接 |
|---|---|---|---|---|
| 2026-02-03 | v1.0 | 初始版本 | - | 查看 |
页面调试情况
| 日期 | 调试页面 | 问题记录 | 解决方案 | 状态 |
|---|---|---|---|---|
| 2026-02-03 | src/pages/mine/index.vue |
无 | - | ✅ 已完成 |
接口状态: ✅ 已完成
备注:
- 解绑 openid 并清除登录状态
- 调用成功后清除本地状态并跳转到首页
- 实现位置:
src/pages/mine/index.vue:handleLogout()
接口 5: 登录(邮箱账号密码)
接口信息
-
接口名称:
loginAPI -
接口路径:
/srv/?a=user&t=login - 请求方法: POST
-
负责页面:
src/pages/login/index.vue - 负责人: 后端团队
接口文档更新记录
| 日期 | 版本 | 变更内容 | 变更原因 | 文档链接 |
|---|---|---|---|---|
| 2026-02-03 | v1.0 | 初始版本 | - | 查看 |
页面调试情况
| 日期 | 调试页面 | 问题记录 | 解决方案 | 状态 |
|---|---|---|---|---|
| 2026-02-03 | src/pages/login/index.vue |
无 | - | ✅ 已完成 |
| 2026-02-03 | src/pages/login/index.vue |
联调完成 | 接口正常工作 | ✅ 已完成 |
接口状态: ✅ 已完成
备注:
- 邮箱账号密码登录
- 参数:uuid(邮箱)、password(密码)
- 登录成功后获取用户信息
- 实现位置:
src/stores/user.js:login()
接口 6: 更新个人资料
接口信息
-
接口名称:
updateProfileAPI -
接口路径:
/srv/?a=user&t=update_profile - 请求方法: POST
-
负责页面:
src/pages/avatar/index.vue - 负责人: 后端团队
接口文档更新记录
| 日期 | 版本 | 变更内容 | 变更原因 | 文档链接 |
|---|---|---|---|---|
| 2026-02-03 | v1.2 | 修正请求参数结构 | 修复接口调用错误 | 查看 |
| 2026-02-03 | v1.0 | 初始版本 | - | 查看 |
页面调试情况
| 日期 | 调试页面 | 问题记录 | 解决方案 | 状态 |
|---|---|---|---|---|
| 2026-02-03 | src/pages/avatar/index.vue |
参数结构不正确 | 改为传递完整 avatar 对象 |
✅ 已完成 |
| 2026-02-03 | src/pages/avatar/index.vue |
字段映射错误 | 根据实际上传接口返回结构映射字段 | ✅ 已完成 |
| 2026-02-03 | src/pages/avatar/index.vue |
联调完成 | 接口正常工作,头像更新成功 | ✅ 已完成 |
接口状态: ✅ 已完成
备注:
-
请求参数结构(v1.2 修正):
javascript { avatar: { name: "文件名", hash: "文件hash", src: "https://cdn...", // 头像CDN URL height: "1770", // 字符串格式 width: "1766", // 字符串格式 size: 3806359 // 整数(字节) } } -
重要修复:v1.2 版本修正了请求参数结构
- ❌ 之前文档错误描述参数为
avatar_meta_id - ✅ 实际参数为完整的
avatar对象
- ❌ 之前文档错误描述参数为
-
完整流程:
- 选择图片 →
Taro.chooseImage - 上传到服务器 →
Taro.uploadFile(/admin/?m=srv&a=upload&image_audit=1) - 映射字段 → 根据实际上传接口返回结构
- 保存到服务器 →
updateProfileAPI({ avatar: {...} })
- 选择图片 →
-
字段映射关系:
-
name:data.data.file.name -
hash:data.data.res.hash -
src:data.data.src -
height:data.data.height或data.data.res.image_info.height -
width:data.data.width或data.data.res.image_info.width -
size:data.data.file.size或data.data.res.filesize
-
- 实现位置:
src/pages/avatar/index.vue:75-186 - API 文档:docs/api-specs/user/update_profile.md
通用模块
接口 1: 获取七牛上传 Token(已废弃)
接口信息
-
接口名称:
qiniuTokenAPI -
接口路径:
/srv/?a=upload - 请求方法: POST
-
负责页面:
src/pages/avatar/index.vue(已废弃) - 负责人: 后端团队
接口文档更新记录
| 日期 | 版本 | 变更内容 | 变更原因 | 文档链接 |
|---|---|---|---|---|
| 2026-02-03 | v1.0 | 初始版本 | - | 查看 |
| 2026-02-03 | v1.1 | 标记为已废弃 | 改用直接上传方式 | 查看 |
页面调试情况
| 日期 | 调试页面 | 问题记录 | 解决方案 | 状态 |
|---|---|---|---|---|
| 2026-02-03 | - | 后端开发中 | - | ⏳ 后端开发中 |
| 2026-02-03 | - | 方案调整 | 改用 Taro.uploadFile 直接上传 | ❌ 已废弃 |
接口状态: ❌ 已废弃
废弃原因:
- 头像上传改用
Taro.uploadFile直接上传到服务器(参考老来赛项目) - 不再需要七牛云上传流程
- 简化了上传流程,减少了接口调用次数
备注:
- 参数:filename(文件名)、file(图片 base64)
- 返回七牛上传 token、upload_url、filekey
- 实现位置:
src/api/common.js:32
接口 2: 保存文件信息(已废弃)
接口信息
-
接口名称:
saveFileAPI -
接口路径:
/srv/?a=upload&t=save_file - 请求方法: POST
-
负责页面:
src/pages/avatar/index.vue(已废弃) - 负责人: 后端团队
接口文档更新记录
| 日期 | 版本 | 变更内容 | 变更原因 | 文档链接 |
|---|---|---|---|---|
| 2026-02-03 | v1.0 | 初始版本 | - | 查看 |
| 2026-02-03 | v1.1 | 标记为已废弃 | 改用直接上传方式 | 查看 |
页面调试情况
| 日期 | 调试页面 | 问题记录 | 解决方案 | 状态 |
|---|---|---|---|---|
| 2026-02-03 | - | 后端开发中 | - | ⏳ 后端开发中 |
| 2026-02-03 | - | 方案调整 | 改用 Taro.uploadFile 直接上传 | ❌ 已废弃 |
接口状态: ❌ 已废弃
废弃原因:
- 头像上传改用
Taro.uploadFile直接上传到服务器 - 不再需要七牛云上传后保存文件信息的流程
备注:
- 参数:format(文件格式)、hash(文件 hash)、height(图片高)、width(图片宽)、filekey(文件 key)
- 七牛上传成功后,将文件信息保存到服务器
- 实现位置:
src/api/common.js:53
接口 3: 上传图片到七牛云(完整流程)(已废弃)
接口信息
-
接口名称:
uploadImageToQiniuAPI -
接口路径: 封装接口(内部调用
qiniuTokenAPI、七牛上传、saveFileAPI) - 请求方法: 封装函数
-
负责页面:
src/pages/avatar/index.vue(已废弃) - 负责人: 后端团队
接口文档更新记录
| 日期 | 版本 | 变更内容 | 变更原因 | 文档链接 |
|---|---|---|---|---|
| 2026-02-03 | v1.0 | 初始版本 | - | 查看 |
| 2026-02-03 | v1.1 | 标记为已废弃 | 改用直接上传方式 | 查看 |
页面调试情况
| 日期 | 调试页面 | 问题记录 | 解决方案 | 状态 |
|---|---|---|---|---|
| 2026-02-03 | src/pages/avatar/index.vue |
后端开发中 | - | ⏳ 后端开发中 |
| 2026-02-03 | src/pages/avatar/index.vue |
方案调整 | 改用 Taro.uploadFile 直接上传 | ❌ 已废弃 |
接口状态: ❌ 已废弃
废弃原因:
- 改用
Taro.uploadFile直接上传到服务器(/admin/?m=srv&a=upload&image_audit=1) - 不再需要七牛云上传流程,简化了实现
备注:
- 原完整上传流程:
- 读取本地文件为 base64
- 获取七牛上传 token(调用
qiniuTokenAPI) - 上传到七牛云(调用
qiniuUploadAPI) - 保存文件信息到服务器(调用
saveFileAPI)
- 新上传流程:
- 使用
Taro.chooseImage选择图片 - 使用
Taro.uploadFile直接上传到服务器 - 服务器返回图片 URL(支持图片审核)
- 使用
- 实现位置:
src/api/common.js:77-150(已废弃) - 新实现位置:
src/pages/avatar/index.vue:75-115
意见反馈模块
接口 1: 意见反馈列表
接口信息
-
接口名称:
listAPI -
接口路径:
/srv/?a=feedback&t=list - 请求方法: GET
-
负责页面:
src/pages/feedback-list/index.vue - 负责人: 后端团队
接口文档更新记录
| 日期 | 版本 | 变更内容 | 变更原因 | 文档链接 |
|---|---|---|---|---|
| 2026-02-03 | v1.0 | 初始版本 | - | 查看 |
页面调试情况
| 日期 | 调试页面 | 问题记录 | 解决方案 | 状态 |
|---|---|---|---|---|
| 2026-02-03 | src/pages/feedback-list/index.vue |
生命周期钩子导入错误 |
useShow → useDidShow
|
✅ 已解决 |
| 2026-02-03 | src/pages/feedback-list/index.vue |
onMounted 导入错误 |
从 Vue 导入而非 Taro | ✅ 已解决 |
| 2026-02-03 | src/pages/feedback-list/index.vue |
图片显示错误 |
images 改为数组格式处理 |
✅ 已解决 |
| 2026-02-03 | src/pages/feedback-list/index.vue |
NutUI Loading 组件报错 | 使用自定义 CSS spinner | ✅ 已解决 |
| 2026-02-03 | src/pages/feedback-list/index.vue |
联调完成 | 列表加载、分页、图片预览均正常 | ✅ 已完成 |
接口状态: ✅ 已完成
备注:
- 参数:page(页码,从0开始)、limit(每页数量)
- 返回反馈列表,包含状态、类别、图片、回复等信息
- 实现位置:
src/pages/feedback-list/index.vue:183-214 - 列表支持分页加载和滚动到底部自动加载更多
- 使用
useDidShow实现从提交页返回时自动刷新列表
接口 2: 提交意见反馈
接口信息
-
接口名称:
addAPI -
接口路径:
/srv/?a=feedback&t=add - 请求方法: POST
-
负责页面:
src/pages/feedback/index.vue - 负责人: 后端团队
接口文档更新记录
| 日期 | 版本 | 变更内容 | 变更原因 | 文档链接 |
|---|---|---|---|---|
| 2026-02-03 | v1.0 | 初始版本 | - | 查看 |
| 2026-02-03 | v1.1 | 更新接口名称 |
submitFeedbackAPI → addAPI
|
查看 |
| 2026-02-03 | v1.2 | 更新参数格式 |
images 改为数组格式 |
查看 |
| 2026-02-03 | v1.3 | 移除 contact 参数 | 不再需要联系方式字段 | 查看 |
页面调试情况
| 日期 | 调试页面 | 问题记录 | 解决方案 | 状态 |
|---|---|---|---|---|
| 2026-02-03 | src/pages/feedback/index.vue |
联调完成 | 支持类型选择、图片上传、表单验证 | ✅ 已完成 |
接口状态: ✅ 已完成
备注:
- 参数:category(反馈类别)、note(反馈内容)、images(图片数组,可选)
- 类别:1=功能建议, 3=问题反馈, 7=其他问题
- 图片上传限制:最多3张,每张不超过5MB
- 图片上传支持审核,不通过时提示用户
- 实现位置:
src/pages/feedback/index.vue:193-232
产品模块
接口 1: 产品列表
接口信息
-
接口名称:
listAPI -
接口路径:
/srv/?a=get_product&t=list - 请求方法: GET
-
负责页面:
src/pages/index/index.vue(首页热卖产品模块) - 负责人: 后端团队
接口文档更新记录
| 日期 | 版本 | 变更内容 | 变更原因 | 文档链接 |
|---|---|---|---|---|
| 2026-02-03 | v1.0 | 初始版本 | - | 查看 |
页面调试情况
| 日期 | 调试页面 | 问题记录 | 解决方案 | 状态 |
|---|---|---|---|---|
| 2026-02-03 | src/pages/index/index.vue |
联调完成 | 热卖产品列表、动态标签均正常 | ✅ 已完成 |
接口状态: ✅ 已完成
备注:
-
调用参数:
recommend: 'hot'(热卖产品) - 首页场景: 不传 limit、page、cid 参数,使用默认值
-
返回数据结构:
-
data.list[]- 产品列表 -
data.categories[]- 分类列表 -
data.total- 产品总数
-
-
产品字段:
-
id- 产品ID -
product_name- 产品名称 -
recommend- 推荐位 (normal-普通, hot-热卖) -
tags[]- 产品标签数组(包含 id、name、bg_color、text_color) -
cover_image- 产品封面图 -
categories[]- 产品所属分类
-
-
标签渲染: 使用 API 返回的
bg_color和text_color动态设置标签样式 -
实现位置:
src/pages/index/index.vue:250-262,src/pages/index/index.vue:52-92
接口 2: 产品详情
接口信息
-
接口名称:
detailAPI -
接口路径:
/srv/?a=get_product&t=detail - 请求方法: GET
-
负责页面:
src/pages/product-detail/index.vue - 负责人: 后端团队
接口文档更新记录
| 日期 | 版本 | 变更内容 | 变更原因 | 文档链接 |
|---|---|---|---|---|
| 2026-02-03 | v1.0 | 初始版本 | - | 查看 |
页面调试情况
| 日期 | 调试页面 | 问题记录 | 解决方案 | 状态 |
|---|---|---|---|---|
| 2026-02-03 | src/pages/product-detail/index.vue |
nut-loading 组件报错 | 改用纯 CSS 加载动画 | ✅ 已解决 |
| 2026-02-03 | src/pages/product-detail/index.vue |
联调完成 | 产品详情、富文本描述、附件列表均正常 | ✅ 已完成 |
接口状态: ✅ 已完成
备注:
-
调用参数:
i: productId(产品ID) -
返回数据结构:
-
product_name- 产品名称 -
product_description- 产品描述(富文本HTML) -
cover_image- 产品封面图 -
recommend- 推荐位 -
tags[]- 产品标签数组(包含 id、name、bg_color、text_color) -
documents[]- 附件列表 -
categories[]- 产品所属分类
-
-
富文本渲染: 使用
<rich-text>组件渲染product_description字段 -
附件显示:
- 文件名:
doc.file_name - 文件大小:
doc.file_size_formatted(已格式化,如 "72.61 KB") - 文件URL:
doc.file_url - 点击预览: 通过
useFileOperationcomposable 打开文档
- 文件名:
- 移除功能: 原有的收藏功能已移除(按钮和代码)
-
实现位置:
src/pages/product-detail/index.vue:135-162,src/pages/product-detail/index.vue:56-92
消息模块
接口 1: 我的消息列表
接口信息
-
接口名称:
myListAPI -
接口路径:
/srv/?a=website_msg&t=my_list - 请求方法: GET
-
负责页面:
src/pages/message/index.vue - 负责人: 后端团队
接口文档更新记录
| 日期 | 版本 | 变更内容 | 变更原因 | 文档链接 |
|---|---|---|---|---|
| 2026-02-03 | v1.0 | 初始版本 | - | 查看 |
| 2026-02-13 | v1.1 | 更新 API 为已联调状态 | 接口调试完成 | 查看 |
页面调试情况
| 日期 | 调试页面 | 问题记录 | 解决方案 | 状态 |
|---|---|---|---|---|
| 2026-02-03 | - | 后端开发中 | - | ⏳ 后端开发中 |
| 2026-02-13 | src/pages/message/index.vue |
无 | - | ✅ 已完成 |
接口状态: ✅ 已完成
备注:
- 参数:page(页码)、limit(每页数量)
- 返回用户消息列表
- API 已可用,前端集成完成
接口 2: 消息详情
接口信息
-
接口名称:
detailAPI -
接口路径:
/srv/?a=website_msg&t=detail - 请求方法: GET
-
负责页面:
src/pages/message-detail/index.vue - 负责人: 后端团队
接口文档更新记录
| 日期 | 版本 | 变更内容 | 变更原因 | 文档链接 |
|---|---|---|---|---|
| 2026-02-03 | v1.0 | 初始版本 | - | 查看 |
| 2026-02-13 | v1.1 | 更新 API 为已联调状态 | 接口调试完成 | 查看 |
页面调试情况
| 日期 | 调试页面 | 问题记录 | 解决方案 | 状态 |
|---|---|---|---|---|
| 2026-02-03 | - | 后端开发中 | - | ⏳ 后端开发中 |
| 2026-02-13 | src/pages/message-detail/index.vue |
无 | - | ✅ 已完成 |
接口状态: ✅ 已完成
备注:
- 参数:i(消息ID)
- 返回消息详情,包含 title 字段
- API 已可用,前端集成完成,支持计划书关联展示
产品模块
接口 1: 产品列表
接口信息
-
接口名称:
listAPI -
接口路径:
/srv/?a=get_product&t=list - 请求方法: GET
-
负责页面:
src/pages/knowledge-base/index.vue,src/pages/index/index.vue - 负责人: 后端团队
接口文档更新记录
| 日期 | 版本 | 变更内容 | 变更原因 | 文档链接 |
|---|---|---|---|---|
| 2026-02-03 | v1.0 | 初始版本 | - | 查看 |
页面调试情况
| 日期 | 调试页面 | 问题记录 | 解决方案 | 状态 |
|---|---|---|---|---|
| 2026-02-03 | src/pages/knowledge-base/index.vue |
前端集成完成,待联调 | API 接口开发中 | ⏳ 待联调 |
| 2026-02-03 | src/pages/knowledge-base/index.vue |
联调完成 | 接口正常工作,分类筛选、分页加载均正常 | ✅ 已完成 |
| 2026-02-03 | src/pages/index/index.vue |
联调完成 | 热卖产品列表正常显示 | ✅ 已完成 |
接口状态: ✅ 已完成
数据结构:
{
"code": 1,
"data": {
"categories": [
{ "id": 2769851, "name": "分类名称" }
],
"list": [
{
"id": 2769856,
"product_name": "产品名称",
"recommend": "hot", // normal-普通, hot-热卖
"form_sn": "customize_jsj_pnzuky",
"created_time": "2026-02-03 10:36:29",
"categories": [
{ "id": "2769851", "name": "分类名称" }
],
"tags": [
{ "id": "2769847", "name": "标签名", "bg_color": "#3e5160", "text_color": "#ffffff" }
],
"cover_image": "https://cdn.ipadbiz.cn/..."
}
],
"total": 3
}
}
备注:
-
参数:
-
page: 页码(从 0 开始) -
limit: 每页数量(默认 10) -
cid: 分类 ID(可选,用于筛选) -
recommend: 推荐位(可选,normal/hot)
-
-
实现位置:
-
src/pages/knowledge-base/index.vue:141-192(fetchProducts函数) -
src/pages/index/index.vue:98-130(热卖产品)
-
-
功能特性:
- 动态标签栏:从
data.categories生成 - 分类筛选:点击分类传递
cid参数,重置分页状态 - 滚动加载:使用
scroll-view组件,监听@scrolltolower事件 - 严格遵循 API 字段映射:
-
product_name(产品名称) -
cover_image(封面图) -
recommend(推荐状态: hot/normal) -
tags(动态标签,含 bg_color/text_color)
- 动态标签栏:从
收藏模块
接口 1: 添加收藏
接口信息
-
接口名称:
addAPI -
接口路径:
/srv/?a=favorite&t=add - 请求方法: POST
- 负责页面: 待确认(产品详情页、资料详情页等)
- 负责人: 后端团队
接口文档更新记录
| 日期 | 版本 | 变更内容 | 变更原因 | 文档链接 |
|---|---|---|---|---|
| 2026-02-05 | v1.2 | 更新状态:前端API已实现,待页面集成 | API实现完成 | 查看 |
| 2026-02-04 | v1.1 | 更新状态:后端已完成,前端待联调 | 后端开发完成 | 查看 |
| 2026-02-03 | v1.0 | 初始版本 | - | 查看 |
页面调试情况
| 日期 | 调试页面 | 问题记录 | 解决方案 | 状态 |
|---|---|---|---|---|
| 2026-02-05 | src/api/favorite.js |
无 | API已实现,待页面调用 | ⏳ 待页面集成 |
| 2026-02-04 | - | 后端已完成,前端待联调 | - | ⏳ 待联调 |
| 2026-02-03 | - | 后端开发中 | - | ⏳ 后端开发中 |
接口状态: ⏳ 待页面集成
备注:
- 参数:
meta_id(文件ID) - 用于收藏产品或资料
- 后端接口已完成
- 前端API已实现:
src/api/favorite.js:addAPI - 待产品详情页、资料详情页集成调用
接口 2: 取消收藏
接口信息
-
接口名称:
delAPI -
接口路径:
/srv/?a=favorite&t=del - 请求方法: POST
-
负责页面:
src/pages/favorites/index.vue(我的收藏页面) - 负责人: 后端团队
接口文档更新记录
| 日期 | 版本 | 变更内容 | 变更原因 | 文档链接 |
|---|---|---|---|---|
| 2026-02-05 | v1.2 | 前端联调完成 | 收藏页面已接入 | 查看 |
| 2026-02-04 | v1.1 | 更新状态:后端已完成,前端待联调 | 后端开发完成 | 查看 |
| 2026-02-03 | v1.0 | 初始版本 | - | 查看 |
页面调试情况
| 日期 | 调试页面 | 问题记录 | 解决方案 | 状态 |
|---|---|---|---|---|
| 2026-02-05 | src/pages/favorites/index.vue |
无 | 接入delAPI,删除功能正常 | ✅ 已完成 |
| 2026-02-04 | - | 后端已完成,前端待联调 | - | ⏳ 待联调 |
| 2026-02-03 | - | 后端开发中 | - | ⏳ 后端开发中 |
接口状态: ✅ 已完成
备注:
- 参数:
meta_id(文件ID) - 用于取消收藏的产品或资料
- 后端接口已完成
- 前端已集成到收藏页面:
src/pages/favorites/index.vue:onDelete() - 删除成功后从列表中移除该项
接口 3: 收藏列表
接口信息
-
接口名称:
listAPI -
接口路径:
/srv/?a=favorite&t=list - 请求方法: GET
-
负责页面:
src/pages/favorites/index.vue(我的收藏页面) - 负责人: 后端团队
接口文档更新记录
| 日期 | 版本 | 变更内容 | 变更原因 | 文档链接 |
|---|---|---|---|---|
| 2026-02-05 | v1.2 | 前端联调完成 | 收藏页面已接入 | 查看 |
| 2026-02-04 | v1.1 | 更新状态:后端已完成,前端待联调 | 后端开发完成 | 查看 |
| 2026-02-03 | v1.0 | 初始版本 | - | 查看 |
页面调试情况
| 日期 | 调试页面 | 问题记录 | 解决方案 | 状态 |
|---|---|---|---|---|
| 2026-02-05 | src/pages/favorites/index.vue |
无 | 接入listAPI,列表展示正常 | ✅ 已完成 |
| 2026-02-04 | - | 后端已完成,前端待联调 | - | ⏳ 待联调 |
| 2026-02-03 | - | 后端开发中 | - | ⏳ 后端开发中 |
接口状态: ✅ 已完成
备注:
- 参数:
-
k(可选):搜索文件名 -
page:页码,从 0 开始 -
limit:每页数量
-
- 返回数据结构:
javascript { code: 1, data: { list: [ { meta_id: 123, // 文件ID name: "文件名称", // 文件名称 src: "https://...", // 文件URL created_time: "2026-02-03 12:00:00", // 收藏时间 size: "1.2MB" // 文件大小 } ] } } - 后端接口已完成
- 前端已集成到收藏页面:
src/pages/favorites/index.vue:fetchFavoritesList() - 移除了分类Tabs逻辑,简化为统一列表展示
- 支持加载状态、空状态、错误处理
文档模块
接口 1: 本周热门资料
接口信息
-
接口名称:
weekHotAPI -
接口路径:
/srv/?a=file&t=week_hot - 请求方法: GET
-
负责页面:
src/pages/index/index.vue,src/pages/week-hot-material/index.vue - 负责人: 后端团队
接口文档更新记录
| 日期 | 版本 | 变更内容 | 变更原因 | 文档链接 |
|---|---|---|---|---|
| 2026-02-09 | v1.1 | 联调完成 | 前端集成调用,接口正常工作 | 查看 |
| 2026-02-04 | v1.0 | 字段确认,更新接口文档 | 后端确认字段结构 | 查看 |
| 2026-02-04 | v0.1 | 初稿版本 | 后端字段未确定,待联调确认 | 查看 |
页面调试情况
| 日期 | 调试页面 | 问题记录 | 解决方案 | 状态 |
|---|---|---|---|---|
| 2026-02-09 | src/pages/index/index.vue |
无 | 首页热门资料加载正常 | ✅ 已完成 |
| 2026-02-09 | src/pages/week-hot-material/index.vue |
无 | 周热门资料页加载正常 | ✅ 已完成 |
| 2026-02-04 | - | 后端字段已确认 | 待前端集成联调 | ⏳ 待联调 |
接口状态: ✅ 已完成
备注:
-
参数:
-
page: 页码,从 0 开始 -
limit: 每页数量
-
-
返回数据结构:
javascript { code: 1, data: { list: [ { meta_id: 123, // 文件ID name: "文件名称", // 文件名称 src: "https://...", // 文件URL size: "1.2MB", // 文件大小 read_people_count: 100, // 学习人数 read_people_percent: 85.5 // 学习人数比例 } ] } } - 字段确认状态:✅ 字段已确认
-
实现位置:
src/api/file.js:weekHotAPI-
src/pages/index/index.vue:288(调用位置) -
src/pages/week-hot-material/index.vue:128(调用位置)
接口 2: 文档列表
接口信息
-
接口名称:
fileListAPI -
接口路径:
/srv/?a=file&t=file_list - 请求方法: GET
-
负责页面:
src/pages/material-list/index.vue,src/pages/category-list/index.vue - 负责人: 后端团队
接口文档更新记录
| 日期 | 版本 | 变更内容 | 变更原因 | 文档链接 |
|---|---|---|---|---|
| 2026-02-09 | v1.1 | 联调完成 | 前端集成调用,接口正常工作 | 查看 |
| 2026-02-04 | v1.0 | 字段确认,更新接口文档 | 后端确认字段结构 | 查看 |
| 2026-02-04 | v0.1 | 初稿版本 | 后端字段未确定,待联调确认 | 查看 |
页面调试情况
| 日期 | 调试页面 | 问题记录 | 解决方案 | 状态 |
|---|---|---|---|---|
| 2026-02-09 | src/pages/material-list/index.vue |
无 | 资料列表页加载正常 | ✅ 已完成 |
| 2026-02-09 | src/pages/category-list/index.vue |
无 | 分类列表页加载正常 | ✅ 已完成 |
| 2026-02-04 | - | 后端字段已确认 | 待前端集成联调 | ⏳ 待联调 |
接口状态: ✅ 已完成
备注:
-
参数:
-
client_id: 主体 ID(可选) -
cid: 分类 ID(可选) -
page: 页码(从 0 开始) -
limit: 每页数量
-
-
返回数据结构:
javascript { code: 1, data: { cate: { id: 2769851, // 分类id category_name: "分类名称", // 分类名称 category_parent: 0, // 分类父级 icon: "https://..." // 分类图标 }, children: [ { id: 2769852, // 二级分类id category_name: "二级分类名", category_parent: 2769851, // 二级分类父级id icon: "https://...", // 二级分类图标 list: [...], // 二级分类的附件列表 children: [...] // 三级分类 } ], list: [ { name: "附件名称", // 附件名称 value: "https://...", // 附件地址 extension: "pdf", // 后缀名 post_date: "2026-02-04", // 发布时间 size: "2.5MB", // 附件大小 id: "12345" // 附件id } ], total: 100, // 主分类附件数量 max_level: "3" // 层级 } } - 字段确认状态:✅ 字段已确认
-
接口路径更正:
/srv/?a=file&t=file_list(之前错误为/srv/?a=get_file_list&t=file_list) -
实现位置:
src/api/file.js:fileListAPI-
src/pages/material-list/index.vue:290(调用位置) -
src/pages/category-list/index.vue:112(调用位置)
搜索模块
接口 1: 搜索(产品、资料)
接口信息
-
接口名称:
searchAPI -
接口路径:
/srv/?a=search - 请求方法: GET
-
负责页面:
src/pages/search/index.vue - 负责人: 后端团队
接口文档更新记录
| 日期 | 版本 | 变更内容 | 变更原因 | 文档链接 |
|---|---|---|---|---|
| 2026-02-06 | v1.0 | 初始版本 | 前端集成完成,联调成功 | 查看 |
页面调试情况
| 日期 | 调试页面 | 问题记录 | 解决方案 | 状态 |
|---|---|---|---|---|
| 2026-02-06 | src/pages/search/index.vue |
无 | 实时搜索、分页加载均正常 | ✅ 已完成 |
接口状态: ✅ 已完成
备注:
-
参数:
-
k: 搜索关键字(必需) -
type: 搜索类型,product=产品,file=资料(必需) -
page: 页码,从 0 开始 -
limit: 每页数量(默认 10)
-
-
返回数据结构:
javascript { code: 1, data: { list: [...], // 搜索结果列表 total: 100 // 总数 } } -
产品字段:
-
id- 产品ID -
product_name- 产品名称 -
tags[]- 产品标签(含 bg_color/text_color) -
cover_image- 封面图 -
form_sn- 计划书模板标识
-
-
资料字段:
-
id- 文件ID -
title- 文件标题 -
fileName- 文件名 -
fileSize- 文件大小 -
extension- 文件扩展名 -
downloadUrl- 下载链接 -
learners- 学习人数 -
readPeoplePercent- 学习人数比例 -
collected- 是否已收藏
-
-
实现位置:
src/pages/search/index.vue:204-265(performSearch函数) -
功能特性:
- 实时搜索:输入关键字后自动调用API
- 双Tab切换:支持产品和资料切换
- 分页加载:触底自动加载更多
- 结果统计:显示找到的相关结果数量
- 动画效果:列表项逐个淡入动画
埋点模块
接口 1: 添加埋点
接口信息
-
接口名称:
addAPI -
接口路径:
/srv/?a=event&t=add - 请求方法: POST
-
负责页面:
src/composables/useEventTracking.js(埋点功能) - 负责人: 后端团队
接口文档更新记录
| 日期 | 版本 | 变更内容 | 变更原因 | 文档链接 |
|---|---|---|---|---|
| 2026-02-09 | v1.1 | 联调完成 | 前端集成调用,接口正常工作 | 查看 |
| 2026-02-04 | v1.0 | 初始版本 | 后端已完成,前端待联调 | 查看 |
页面调试情况
| 日期 | 调试页面 | 问题记录 | 解决方案 | 状态 |
|---|---|---|---|---|
| 2026-02-09 | src/composables/useEventTracking.js |
无 | 埋点功能正常,接口调用成功 | ✅ 已完成 |
| 2026-02-04 | - | 后端已完成,前端待联调 | - | ⏳ 待联调 |
接口状态: ✅ 已完成
备注:
- 参数:
-
type(类型):READ_FILE=阅读素材 -
object_id(文件ID)
-
- 用于记录用户行为埋点
- 后端接口已完成
- 前端已集成到
useEventTracking.jscomposable - 实现位置:
src/api/event.js:addAPI,src/composables/useEventTracking.js:76
模块模板
复制下方模板添加新接口:
#### 接口 X: [接口名称]
**接口信息**
- **接口名称**: `xxx`
- **接口路径**: `/srv/?a=xxx`
- **请求方法**: GET/POST
- **负责页面**: `src/pages/xxx/index.vue`
- **负责人**: XXX
**接口文档更新记录**
| 日期 | 版本 | 变更内容 | 变更原因 | 文档链接 |
|------|------|---------|---------|---------|
| YYYY-MM-DD | vX.X | - | - | [查看](#) |
**页面调试情况**
| 日期 | 调试页面 | 问题记录 | 解决方案 | 状态 |
|------|---------|---------|---------|------|
| YYYY-MM-DD | `pages/xxx/index.vue` | - | - | ⏳ 未开始 |
**接口状态**: ⏳ 未开始
**备注**:
-
🔍 问题汇总
高优先级问题 🔴
| 问题描述 | 接口名称 | 负责人 | 预计解决时间 |
|---|---|---|---|
| 后端接口还有点问题,接口尚未完全可用 |
addAPI, listAPI
|
后端开发 | 待定 |
中优先级问题 🟡
| 问题描述 | 接口名称 | 负责人 | 预计解决时间 |
|---|---|---|---|
| 消息模块接口尚未编写 |
myListAPI, detailAPI
|
后端开发 | 待定 |
低优先级问题 🟢
| 问题描述 | 接口名称 | 负责人 | 预计解决时间 |
|---|---|---|---|
| - | - | - | - |
📈 进度追踪
本周进度 (2026-02-03 ~ 2026-02-09)
- 新增接口: 2
- 完成联调: 3
- 组件优化: 2
- 代码清理: 1
- 已废弃: 0
- 待联调: 7
- 后端开发中: 2
- 规划中: 1
历史进度
| 周 | 完成数 | 新增数 | 废弃数 | 问题数 |
|---|---|---|---|---|
| 2026-02-03 ~ 2026-02-09 | 3 | 2 | 0 | 0 |
| 2026-01-27 ~ 2026-02-04 | 12 | 17 | 3 | 0 |
计划书模块
接口 1: 提交计划书表单
接口信息
-
接口名称:
submitPlanAPI(待实现) -
接口路径:
/srv/?a=submit_plan(待确认) - 请求方法: POST
-
负责页面:
src/components/PlanFormContainer.vue - 负责人: 后端团队
接口文档更新记录
| 日期 | 版本 | 变更内容 | 变更原因 | 文档链接 |
|---|---|---|---|---|
| 2026-02-09 | v1.0 | 初始版本 | 前端表单已完成,待后端接口开发 | 查看 |
页面调试情况
| 日期 | 调试页面 | 问题记录 | 解决方案 | 状态 |
|---|---|---|---|---|
| 2026-02-09 | src/components/PlanFormContainer.vue |
表单提交时数据为空 | 修复 submit() 时序问题,移除立即重置 | ✅ 已解决 |
| 2026-02-09 | src/components/PlanFormContainer.vue |
金额显示为 10000 而非 100.00 | 添加 formatAmounts() 格式化显示(分 → 元) | ✅ 已解决 |
| 2026-02-10 | src/api/plan.js |
后端接口已修复,联调成功 | 接口正常工作 | ✅ 已完成 |
| 2026-02-11 | src/components/PlanFormContainer.vue |
前端优化成功判断逻辑 | 修改成功判断从 res.code === 1 改为同时检查 res.code === 1 和 res.data?.order_id
|
✅ 已完成 |
| 2026-02-11 | src/components/PlanFormContainer.vue |
错误信息路径修正 | 修改错误信息从 res.data?.message 改为 res.data?.msg,添加降级方案 |
✅ 已完成 |
| 2026-02-11 |
src/pages/product-detail/index.vue, src/pages/search/index.vue, src/pages/product-center/index.vue, src/pages/index/index.vue
|
统一页面处理逻辑 | 修改所有页面的 handlePlanSubmit 函数,实现完整的错误处理和导航 |
✅ 已完成 |
接口状态: ✅ 已完成
✅ 功能说明:
- 接口已正常工作,支持计划书表单提交
- 前端已完成字段映射(smoker → smoking_status)
- 前端已完成术语统一("客户姓名" → "申请人")
数据单位规范(重要):
- 金额字段单位: 分(非元)
- 金额字段列表:
coverage,premium,amount,total_amount - 存储格式: 整数(如
10000表示 100.00 元) - 显示格式: 除以 100 并保留 2 位小数
转换公式:
// 元 → 分(提交给后端)
const cents = Math.round(yuan * 100)
// 分 → 元(前端显示)
const yuan = (cents / 100).toFixed(2)
请求参数格式(待确认):
{
product_id: 1, // 产品ID
form_sn: 'life-insurance-wiop3e', // 表单模版标识
form_data: { // 表单数据
coverage: 10000, // 保额(分)← 注意单位
gender: 'male',
age: 30,
birthday: '1994-01-01',
smoker: false,
payment_period: 20
}
}
响应格式(待确认):
{
code: 1, // 1 表示成功
data: {
plan_id: 123, // 计划书ID
status: 'processing', // 状态:processing(生成中) | generated(已完成)
download_url: '' // 下载链接(生成完成后才有)
},
msg: '提交成功'
}
备注:
- ⚠️ 重要: 所有金额字段内部存储单位都是"分",不是"元"
- ✅ 前端已实现表单验证和数据格式化
- ✅ 日志输出同时显示格式化数据(元)和原始数据(分),便于调试
- ⏳ 后端接口待开发,当前仅为前端测试
- 📝 详细注意事项:接口联调注意事项
实现位置:
-
src/components/PlanFormContainer.vue:250-285- submit() 函数 -
src/components/PlanFormContainer.vue:220-241- formatAmounts() 函数 -
src/components/PlanFields/AmountKeyboard.vue- 金额输入组件
接口 2: 查询计划书状态(待实现)
接口信息
-
接口名称:
getPlanStatusAPI(待实现) -
接口路径:
/srv/?a=get_plan_status(待确认) - 请求方法: GET
- 负责页面: 待确认(计划书结果页?)
- 负责人: 后端团队
接口文档更新记录
| 日期 | 版本 | 变更内容 | 变更原因 | 文档链接 |
|---|---|---|---|---|
| 2026-02-09 | v1.0 | 初始版本 | 接口规划 | 查看 |
页面调试情况
| 日期 | 调试页面 | 问题记录 | 解决方案 | 状态 |
|---|---|---|---|---|
| - | - | - | - | ⏳ 未开始 |
接口状态: ⏳ 未开始
备注:
- 用于轮询查询计划书生成状态
- 参数:
plan_id(计划书ID) - 返回生成状态和下载链接
- 如需轮询功能,建议使用
setInterval每 2-3 秒查询一次
接口 3: 我的计划书列表
接口信息
-
接口名称:
listAPI(新增计划书列表) -
接口路径:
/srv/?a=proposal&t=list - 请求方法: GET
-
负责页面:
src/pages/plan/index.vue(我的计划书页面) - 负责人: 后端团队
接口文档更新记录
| 日期 | 版本 | 变更内容 | 变更原因 | 文档链接 |
|---|---|---|---|---|
| 2026-02-10 | v1.1 | 更新状态:联调中,后端还有点问题 | 开始联调调试 | 查看 |
| 2026-02-09 | v1.0 | 初始版本 | 发现页面使用Mock数据,缺少API接口 | 查看 |
页面调试情况
| 日期 | 调试页面 | 问题记录 | 解决方案 | 状态 |
|---|---|---|---|---|
| 2026-02-09 | src/pages/plan/index.vue |
使用Mock数据(allList) | 替换为真实API调用 | ✅ 已完成 |
| 2026-02-10 | src/pages/plan/index.vue |
数据结构与API文档不一致 | 调整transformApiItem处理对象数组 | ✅ 已完成 |
| 2026-02-10 | src/pages/plan/index.vue |
状态映射错误(3=生成中,5=已生成) | 修正mapOrderStatus函数 | ✅ 已完成 |
| 2026-02-10 | src/pages/plan/index.vue |
后端不支持order_status查询参数 | 实现前端过滤作为临时方案 | ⚠️ 待后端修复 |
接口状态: ⚠️ 待后端修复
⚠️ 当前问题:
- 🔴 后端API缺少关键查询参数:
-
分页参数:
page和limit(当前不支持) -
状态筛选参数:
order_status(当前不支持) -
搜索参数:
keyword(可能不支持)
-
分页参数:
- 后端API当前只支持固定的路由参数(
f,a,t),不支持任何查询参数 -
前端已实现临时解决方案(前端过滤),但存在以下问题:
- 性能问题:需要加载全部数据后再筛选
- 分页不准确:可能加载的页面数据不包含指定状态的记录
- 内存占用:所有数据都在前端
-
⚠️ 状态值不确定:
- 当前前端推测:
order_status = "3"= 生成中,order_status = "5"= 已生成 - 实际状态值需要与后端确认
- 请后端提供准确的状态值定义文档
- 当前前端推测:
✅ 已实现的前端解决方案:
// API调用(不传order_status)
const res = await listAPI({ page, limit })
// 前端过滤(临时方案)
if (activeTabId.value !== '') {
apiList = apiList.filter(item => item.order_status === activeTabId.value)
}
- 位置:
src/pages/plan/index.vue:216-275
备注:
- 功能: 获取用户提交的计划书列表
-
⚠️ 当前不支持任何查询参数:后端API只接受固定路由参数(
f,a,t) -
🔴 缺少的关键参数(需后端添加):
-
page- 页码(从 1 开始) -
limit- 每页数量(默认 20) -
order_status- 订单状态筛选(状态值需与后端确认) -
keyword- 搜索关键字(可选)
-
-
实际返回数据结构(已验证):
javascript { code: 1, data: { list: [ { id: 3149353, customer_name: "测试人1", // 申请人 product_name: "终身寿险尊享版", // 产品名 categories: [{ // 分类(对象数组) id: "3129418", name: "人寿产品" }], created_time: "2026-02-10 18:39:33", order_status: "3", // "3"=生成中, "5"=已生成 proposal_files: [{ // 生成的计划书文件 file_name: "preview.pdf", file_url: "https://cdn.ipadbiz.cn/..." }] } ], total: "2" } } -
实现位置:
src/pages/plan/index.vue:216-275- fetchPlanList函数 -
数据转换:
src/pages/plan/index.vue:180-201- transformApiItem函数
📌 快速索引
按状态查看
- ✅ 已完成 - 6个接口
- ✅ 已完成 - 2个接口
- ✅ 已完成 - 1个接口
- ✅ 已完成 - 1个接口
- ✅ 已完成 - 3个接口
- ❌ 已废弃 - 3个接口
- ⏳ 待联调 - 1个接口
- ⏳ 待联调 - 2个接口
- ⏳ 后端开发中 - 2个接口
- ⏳ 后端开发中 - 1个接口(我的计划书列表)
- ⏳ 规划中 - 1个接口
按模块查看
- 用户中心 - ✅ 6个已完成
- 通用 - ❌ 3个已废弃
- 意见反馈 - ✅ 2个已完成
- 产品 - ✅ 1个已完成
- 搜索 - ✅ 1个已完成
- 收藏 - ✅ 3个已完成
- 埋点 - ⏳ 1个待联调
- 文档 - ⏳ 2个待联调
- 消息 - ⏳ 2个后端开发中
- 计划书 - ⏳ 1个后端开发中 + 1个规划中
- 知识库 - ⏳ 未开始
- 家办 - ⏳ 未开始
- 签单 - ⏳ 未开始
按负责人查看
📖 使用说明
状态标识
- ✅ 已完成 - 接口正常工作,测试通过
- 🔄 联调中 - 正在调试,部分功能可用
- ⏳ 未开始 - 尚未开始联调
- ⚠️ 有阻塞 - 遇到阻塞问题,无法继续
优先级标识
- 🔴 高优先级 - 影响核心功能,需要立即处理
- 🟡 中优先级 - 影响次要功能,需要尽快处理
- 🟢 低优先级 - 优化类问题,可以稍后处理
记录时机
- 接口文档更新时: 记录到"接口文档更新记录"表格
- 页面联调时: 记录到"页面调试情况"表格
- 发现问题: 记录到对应接口的调试情况,并同步到"问题汇总"
- 解决问题: 更新调试情况的状态,并从"问题汇总"中移除或标记为已解决
维护建议
- 定期更新: 每天结束前更新当天的工作记录
- 同步会议: 在前后端对接会议上,根据此文档讨论问题
- 版本控制: 重要的接口变更应该提交到 Git,便于追溯
最后更新时间: 2026-02-10 15:20 文档版本: v2.9 更新内容:
- 🔄 计划书模块状态更新:
-
addAPI(新增计划书): 从"后端开发中" → "联调中" -
listAPI(计划书列表): 从"后端开发中" → "联调中" - ⚠️ 问题:后端还有点问题,正在联调调试中
-
- 📝 新增接口状态:"联调中"(2个接口)
- 🔴 新增问题汇总:记录计划书接口联调问题
- 📊 进度统计更新:
- 总接口数:29
- 已完成:24 (82.8%)
- 联调中:2 (6.9%) ← 新增
- 后端开发中:2 (6.9%) ← 减少
历史版本:
- v2.8 (2026-02-09 21:40): 新增计划书模块
- v2.6 (2026-02-09 00:40): 新增计划书模块
历史版本:
- v2.6 (2026-02-09 00:40): 新增计划书模块
- v2.5 (2026-02-06): 搜索模块联调完成,新增可复用卡片组件
- v2.1 (2026-02-03 21:00): 产品模块联调完成
- v2.0 (2026-02-03 20:40): 新增产品模块
- v1.9 (2026-02-03 20:30): 新增收藏模块
- v1.8 (2026-02-03 20:00): 用户中心模块头像接口修复
- v1.7 (2026-02-03 23:30): 产品模块联调完成
- v1.6 (2026-02-02): 意见反馈模块联调完成