CHANGELOG.md 14.4 KB

[2026-02-14] - 订单状态常量化

重构

  • 新增 src/config/constants/orderStatus.js 统一管理订单状态
  • 提取 mapOrderStatusgetStatusTextisValidStatus 工具函数
  • 重构 usePlanView.js 使用常量替代硬编码状态值

详细信息

  • 影响文件: src/composables/usePlanView.js, src/config/constants/orderStatus.js
  • 技术栈: Vue 3, Taro
  • 测试状态: 已通过
  • 备注: 提升代码可维护性,避免魔法数字

[2026-02-14] - 人寿/重疾模板Schema化

更新

  • 人寿与重疾模板改为 Schema 驱动渲染与校验
  • 人寿/重疾产品配置增加 form_schema 入口
  • 使用文档补充人寿/重疾示例
  • README 同步最新更新

详细信息

  • 影响文件: src/config/plan-templates.js, src/components/plan/PlanTemplates/LifeInsuranceTemplate.vue, src/components/plan/PlanTemplates/CriticalIllnessTemplate.vue, docs/plan/plan-form-schema-usage.md, README.md
  • 技术栈: Vue 3, Taro 4
  • 测试状态: 待测试
  • 备注: 保障类产品字段新增仅需调整 Schema 配置

[2026-02-14] - 计划书Schema注释与使用文档

[2026-02-14] - 计划书表单重构

重构

  • 重构 PlanFormContainer.vue 的 submit 函数,使用模板配置的 submit_mapping
  • 新增完整的储蓄计划书模板 SavingsTemplate.vue
  • 在 plan-templates.js 中添加详细的字段映射配置

文档

  • 更新 README.md 和 CHANGELOG.md
  • 新增 plan-form-schema-usage.md 使用说明文档

详细信息

  • 影响文件: src/components/plan/PlanFormContainer.vue, src/components/plan/PlanTemplates/SavingsTemplate.vue, src/config/plan-templates.js, docs/plan/plan-form-schema-usage.md, README.md
  • 技术栈: Vue 3, Taro 4
  • 测试状态: 待测试
  • 备注: Schema 配置与提交映射均有详细说明

更新

  • 补充计划书Schema与提交映射的详细注释与JSDoc
  • 新增计划书Schema使用文档,便于新增保险类型
  • README 补充相关文档入口

详细信息

  • 影响文件: src/config/plan-templates.js, src/components/plan/PlanTemplates/SavingsTemplate.vue, src/components/plan/PlanFormContainer.vue, docs/plan/plan-form-schema-usage.md, README.md
  • 技术栈: Vue 3, Taro 4
  • 测试状态: 待测试
  • 备注: Schema 配置与提交映射均有详细说明

[2026-02-14] - 计划书表单 Schema 化(方案2)

更新

  • 储蓄类模板使用表单 Schema 驱动字段渲染与校验
  • 提交字段映射迁移到模板配置,统一处理金额转换
  • 提取模式切换清空逻辑改为配置驱动

详细信息

  • 影响文件: src/config/plan-templates.js, src/components/plan/PlanTemplates/SavingsTemplate.vue, src/components/plan/PlanFormContainer.vue, README.md
  • 技术栈: Vue 3, Taro 4
  • 测试状态: 待测试
  • 备注: 储蓄类产品字段新增仅需调整配置

[2026-02-14] - 文档对齐与业务说明更新

更新

  • 同步 README 的业务模块与页面清单
  • 修正文档导航中的 API 联调日志入口
  • 重写新人入门指南为业务与路由上手文档
  • 对齐登录页路径说明与认证调试文档
  • 更新前端开发计划中的当前路由与模块概览
  • 对齐鉴权重构文档的登录页说明
  • 标记项目开发计划与调整版为历史版本并补充当前业务说明
  • README 补充路由与计划文档对齐说明

