Commit Graph

223 Commits

Author SHA1 Message Date
6617a0b36c fix(harmony): 修鸿蒙元服务 JSVM 兼容性
基于 .logs/harmony-debug.log 排查,修复 3 类 runtime 错误:

1. isWeChatMiniProgram / cashier autoPay / ai-chat 复制文本
   - 鸿蒙 JSVM 没有 navigator 全局, navigator.userAgent 直接 ReferenceError
   - 加 typeof navigator === 'undefined' 守卫,Harmony 上返回 false,
     业务落到 isWeiXin()(已被 #ifdef H5 框住,Harmony 上也 false)→ 普通登录

2. diy-category getHeightArea
   - onShow 在 mounted 前触发,query 还是 undefined
   - query 重新尝试创建;createSelectorQuery 不存在则直接 return
   - 防止首次进入崩溃

3. goods-detail-view 模板 indexOf
   - goodsSkuDetail.support_trade_type 字段偶尔缺失
   - 改 (support_trade_type || []).indexOf(...) 兜底
2026-07-04 11:26:47 +08:00
783c10fc62 refactor: 统一项目内国际化key的命名空间格式
本次提交对全项目的国际化调用进行了规范化重构:
1. 为中文/英文语言包新增了avatar和gender的别名映射,兼容旧有headImg/sex写法
2. 修正了lang.js中的注释路径错误
3. 将所有页面和组件内的$lang调用从短路径改为带业务模块前缀的完整命名空间路径,例如将$lang('title')改为$lang('article.list.title')
4. 优化了i18n-lazy.js的注释说明,补充了正确的key命名格式示例
5. 统一了分销、订单、会员等模块的国际化key层级,确保所有语言调用路径一致
2026-07-04 09:24:35 +08:00
92e8823566 fix: 修复多页面语言包key路径错误问题
统一修正所有页面中调用语言包时的路径命名,将短横线/下划线格式调整为正确的嵌套路径格式,确保语言文本可以正常加载
2026-07-03 17:02:43 +08:00
e4c9b7fd59 fix: 统一处理表单提交数据的序列化逻辑
1.  修复多处表单提交时重复判断序列化的逻辑,统一处理当formData已经是字符串时不再重复序列化
2.  简化nameStyle样式计算的代码写法,移除不必要的objToStyle调用
2026-07-03 15:52:54 +08:00
2a2161c9d9 refactor: 整理多页面语言包调用路径,统一翻译键层级
1. 调整品牌专区、商品评价、搜索、优惠券等页面的语言翻译引用,将零散翻译项归类到对应模块下
2. 优化auth.js中的语言包路径引用,修正模块命名空间
3. 清理zh-cn/en-us品牌语言包的冗余嵌套结构
2026-07-03 11:23:05 +08:00
6470912498 fix(article page): adjust language resource path for article pages
统一文章列表和详情页的多语言key路径,将原有通用语言项改为文章模块专属的语言配置
2026-07-03 11:10:38 +08:00
f628d7a0ef refactor(ai-chat): 统一调整语言文件引用路径
将所有硬编码的语言调用路径统一改为ai-chat.index下的命名空间,便于语言包管理和维护
2026-07-03 11:07:34 +08:00
b8387de6c6 fix(agreement): fix translation path for empty state texts
调整了协议页面空状态的多语言引用路径,移除了嵌套的agreement对象层级,让调用路径匹配实际的多语言文件结构
2026-07-03 11:01:46 +08:00
2705038c36 refactor(contact page): 统一使用带命名空间的语言包键值
将页面内所有语言引用都改为contact.contact下的完整命名空间键名,统一语言包调用方式
2026-07-03 10:48:53 +08:00
c7810f16f7 feat: 新增多语言文案并修复动态国际化调用问题
1. 新增多语言文件覆盖组件、页面、公共模块的翻译文案
2. 修复多处动态拼接lang key的调用,增加兜底逻辑避免空值或原始key暴露
3. 补全DIY组件、业务页面的国际化适配
4. 新增P2动态key国际化处理方案文档
2026-06-29 15:29:24 +08:00
c3956f7bcd refactor: 统一调整多页面的语言包key命名风格
1. 将会员购买卡片页的提示语语言包key从customerService.tip替换为统一命名
2. 修正diy文章组件、取消状态页、积分商品列表页的语言包key大小写和路径问题
3. 统一积分商品列表页的多语言调用路径,简化冗余的key前缀
2026-06-29 13:57:30 +08:00
053a279102 refactor: 调整loading-cover和隐私弹窗的挂载位置
1.  将公告列表页的loading-cover移到mescroll-uni外部统一挂载
2.  将文件列表页的loading-cover移到mescroll-uni外部统一挂载
3.  为鸿蒙平台的slot强制重绘逻辑添加条件编译包裹
2026-06-29 10:41:14 +08:00
3cedbd7b6b fix(article list): 修复空数据处理和加载时机调整
1. 给列表数据新增空值兜底避免报错
2. 调整loading隐藏和分页结束的执行顺序
2026-06-29 10:32:00 +08:00
7e4400267e style(article/list): 优化文章列表项样式与交互
1.  修复无图文章项布局对齐问题,添加no-image类处理无图场景
2.  将点击事件从click改为tap适配小程序
3.  调整图片模式为aspectFill并补全高度样式
4.  优化标签行高与日期块对齐方式
5.  仅在有封面图时渲染图片区域
2026-06-29 09:53:23 +08:00
2e535b9d93 refactor(member pages): unify onShow login redirect logic
1. extract common onShow login check to dedicated method redirectTologinOnShowLifecycle
2. add fallback callback for login failure to navigate back on wechat mini program
3. update all page login redirect calls to use the new unified method
4. add debug logs for redirect and auth flow tracing
2026-06-27 18:25:53 +08:00
0b760e41a3 refactor: 统一移除局部金额格式化过滤器并全局复用
1. 移除多个页面/组件内重复的moneyFormat局部过滤器
2. 将moneyFormat方法提取到全局配置中复用
3. 调整登录弹窗跳转模式适配H5场景
4. 新增open方法调试日志方便排查
2026-06-27 17:14:03 +08:00
f794a2ae27 refactor: 统一替换登录跳转逻辑为通用方法
将项目内多处手动调用$refs.login.open的登录跳转逻辑,统一替换为新增的redirectTologin通用方法,简化代码并提升维护性,同时统一处理了延迟和nextTick调用逻辑。
2026-06-27 16:52:25 +08:00
aee630b546 fix: 统一登录跳转逻辑,添加redirectTo参数避免页面栈溢出
1. 为所有登录跳转调用添加redirectTo跳转类型参数
2. 调整部分页面的onShow生命周期执行顺序和定时器包装
3. 补充缺失的ns-login组件引用到两个diy组件中
4. 修复部分页面登录后返回出现循环跳转的问题
2026-06-27 15:08:01 +08:00
95194585d2 refactor: 统一替换小程序事件绑定为@tap并优化跳转逻辑
1. 全局替换@click为@tap以适配uni-app事件规范
2. 优化toLogin方法的路由获取逻辑,增加空值判断
3. 重构redirectTo跳转逻辑,统一tab页跳转使用reLaunch确保页面栈正确
2026-06-27 13:46:29 +08:00
1bf8a4a9b2 style: 统一修复多页面重复的事件绑定冗余代码
1. 移除多处重复的@click和@tap事件,只保留必要的@tap
2. 修复scoped样式穿透语法,补全样式文件末尾换行
3. 统一调整隐私弹窗、搜索页等页面的样式写法
2026-06-27 09:48:28 +08:00
ea40123c76 style(contact page): adjust contact info text font size
统一调整联系方式模块的文字字号,优化页面视觉展示效果
2026-06-27 09:11:41 +08:00
bf4fe97aa3 feat: 新增多语言配置并优化语言加载逻辑
1. 新增多个页面的中英文多语言词条,包括会员卡协议、积分商品、收银台等
2. 新增退款商品选择、微信支付、电子名片等页面的语言包
3. 优化lang.js语言加载逻辑,支持蛇形命名转换和多路径匹配,完善$lang调用兼容处理
2026-06-27 09:07:51 +08:00
4ae21c5d7a refactor: 完成多语言国际化全量替换与补充
1. 新增大量中英文语言包文件,覆盖自定义组件、页面、工具类的文案
2. 替换硬编码文本为多语言调用,统一全局文案管理
3. 优化语言包结构,拆分公共模块与业务模块
4. 修复部分语言加载与国际化适配问题
2026-06-26 17:32:35 +08:00
f7fb9f34f9 feat: add and optimize multilingual text resources
- add new language packs for multiple pages and components including category, cart, order, member center, distribution, etc.
- add Chinese and English translations for new features and UI text
- fix navigation service error message to use multilingual text
- update component templates to use dynamic language translation instead of hardcoded text
- adjust code indentation and formatting for consistency
2026-06-26 13:49:26 +08:00
66a579d48c feat: add and optimize multiple multilingual language packs
1. 新增拼团、砍价、分销、支付、地址、账户等多业务场景的中英文本地化文案
2. 替换项目中硬编码的文本为多语言调用,统一前端页面文案展示
3. 新增多个业务组件的国际化语言配置文件
2026-06-26 10:17:33 +08:00
066ca61d97 feat: 新增多语言文案与组件国际化适配
本次提交完成了大量多语言相关的新增与优化工作:
1. 新增充值、案例、会员资产、订单等页面的中文/英文翻译文案
2. 新增企业微信客服、时间选择、支付弹窗等组件的多语言包
3. 优化工具函数与自定义页面的多语言适配,替换硬编码提示文案
4. 新增会员等级规则、积分商品、退款管理等页面的国际化支持
5. 修复企业微信JS-SDK的错误提示文案硬编码问题
2026-06-26 09:09:46 +08:00
2d8846c64c feat: 新增多语言文案、优化导航及工具函数,修复部分业务逻辑
1. 新增多语言资源文件,覆盖文章、预约日期、会员信息、优惠券、表单、购物车、积分商城、分销、AI聊天等多个模块
2. 优化底部导航组件,使用多语言配置替代硬编码文案
3. 重构工具函数,新增从后端数据提取多语言文案的工具方法
4. 修复邀请好友页面的保存提示文案,替换为多语言版本
5. 修复商品SKU组件的提示文案,使用多语言配置
6. 重构AI聊天页面的帮助文档和回复模板,使用多语言配置
7. 优化空状态组件,支持多语言默认文案
8. 修复跳转逻辑,补全参数传递
9. 新增本地开发环境配置
2026-06-25 18:15:31 +08:00
5d3663786c feat: add multi-language page configs and fix i18n issues
1. 新增多套多语言页面翻译文件,覆盖文件列表、案例展示、商户相关、印章相关、分销、小程序发货等页面
2. 修复语言包拼写错误:loginTpis → loginTips
3. 重构语言包合并逻辑,使用深度合并替代浅合并避免子key丢失
4. 优化导航栏标题设置,统一使用$langConfig.title替代硬编码标题
5. 修复底部导航栏语言切换不响应的问题,改为响应式获取当前语言
6. 完善英文通用语言包,补充订单、购物车、会员相关翻译
7. 修复商品详情页默认标题为空的问题,设置为"商品详情"
2026-06-25 14:52:39 +08:00
8e218bb663 feat: 新增多语言国际化页面配置,修复部分页面硬编码文案
1. 新增了zh-cn和en-us两套语言下的大量页面国际化配置文件,覆盖商品、订单、会员、营销活动等多个业务模块
2. 修复了分销页面、VR页面、支付页面、商品不存在页面的硬编码提示文案,替换为国际化调用
3. 删除了原有的i18n检查脚本文件
2026-06-25 11:00:50 +08:00
5f41febd70 chore(i18n): 清理死代码 + 遗留 lang 文件 + 旧工具
## 删除的死代码脚本
- scripts/i18n_class_c.py (脚本自承'新架构下永远输出 0',纯防御性)
- scripts/full_migrate_i18n.py (其产出违反 CLAUDE.md 1.2 中文 key 铁律,已标 DEPRECATED)
- scripts/__pycache__/ (Python 缓存)

## 删除的旧 per-page lang 文件
- lang/zh-cn/<page>/<file>.js (140 个)
- lang/en-us/<page>/<file>.js (139 个)
- 共 279 个文件,运行时不再加载,0 个 key 被 .vue 调用(经 diagnose_keys.py 验证)

## 删除的备份和迁移表
- lang/_backup/ (git 已跟踪原文件)
- lang/_migration_map.json / lang/_migration-map.json (运行时不用)

## 删除的中间产物 JSON
- docs/i18n-rename-*.json (smart_rename 中间产物,已用完)
- docs/i18n-ambiguous.json / i18n-audit.json / i18n-call-rewrite.log /
  i18n-clean-dead.log / i18n-file-texts.json / i18n-page-titles.json /
  i18n-vue-extract.json (前一会话残留,无引用方)
- docs/i18n-{naming,shadow,strict}-audit.json (脚本会自动重新生成)

## 删除的 modular lang 文件
- lang/zh-cn/*.js / lang/en-us/*.js (20 个模块文件,内容是上一会话产生的死代码)
- lang/zh-cn/index.js / lang/en-us/index.js (聚合入口)
- lang/DEPRECATED.md (已不再相关)

## 删除的不成熟脚本
- scripts/check_perpage.py (诊断用,已完成)
- scripts/diagnose_keys.py (诊断用,已完成)
- scripts/smart_rename_i18n.py (v1-v3 都 bug,未修完)

## 现状
- lang/ 现在只有 zh-cn.js + en-us.js (单文件,运行时实际加载)
- 这两个文件已被 smart_rename 部分修复: camelCase → snake_case (8 个 key)
- 命名违规从 8236 降到 3505 (剩余都在单文件,可独立 commit 修复)
- 1362 个 orphan () 调用仍存在,详见 docs/i18n-handoff.md
2026-06-25 10:48:15 +08:00
1f1a642f99 fix(i18n): 修复审计脚本扫不到 modular 文件的盲区,接入命名规范检查到构建卡点
- i18n_audit.py: 同步扫描 lang/<locale>/<module>.js 多文件 + lang/<locale>.js 单文件
- i18n_check_naming.py (新增): 检测中文 key / 扁平 key / 行号式 locational key / 跨业务域同名 / 非 snake_case
- i18n_check.py: 加入 naming 子命令,默认全套审计包含 naming
- vue.config.js: I18nGuardPlugin 增加 naming 阻断
- full_migrate_i18n.py: 标 DEPRECATED,文档说明其输出违反 CLAUDE.md 1.2 铁律
- diagnose_keys.py (新增): 定位 orphan 调用 key

背景:之前审计'假阳性通过',实际 6018 处违规;现在审计能看到真实状态。

Fix: docs/i18n-rules.md 1.6 条铁律需补强 (modular 审计入口已加)

统计 (i18n_check_naming.py 当前输出):
  A. 中文 key: 2146
  B. 扁平 key: 188
  C. 行号式 locational key: 1612
  D. 跨业务域同名 tail: 1366
  E. 非 snake_case key 段: 2924
  TOTAL: 8236 处
2026-06-25 10:26:55 +08:00
638406567d refactor(member page): extract global config getter method
extract repeated diyData.global access into a dedicated globalCfg computed property, simplify button visibility check logic
2026-06-23 11:01:55 +08:00
b0dad04b59 fix(member page): 调整取消和退出按钮的显示逻辑
将判断条件从"不等于0"改为"等于1",匹配配置项的真实生效逻辑
2026-06-23 11:00:13 +08:00
f258987e0e refactor: 替换多页面国际化文本为硬编码中文内容
移除项目内大部分$lang()国际化调用,替换为直接中文文本,统一前端展示文案
2026-06-23 08:55:16 +08:00
6c7f7d4837 fix(vr page): restore and adjust bottom tabBar display
将注释掉的自定义底部导航组件恢复并正确嵌入到VR页面布局中,确保页面底部导航正常显示
2026-06-22 18:29:05 +08:00
b30ba914b9 i18n: replace hardcoded strings with language translations
批量将项目中多处硬编码的文本替换为多语言翻译条目,统一项目文案管理,提升多语言适配效率,包括导航提示、操作反馈、空状态提示、表单占位符等各类文本内容。
2026-06-22 17:59:25 +08:00
47098bddda refactor: 替换硬编码文本为多语言配置
1. 替换分销等级页标题拼接的硬编码语言文本
2. 替换AI聊天页面的硬编码提示文本为多语言key
3. 新增完整的多语言翻译配置项
2026-06-22 17:48:53 +08:00
cb81aad784 refactor(fenxiao,member): replace hardcoded strings with i18n translations
standardize all hardcoded text across分销 and member pages to use language packs, fix template syntax errors in level.vue, and unify text display logic
2026-06-22 16:20:59 +08:00
2337e3cacf refactor: 将项目内硬编码文本替换为多语言调用
统一替换所有页面和组件中的硬编码字符串为 $lang 多语言方法调用,提升项目国际化适配能力
2026-06-22 14:04:13 +08:00
fce936feee refactor(member/card_buy): 替换硬编码文本为多语言配置
将页面内所有硬编码的中文文案替换为$lang多语言调用,统一国际化处理,包括按钮文字、标题、权益描述和空状态提示等内容,同时修复了image标签自闭合格式问题
2026-06-22 11:36:12 +08:00
cc39e06161 refactor: replace hardcoded text with language package entries
Replace all inline hardcoded Chinese strings in multiple Vue pages with corresponding language package keys, to unify text management and support multi-language switching.
2026-06-22 11:23:53 +08:00
014046bc9e refactor: 替换页面中硬编码文本为多语言配置
将项目中多处页面的硬编码字符串替换为国际化语言包调用,统一文本管理,方便后续多语言扩展和维护
2026-06-22 10:47:27 +08:00
f3d9f397d7 refactor(member): 优化多语言调用和可选链使用
1.  移除语言包默认参数,统一使用翻译文本作为默认值
2.  为嵌套属性访问添加可选链操作符,避免空指针报错
3.  新增会员相关的多语言词条
2026-06-18 17:35:52 +08:00
06e3a4d796 refactor(globalConfig&member): 重构多端按钮显示逻辑
1. 新增全局配置方法getAppType用于获取当前平台类型,对齐服务端$app_type
2. 将会员页按钮显示判断改为基于当前平台的配置校验
3. 简化模板中的条件判断代码
2026-06-18 17:09:34 +08:00
17864427c1 fix: 统一登录态失效后的跳转逻辑并补充多语言默认值
1.  统一所有接口登录态异常(-1)时的处理,跳转至登录页而非原页面或首页
2.  补充$lang多语言调用的默认参数,防止翻译缺失
3.  修正公共js中的跳转路径和异常处理逻辑
2026-06-17 10:10:17 +08:00
851b5fe722 refactor(member page): 优化页面样式计算与按钮显示逻辑
1. 抽离页面样式为computed属性pageStyle提升代码可读性
2. 新增自定义配置控制注销和退出登录按钮的显示
2026-06-17 09:50:17 +08:00
c2b38476ea refactor(lang): 优化多语言翻译函数,支持传入默认值
修改lang.js的翻译方法,支持传入默认值参数,当找不到对应翻译时使用传入的默认值;同时更新member-public.js中的调用方式,简化多语言调用代码
2026-06-16 18:03:52 +08:00
e9ee61f509 refactor(member): 提取公共登录态清理和注销逻辑到mixin
重构会员相关页面的重复代码,将清除登录态、退出登录、账号注销相关逻辑抽离到公共mixin中,统一复用代码并减少重复维护成本
2026-06-16 17:34:56 +08:00
e51c03235f refactor(nav): 动态控制导航栏返回按钮显示逻辑
1. 新增isTabBarRootPage工具方法判断是否为tab根页面
2. 在全局混入中添加isTabRootPage计算属性
3. 替换多处硬编码的isBack属性为动态绑定
4. 优化shouldShowTabBar计算属性的代码逻辑
2026-06-16 15:34:10 +08:00
64d3ac8f8a refactor: 统一重构底部导航栏间距逻辑与显示规则
1.  新增全局计算属性统一处理底部导航栏显示判断与间距样式
2.  替换多个页面的手写底部间距逻辑为通用样式
3.  新增路由匹配工具函数,支持灵活配置导航栏显示范围
4.  优化底部导航组件的显示条件判断
2026-06-16 11:25:54 +08:00