详细信息

  • 影响文件: README.md, QUICKSTART.md, docs/README.md, docs/guides/新人入门指南.md, docs/guides/认证调试指南.md, docs/plan/前端开发计划.md, docs/plan/项目开发计划.md, docs/plan/前端开发计划-调整版.md, docs/specs/2026-02-02-auth-refactoring.md
  • 技术栈: 文档维护
  • 测试状态: 不适用
  • 备注: 与现有路由与页面模块保持一致

[2026-02-14] - 提取方式字段重命名

变更

  • 将提取方式字段从 specified_amount_type 统一重命名为 withdrawal_method
  • 同步更新计划书模板与相关文档的字段描述

详细信息

  • 影响文件: src/components/plan/PlanTemplates/SavingsTemplate.vue, docs/plan/plan-entry-architecture.md, docs/lessons-learned/plan-entry-module-summary.md
  • 技术栈: Vue 3, Taro 4
  • 测试状态: 待测试
  • 备注: 中文字段名保持为“提取方式”

[2026-02-14] - 修复文件扩展名解析逻辑

修复

  • 修复 JPEG 等图片文件显示为 "DOC" 标签的问题
  • 优化 extractExtensionFromFile 函数的 fallback 逻辑
  • 移除首页、搜索页、周热门资料页的错误扩展名提取逻辑

详细信息

  • 影响文件: src/utils/documentIcons.js, src/pages/index/index.vue, src/pages/search/index.vue, src/pages/week-hot-material/index.vue
  • 技术栈: Vue 3, Taro 4, 文件处理
  • 测试状态: 待测试
  • 备注:
    • 问题根因:fileName.split('.').pop() 对 "IMG_6395大" 返回文件名本身而非扩展名
    • 解决方案:让组件内部使用 extractExtensionFromFile 自动从 downloadUrl 解析扩展名
    • 优先级:extension 字段 > fileName > src > downloadUrl
    • 涉及页面:首页周热门资料、搜索页文件结果

[2026-02-13] - 收藏页空名称处理

修复

  • 修复收藏页数据 name 字段为 null 时显示空白的问题
  • 添加默认标题"未命名文件"兜底处理

详细信息

  • 影响文件: src/pages/favorites/index.vue
  • 技术栈: Vue 3, Taro 4
  • 测试状态: 已通过
  • 备注: 使用 map 方法在数据获取后立即处理,保持模板简洁

[2026-02-13] - 登录权限检查与提示文案优化

新增

  • 为首页网格导航"计划书"按钮添加登录权限检查
  • 未登录用户点击时显示友好的登录提示弹窗

优化

  • 优化默认登录权限提示文案:从"登录后即可查看完整内容"改为"登录后即可使用完整功能"
  • 新文案更通用,同时适用于查看型和操作型场景
  • 提升文案与实际操作的匹配度

详细信息

  • 影响文件: src/config/permissions.js, src/pages/index/index.vue
  • 技术栈: Vue 3, Taro 4, Composables
  • 测试状态: 已通过
  • 备注:
    • 首页网格导航使用自定义提示:"计划书功能需要登录后才能使用,是否立即登录?"
    • 其他"制作计划书"按钮使用优化后的默认文案
    • 修改后覆盖首页、产品中心、产品详情、搜索页的所有计划书相关操作

[2026-02-13] - 文件操作反馈功能配置同步

修复

  • 修复文件操作失败时"去反馈"按钮导致的 showModal 参数错误
  • 导入 features 配置使用命名导入(修复构建警告)
  • 根据 features.feedback 动态控制"去反馈"按钮显示
  • 根据配置动态调整提示文案(移除"前往意见反馈"提示)
  • 根据配置决定是否跳转反馈页面

详细信息

  • 影响文件: src/composables/useFileOperation.js
  • 技术栈: Vue 3, Taro 4
  • 测试状态: 已通过
  • 备注: 修复了当 feedback: false 时文件操作失败提示出现的参数错误

[2026-02-13] - 储蓄类模板提取计划逻辑修正

修复

  • 修正储蓄类产品模板的提取计划逻辑错误
  • 移除"是否生成说明"字段与"款项提取"配置的强依赖关系
  • "是否希望生成一份允许减少名义金额的提取说明?"现在作为独立字段,不影响提取方案配置
  • 删除错误的 watch 监听器,该监听器在选择"否"时会错误地清除所有提取计划字段
  • 更新校验逻辑:withdrawal_enabled 字段改为可选,不再强制校验

文档

  • 更新 docs/plan/plan-entry-architecture.md 架构文档
  • 从"三层结构"改为"字段结构说明",明确字段1为独立字段
  • 更新组件设计代码示例,移除错误的 v-if 条件和 watch 监听器

详细信息

  • 影响文件: src/components/plan/PlanTemplates/SavingsTemplate.vue, docs/plan/plan-entry-architecture.md
  • 技术栈: Vue 3, Taro 4
  • 测试状态: 待测试
  • 备注: 提取方案配置现在始终显示(当配置启用时),不受"是否生成说明"字段影响

[2026-02-13] - 消息详情页布局与状态优化

优化

  • 优化计划书信息布局:长文本自动换行,避免挤压左侧标签
  • 添加计划书状态颜色标识:待处理(橙)、处理中(蓝)、已生成(绿)、已查看(灰)

详细信息

  • 影响文件: src/pages/message-detail/index.vue
  • 技术栈: Vue 3, Less, Flexbox
  • 测试状态: 已通过
  • 备注: 状态样式与计划列表页保持一致

[2026-02-13] - 功能开关配置

配置

  • 添加功能开关到 src/config/features.js
    • contactService: false - 隐藏帮助中心联系客服
    • feedback: false - 隐藏我的页面意见反馈
  • 帮助中心页面 (src/pages/help-center/index.vue):
    • 导入 features.js 配置
    • 使用 v-if="features.contactService" 控制联系客服显示
  • 我的页面 (src/pages/mine/index.vue):
    • 导入 features.js 配置
    • 使用计算属性过滤菜单项
  • 修改 v-for key 为 item.key 提高稳定性

修复

  • 移除 TypeScript �型的 JSDoc 注释(@type {boolean}),修复 eslint 警告

详细信息

  • 影响文件: src/config/features.js, src/pages/help-center/index.vue, src/pages/mine/index.vue
  • 技术栈: Vue 3, Taro 4
  • 测试状态: 已通过 (pnpm lint + pnpm test)
  • 备注: 当功能开放时,只需在 features.js 中将对应开关改为 true 即可

配置

  • 添加功能开关到 src/config/features.js
    • contactService: false - 隐藏帮助中心联系客服
    • feedback: false - 隐藏我的页面意见反馈
  • 帮助中心页面 (src/pages/help-center/index.vue):
    • 导入 features.js 配置
    • 使用 v-if="features.contactService" 控制联系客服显示
  • 我的页面 (src/pages/mine/index.vue):
    • 导入 features.js 配置
    • 使用计算属性过滤菜单项
  • 修改 v-for key 为 item.key 提高稳定性

详细信息

  • 影响文件: src/config/features.js, src/pages/help-center/index.vue, src/pages/mine/index.vue
  • 技术栈: Vue 3, Taro 4
  • 测试状态: 已通过 (pnpm lint)
  • 备注: 当功能开放时,只需在 features.js 中将对应开关改为 true 即可


[2026-02-13] - 首页标题样式调整

优化

  • 调整首页"臻奇荟"标题位置至左上方(顶部间距从 180rpx 减小至 128rpx)
  • 优化标题对齐方式,适配整体页面布局

详细信息

  • 影响文件: src/pages/index/index.vue
  • 技术栈: Vue 3, Tailwind CSS
  • 测试状态: 已通过
  • 备注: 保持原有高度占位,防止布局塌陷

[2026-02-13] - 统一权限检查与移除重复代码

新增

  • ListItemActions 组件集成权限检查逻辑

优化

  • 移除 material-list 页面中重复的 usePermission 调用
  • 权限检查完全由 ListItemActions 组件内部处理
  • 添加 ListItemActions 组件 README 文档

详细信息

  • 影响文件: src/pages/material-list/index.vue, src/components/list/ListItemActions/index.vue, src/components/list/ListItemActions/README.md
  • 技术栈: Vue 3, Taro 4
  • 测试状态: 已通过
  • 备注: 组件自包含业务逻辑模式,父组件无需重复权限检查

[2026-02-13] - 搜索页登录提示优化

优化

  • 搜索页使用自定义登录提示话术"搜索功能需要登录后才能使用"
  • 支持通过 customOptions 参数覆盖默认权限提示内容

详细信息

  • 影响文件: src/pages/search/index.vue
  • 技术栈: Vue 3, Taro 4
  • 测试状态: 已通过
  • 备注: getPermissionConfig 支持自定义内容覆盖

[2026-02-13] - 搜索页登录检查

[2026-02-13] - 资料查看权限与搜索页测试对齐

新增

  • 统一动作级权限映射,支持页面查看权限扩展
  • 资料查看入口增加登录权限校验与回跳路径记录

优化

  • 搜索页测试对齐当前实现并补充接口 Mock

详细信息

  • 影响文件: src/composables/usePermission.js, src/config/permissions.js, src/components/cards/MaterialCard.vue, src/pages/material-list/index.vue, src/pages/search/index.test.js, vitest.config.js, package.json
  • 技术栈: Vue 3, Taro 4, Pinia, Vitest
  • 测试状态: 已通过(pnpm test)
  • 备注: lint 存在历史 warning 未处理

[2026-02-13] - 我的页面消息红点显示

新增

  • 我的页面消息菜单项添加未读红点显示
  • 新增 showMessageBadge 计算属性,从 userStore.unreadMsgCount 读取未读状态
  • 添加 .menu-badge 样式,与 TabBar 红点保持一致

优化

  • 为菜单项添加 key 属性,便于识别特定菜单项
  • 红点逻辑与 TabBar 完全一致,确保同步显示

详细信息

  • 影响文件: src/pages/mine/index.vue
  • 技术栈: Vue 3, Pinia
  • 测试状态: 已通过
  • 备注: 红点在 unreadMsgCount > 0 时显示

[2026-02-12] - 优化反馈列表和消息页面图片加载

新增

  • 新增 `optimizeImageUrl` 工具函数,自动为 CDN 图片添加缩略图优化参数
    • 支持自定义缩略图宽度和图片质量
    • 只处理 `cdn.ipadbiz.cn` 的图片
    • 非 CDN 图片保持原样返回

优化

  • 反馈列表图片优化:列表中使用 200px 缩略图(质量 70),点击预览时才加载原图
    • 显著减少列表加载时的带宽消耗
    • 提升列表滚动性能
  • 消息详情页优化:优化布局和样式
    • 调整背景色为浅灰色 `bg-gray-50`
    • 增加卡片式布局,添加圆角和阴影
    • 优化标题、时间、内容的视觉层级
    • 调整字号和行距提升阅读体验
  • 消息列表优化:重构卡片布局,提升信息可读性
    • 第一行:标题(或内容预览)+ 未读红点
    • 添加状态标签(未读/已读)
    • 第二行:内容预览(截取前 60 字)
    • 底部:时间 + 时钟图标

详细信息

  • 影响文件: src/utils/tools.js, src/pages/feedback-list/index.vue, src/pages/message-detail/index.vue, src/pages/message/index.vue
  • 技术栈: Vue 3, Taro, CDN 图片优化
  • 测试状态: 已通过
  • 备注: 性能收益 - 列表加载节省 ~99% 图片流量

本文档记录 Manulife WeApp项目的所有重要变更。 格式基于 Keep a Changelog