# 国际化翻译进度

## 文档定位

- 本文件只负责记录全局进展、阶段成果、构建验证结果与下一步目标
- 主要路由的完整父子级结构、路由别名、路径、入口文件与主路由优先级，以 `docs/i18n/主要路由.md` 为准
- 文件级待办、进行中、已完成与认领状态，以 `docs/i18n/翻译清单.md` 为准
- 协作规则、读 md 顺序、认领要求与交接规范，以 `docs/i18n/线程协作.md` 为准

## 当前目标

- 将项目页面中出现的中文展示文本逐步接入国际化
- 当前先支持 `en` 和 `zh`
- 后续如果增加 `bn`、`ar`、`tr` 等语言，优先复用现有键名体系

## 任务优先级

- 全线程统一优先级：`已完成 src/views 页面私有组件复查 > 首页 > docs/i18n/主要路由.md > 其他路由`
- 在“已完成 `src/views` 页面私有组件复查”完成前，暂不继续领取新的未完成普通页面
- 只要首页 `Dashboard` 模块或 `主要路由.md` 中页面仍未完成，后续线程领取新任务时都应优先从这两部分中选择
- `主要路由.md` 中具体先领哪个页面仍可灵活分配，但不得跳过首页整体优先级

## 必须遵守的约束

- 只翻译展示文本
- 不修改功能逻辑
- 不修改接口参数
- 不修改路由路径
- 不修改权限码
- 不修改后端依赖的枚举值、状态值、别名值、提交值
- 凡是会传给接口、或依赖后端匹配的值，一律保持原样
- 已经本来就是英文的展示文本，不强制改动

## 展示适配要求

- 英文等较长展示文案需要考虑布局适配
- 表单标签在宽度不足时允许自动换行，并可按页面需要补充更宽的标签样式
- 表格列表列标题在宽度不足时允许自动换行，不再截断单词
- 对未设置 `min-width` 的普通表格列补全局默认最小宽度，先保证大部分标题至少能展示完整单词
- 个别仍然宽度不足的列，后续再按页面逐项微调

## 已完成

### 主要路由完成摘要

- 详细父子级结构、路由别名、路径与验收入口统一见 `docs/i18n/主要路由.md`
- 以下摘要已按 `docs/i18n/主要路由.md` 当前父子级顺序同步更新
- 已完成主路由摘要：
  - 用户管理 / User Management
    - 用户列表 / User List
  - 运营管理 / Operations Management
    - 数据配置 / Data Configuration
      - 转盘抽奖品配置 / Spin Wheel Prize Configuration
      - 国家管理 / Country Management
    - 活动配置 / Activity Configuration
      - 活动管理 / Activity Management
    - 消息推送 / Message Push
    - 运营日志 / Operations Logs
      - 砸金蛋记录 / Golden Egg Smash Records
    - APP管理员 / App Administrator
    - App启动页 / App Launch Page
    - 系统公告管理 / System Notice Management
  - 语音房间 / Voice Rooms
    - 房间资料列表 / Room Profile List
  - 道具管理 / Prop Management
    - 资源组配置 / Resource Group Configuration
  - 系统工具 / System Tools
    - Redis缓存管理 / Redis Cache Management
    - 文件上传 / File Upload
  - 主播中心 / Broadcaster Center
    - 代理钻石政策 / Agent Diamond Policy
    - 代理政策 / Agent Policy
    - BD列表 / BD List
- 已完成但未在当前主要路由菜单返回中命中的补充页面：
  - 抽奖概率配置 / Lottery Probability Settings
### 基础能力

- 已接入项目国际化基础能力
- 已使用 Vuex 存储当前语言
- 已接入 Element UI 语言包切换
- 已支持基于时区的默认语言识别
- 未匹配到现有语言类型时，默认回退到英文

### 导航与通用区域

- 已增加导航栏语言切换入口
- 已增加头像下拉中的语言切换入口
- 已支持侧边栏路由标题翻译
- 已调整侧边栏宽度、自动换行和图标居中表现

### 其他已处理内容

- 已移除 `src/views/dashboard/introduction/waiting-processing/index.vue` 中“每日一文”相关展示数据
- 已保留系统时间展示
- 已将默认语言检测与浏览器时区关联
- 已将语言切换结果持久化
  - 刷新后优先使用用户上次选择的语言
  - 只有首次没有持久化记录时，才使用默认语言判断逻辑

## 本轮新增进展

### 2026-04-20

- 已完成页面：
  - `src/views/tools/upload/index.vue`
  - 说明：已完成上传方式开关、拖拽上传提示、失败状态与超限提示国际化；接口参数、文件上传逻辑、路由路径与后端依赖值保持原样
- 页面私有组件状态：
  - `src/views/tools/upload/index.vue`：无私有组件，已完成
- 已补充页面级语言 key：
  - `src/lang/messages/pages/en.js`
  - `src/lang/messages/pages/zh.js`
  - 新增范围：`pages.uploadFile`
- 已完成模块级复核：
  - `src/views/tools/upload/index.vue`
  - 说明：已执行中文残留扫描；当前未发现剩余中文可见文本
- 已完成构建验证：
  - 直接执行 `npm run build:prod` 构建通过
  - 说明：当前仍保留项目原有 `22` 条 warning，未因本轮 `tools/upload` 国际化改动新增阻塞错误
- 已完成页面：
  - `src/views/sys/start-page/index.vue`
  - 说明：已完成筛选区 placeholder、状态下拉、活动类型展示映射、表格列头、按钮、删除确认与成功提示国际化；接口参数、状态值、路由路径与系统来源数据保持原样
- 已处理页面私有子组件：
  - `src/views/sys/start-page/form-edit.vue`
  - 说明：已完成弹窗标题、表单标签、placeholder、保存/取消按钮、必填校验提示与活动类型展示映射国际化；提交字段、上传逻辑与接口调用保持原样
- 已补充页面级语言 key：
  - `src/lang/messages/pages/en.js`
  - `src/lang/messages/pages/zh.js`
  - 新增范围：`pages.startPage`
- 已完成模块级复核：
  - `src/views/sys/start-page/**/*.vue`
  - 说明：已执行递归中文残留扫描；当前残余中文仅保留在模板注释与“删除”代码注释中
- 已完成构建验证：
  - 直接执行 `npm run build:prod` 构建通过
  - 说明：当前仍保留项目原有 `22` 条 warning，未因本轮 `sys/start-page` 国际化改动新增阻塞错误
- 已完成页面：
  - `src/views/tools/redis/index.vue`
  - 说明：已完成入口快捷标签、空态文案、打卡缓存查询弹窗标题/按钮/校验提示国际化；接口方法名、缓存查询 key、路由路径与返回数据结构保持原样
- 已补充页面级语言 key：
  - `src/lang/messages/pages/en.js`
  - `src/lang/messages/pages/zh.js`
  - 新增范围：`pages.redisTools`
- 已完成模块级复核：
  - `src/views/tools/redis/index.vue`
  - 说明：已执行中文残留扫描；当前未发现剩余中文可见文本
- 已完成构建验证：
  - 首次直接执行 `npm run build:prod` 触发 `ERR_OSSL_EVP_UNSUPPORTED`
  - 改用 `$env:NODE_OPTIONS='--openssl-legacy-provider'; npm run build:prod` 后构建通过
  - 说明：当前仍保留项目原有 `22` 条 warning，未因本轮 `tools/redis` 国际化改动新增阻塞错误
- 已完成页面：
  - `src/views/sys/notice-message/index.vue`
  - 说明：已完成筛选区、表格列头、类型文案、按钮、发布/上架确认提示、成功提示、弹窗标题、表单标签、placeholder 与校验提示国际化；接口参数、状态值、类型值、路由路径与公共系统来源数据保持原样
- 已补充页面级语言 key：
  - `src/lang/messages/pages/en.js`
  - `src/lang/messages/pages/zh.js`
  - 新增范围：`pages.noticeMessage`
- 已完成模块级复核：
  - `src/views/sys/notice-message/**/*.vue`
  - 说明：已执行递归中文残留扫描；当前残余中文仅保留在字段行尾注释与“删除”注释中
- 已完成构建验证：
  - 首次直接执行 `npm run build:prod` 触发 `ERR_OSSL_EVP_UNSUPPORTED`
  - 改用 `$env:NODE_OPTIONS='--openssl-legacy-provider'; npm run build:prod` 后构建通过
  - 说明：当前仍保留项目原有 `22` 条 warning，未因本轮 `sys/notice-message` 国际化改动新增阻塞错误
- 已完成页面：
  - `src/views/user/app-manager/index.vue`
  - 说明：已完成入口页 tab 标题国际化，并按模块级检查方案一并收口两个可见子页与权限设置弹窗；接口参数、角色值、分组值、路由路径与后端资源名称保持原样
- 已处理页面私有子组件：
  - `src/views/user/app-manager/administrator/index.vue`
  - `src/views/user/app-manager/administrator/auth.vue`
  - `src/views/user/app-manager/administrator-auth-resource/index.vue`
  - 说明：已完成筛选区、表格列头、状态文案、按钮、弹窗标题、表单标签、确认提示、校验提示与本地角色/分组映射国际化；接口返回的 `resourceName` 等后端数据未做翻译
- 已补充页面级语言 key：
  - `src/lang/messages/pages/en.js`
  - `src/lang/messages/pages/zh.js`
  - 新增范围：`pages.appManager`
- 已完成模块级复核：
  - `src/views/user/app-manager/**/*.vue`
  - 说明：已执行递归中文残留扫描；当前残余中文仅保留在注释“去除校验”与注释掉的“管理房间”代码块中
- 已完成构建验证：
  - 首次直接执行 `npm run build:prod` 触发 `ERR_OSSL_EVP_UNSUPPORTED`
  - 改用 `$env:NODE_OPTIONS='--openssl-legacy-provider'; npm run build:prod` 后构建通过
  - 说明：当前仍保留项目原有 `22` 条 warning，未因本轮 `user/app-manager` 国际化改动新增阻塞错误
- 已完成页面：
  - `src/views/sys/country-code/index.vue`
  - 说明：已完成筛选区 placeholder、表格列头、状态文案、弹窗标题、表单标签、按钮、上传按钮与校验提示国际化；接口参数、提交字段、路由路径与后端依赖值保持原样
- 已补充页面级语言 key：
  - `src/lang/messages/pages/en.js`
  - `src/lang/messages/pages/zh.js`
  - 新增范围：`pages.countryCode`
- 已完成模块级复核：
  - `src/views/sys/country-code/index.vue`
  - 说明：已执行中文残留扫描；当前残余中文仅保留在注释中
- 已完成构建验证：
  - 直接使用 `$env:NODE_OPTIONS='--openssl-legacy-provider'; npm run build:prod` 构建通过
  - 说明：当前仍保留项目原有 `22` 条 warning，包含项目既有 `getAddressUrl` 导出缺失 warning，未因本轮 `sys/country-code` 国际化改动新增阻塞性错误
- 已完成页面：
  - `src/views/props/props-source-group/index.vue`
  - 说明：已完成入口页筛选区 placeholder、搜索与添加按钮、表格列头、时间展示、编辑按钮与 loading 文案国际化；接口查询参数、分页结构、上下架开关值与弹窗逻辑保持原样
- 已补充页面级语言 key：
  - `src/lang/messages/pages/en.js`
  - `src/lang/messages/pages/zh.js`
  - 新增范围：`pages.propsSourceGroup`
  - 复用范围：`common.search`、`pages.propsSourceGroupForm`
- 已完成模块级复核：
  - `src/views/props/props-source-group/index.vue`
  - `src/views/props/props-source-group/form-edit.vue`
  - 说明：已对 `src/views/props/props-source-group/**/*.vue` 执行递归中文扫描；当前 `index.vue` 残余中文仅在注释中，`form-edit.vue` 残余主要为注释与接口返回名称类文本，`select-propsr-popover.vue` 当前未接入入口渲染链
- 已完成构建验证：
  - 首次直接执行 `npm run build:prod` 触发 `ERR_OSSL_EVP_UNSUPPORTED`
  - 改用 `$env:NODE_OPTIONS='--openssl-legacy-provider'; npm run build:prod` 后构建通过
  - 说明：当前仍保留项目原有 `22` 条 warning，未因本轮 `props-source-group/index.vue` 国际化改动新增阻塞错误
- 已新增临时任务规则：
  - 暂停继续领取新的未完成普通页面
  - 先检查 `src/views` 下所有已标记完成页面的私有组件是否已完成国际化
  - 后续页面完成记录必须额外写明“页面私有组件状态”
- 已形成首批历史页面私有组件复核队列：
  - `src/views/team/policy/props-form-edit.vue`
  - `src/views/team/diamond-policy/props-form-edit.vue`
  - `src/views/team/business-development/add-bd.vue`
  - `src/views/team/business-development/auth.vue`
  - `src/views/team/business-development/bind-bd-leader.vue`
  - `src/views/team/business-development/bind-team.vue`
  - `src/views/team/business-development/team-member.vue`
  - `src/views/room/profile/room-active-charts.vue`
  - `src/views/room/profile/room-operation-log.vue`
  - `src/views/room/profile/room-visitor-log.vue`
  - `src/views/room/profile/user-drawer.vue`
  - `src/views/activity/template-cnf/activity-rank.vue`
  - `src/views/activity/template-cnf/activity-rank-reward.vue`
  - `src/views/activity/template-cnf/form-edit.vue`
  - `src/views/activity/template-cnf/reward-edit.vue`
  - `src/views/activity/template-cnf/template-editor/attr-editor.vue`
  - `src/views/activity/template-cnf/template-editor/index.vue`
  - `src/views/activity/template-cnf/template-editor/lang-text-editor.vue`
  - `src/views/activity/template-cnf/template-editor/page-editor.vue`
  - `src/views/activity/template-cnf/template-editor/props-card.vue`
  - `src/views/activity/template-cnf/template-editor/reward-array-editor.vue`
  - `src/views/activity/template-cnf/template-form/index.vue`
  - `src/views/cnf/lottery/select-prize.vue`

### 2026-04-17

- 已完成首页模块：
  - `src/views/dashboard/index.vue`
  - `src/views/dashboard/dashboard.vue`
  - `src/views/dashboard/dashboard-charts/index.vue`
  - `src/views/dashboard/quick-link/index.vue`
  - `src/views/dashboard/introduction/user-account-info/index.vue`
  - `src/views/dashboard/introduction/user-navigation/index.vue`
  - `src/views/dashboard/introduction/waiting-processing/index.vue`
  - `src/views/dashboard/components/active-index/index.vue`
  - `src/views/dashboard/components/daily-currency/index.vue`
  - `src/views/dashboard/components/daily-currency/line-graph-charts.vue`
  - `src/views/dashboard/components/daily-currency-gold/index.vue`
  - `src/views/dashboard/components/daily-currency-gold/line-graph-charts.vue`
  - `src/views/dashboard/components/daily-currency-gold-origin-top/index.vue`
  - `src/views/dashboard/components/daily-currency-gold-origin-top/bar-graph-charts.vue`
  - `src/views/dashboard/components/daily-purchase/index.vue`
  - `src/views/dashboard/components/daily-purchase/line-graph-charts-general.vue`
  - `src/views/dashboard/components/daily-purchase/line-graph-charts.vue`
  - `src/views/dashboard/components/daily-register-user/index.vue`
  - `src/views/dashboard/components/daily-register-user/line-graph-charts.vue`
  - `src/views/dashboard/components/monthly-purchase/index.vue`
  - `src/views/dashboard/components/monthly-purchase/line-graph-charts.vue`
  - `src/views/dashboard/components/user-daily-currency-gold-top/index.vue`
  - `src/views/dashboard/components/user-daily-currency-gold-top/bar-graph-charts.vue`
  - `src/views/dashboard/components/user-daily-currency-recharge-top/index.vue`
  - `src/views/dashboard/components/user-daily-currency-recharge-top/bar-graph-charts.vue`
  - `src/components/data/PropsSalesOverviewCharts/index.vue`
  - `src/components/data/PropsSalesOverviewCharts/dialog.vue`
  - `src/components/data/PropsSalesOverviewCharts/bar-graph-charts.vue`
  - 说明：已完成首页入口、概览卡片、图表 tab、图表 legend/tooltip、快捷入口与首页直接依赖销售总览组件的国际化收口，并补齐运行时语言切换所需的首页响应式联动
- 已补充页面级语言 key：
  - `src/lang/messages/pages/en.js`
  - `src/lang/messages/pages/zh.js`
  - 新增范围：`pages.dashboard`
- 已完成模块级复核：
  - `src/views/dashboard/**/*`
  - `src/components/data/PropsSalesOverviewCharts/**/*`
  - 说明：模块内静态中文展示文案残留扫描结果为 0
- 已完成构建验证：
  - `npm run build:prod`
  - 说明：本轮首页 i18n 改动编译通过，仍保留项目既有 `22` 条 warning，未新增阻塞错误
- 已完成页面：
  - `src/views/message/push/index.vue`
  - `src/views/message/push/new-push-form.vue`
  - `src/views/message/push/push-log.vue`
  - `src/views/message/push/push-task.vue`
  - 说明：已完成消息推送入口页 tab、新建 Push 表单与 Push 日志页的可见静态文案国际化，并补齐 `push-task.vue` 中遗留成功提示；未改动接口参数、路由路径、权限码与后端依赖值
- 已补充页面级语言 key：
  - `src/lang/messages/pages/en.js`
  - `src/lang/messages/pages/zh.js`
  - 新增范围：`pages.messagePush`、`pages.messagePushLog`
  - 扩展范围：`pages.messagePushTask`
- 已完成模块级复核：
  - `src/views/message/push/index.vue`
  - `src/views/message/push/new-push-form.vue`
  - `src/views/message/push/push-log.vue`
  - `src/views/message/push/push-task.vue`
  - 说明：已执行中文残留扫描，当前残余中文仅保留在注释中；`push-text-store.vue` 仍未被入口页渲染，已在协作文档中标记为排除项
- 已完成构建验证：
  - `npm run build:prod`
  - 说明：构建通过，当前仍保留项目原有 `22` 条 warning，未因本轮 `message/push` i18n 改动新增阻塞性错误
- 已完成页面：
  - `src/views/user/freight/index.vue`
  - `src/views/user/freight/form-edit.vue`
  - `src/views/user/freight/running-water.vue`
  - `src/views/user/freight/seller-info.vue`
  - `src/views/user/freight/freight-seller-running-water.vue`
  - 说明：已完成用户货运模块列表页、编辑页、流水页与卖家相关弹窗中的静态展示文案国际化；仅对展示层做本地化映射，未改动后端依赖提交值、接口参数、路由路径与业务逻辑
- 已补充页面级语言 key：
  - `src/lang/messages/pages/en.js`
  - `src/lang/messages/pages/zh.js`
  - 新增范围：`pages.userFreight`
- 已完成模块级复核：
  - `src/views/user/freight/**/*.vue`
  - 说明：已执行递归中文扫描；当前残余中文仅保留在注释、后端依赖提交值或当前非可见数据结构中
- 已完成构建验证：
  - `npm run build:prod`
  - 说明：构建通过，当前仍保留项目原有 `22` 条 warning，未因本轮 i18n 改动新增阻塞性错误
- 已完成页面：
  - `src/views/sys/region-config/index.vue`
  - `src/views/sys/region-config/assist/index.vue`
  - 说明：已完成区域配置入口页 tab 标题与辅助配置页可见静态文案国际化；`region/index.vue` 沿用既有国际化结果，本轮完成入口联动收口；未改动接口参数、路由路径、权限码与后端依赖值
- 已扩展页面级语言 key：
  - `src/lang/messages/pages/en.js`
  - `src/lang/messages/pages/zh.js`
  - 扩展范围：`pages.regionConfig.tabs`、`pages.regionConfig.assist`
- 已完成模块级复核：
  - `src/views/sys/region-config/index.vue`
  - `src/views/sys/region-config/assist/index.vue`
  - 说明：已执行中文残留扫描；当前残余中文仅保留在注释中
- 已完成构建验证：
  - `npm run build:prod`
  - 说明：构建通过，当前仍保留项目原有 `22` 条 warning，未因本轮 `sys/region-config` i18n 改动新增阻塞性错误
- 已处理组件：
  - `src/components/data/EditUserDiamondRewardForm/index.vue`
  - 说明：已完成钻石奖励弹窗标题、字段标签、placeholder、按钮与校验提示国际化；`userId`、`quantity`、`remarks` 提交字段与接口调用保持原样，表单标签“钻石”复用 `pages.propsSourceGroupForm.resourceType.diamond`
- 已补充页面级语言 key：
  - `src/lang/messages/pages/en.js`
  - `src/lang/messages/pages/zh.js`
  - 新增范围：`pages.editUserDiamondRewardForm`
- 已完成构建验证：
  - `src/components/data/EditUserDiamondRewardForm/index.vue` 国际化改动编译通过
  - 2026-04-17 当前环境直接执行 `npm run build:prod` 已通过，当前仍保留项目原有 `22` 条 warning，未因本轮 i18n 改动新增阻塞性错误
- 已处理组件：
  - `src/components/data/EditUserGameCouponDeductionForm/index.vue`
  - 说明：已完成扣除用户游戏券弹窗标题、表单标签、placeholder、按钮与校验提示国际化；接口参数、提交数量与备注内容保持原样
- 已补充页面级语言 key：
  - `src/lang/messages/pages/en.js`
  - `src/lang/messages/pages/zh.js`
  - 新增范围：`pages.editUserGameCouponDeductionForm`
- 已完成构建验证：
  - `src/components/data/EditUserGameCouponDeductionForm/index.vue` 国际化改动编译通过
  - 2026-04-17 当前环境直接执行 `npm run build:prod` 已通过，当前仍保留项目原有 `22` 条 warning，未因本轮 i18n 改动新增阻塞性错误
- 已沉淀线程经验到文档：
  - 2026-04-17 当前 Node 环境下，`$env:NODE_OPTIONS='--openssl-legacy-provider'` 会直接报 `--openssl-legacy-provider is not allowed in NODE_OPTIONS`
  - 后续构建验证优先直接执行 `npm run build:prod`

### 2026-04-16

- 已补领页面：
  - `src/views/game/egg/egg-lottery-cnf/index.vue`
  - 说明：线程一已按最新协作规则重新读取 3 份 md 与语言文件，并已把此前遗漏的 Egg 配置页正式登记为本轮进行中任务；后续将只处理可见静态展示文本，不改接口参数与页面逻辑
- 已完成页面：
  - `src/views/game/egg/index.vue`
  - `src/views/game/egg/egg-exchange-record/index.vue`
  - `src/views/game/egg/egg-lottery-record/index.vue`
  - `src/views/game/egg/egg-lottery-cnf/index.vue`
  - 说明：线程一已完成 Egg 模块入口页、兑换记录页、抽奖记录页与配置页的静态展示文本国际化收口；配置页补充了筛选区、按钮、表格列头、占位文案、奖品类型下拉、校验提示与确认弹窗翻译，并新增 `pages.eggLotteryCnf`
- 已完成模块级复核：
  - `src/views/game/egg/**/*.vue`
  - 说明：已按“模块级最优检查方案”对 Egg 模块做递归中文扫描，当前未发现剩余中文可见文本
- 已完成构建验证：
  - `npm run build:prod`
  - 说明：本轮直接执行构建已通过，仍保留项目既有 `22` 条 warning，未新增阻塞错误
- 发现检查缺口：
  - `src/views/game/egg/egg-lottery-cnf/index.vue`
  - 说明：该文件与 `src/views/game/egg/index.vue` 同属一个可见 tab 模块，上一轮线程一虽然在认领记录中写了“暂未纳入本次范围”，但没有把它同步登记为“可见但待处理文件”，也没有按模块目录做完整核对；这说明此前的目录级检查还不够严谨
- 已补充协作规范：
  - `docs/i18n/线程协作.md`
  - 新增“模块级最优检查方案”
  - 目的：后续认领 `views` 模块时，先核对入口页 import、tab、动态组件与模块目录文件列表，避免再次漏掉像 `egg-lottery-cnf/index.vue` 这样的同级可见页面
- 已完成页面：
  - `src/views/game/lucky-box/fortune-config/index.vue`
  - 说明：已完成 `fortune-config` 页面静态展示文本国际化复核；本轮确认目录实际仅存在 `index.vue`，协作文档里提到的 `edit.vue`、`details.vue` 并不存在，无需继续查找或翻译
- 已复核页面级语言 key：
  - `src/lang/messages/pages/en.js`
  - `src/lang/messages/pages/zh.js`
  - 复核范围：`pages.luckyBoxFortuneConfig`
  - 说明：中英文语言项已齐备，`index.vue` 中无剩余中文展示文本
- 已完成构建验证：
  - 首次直接执行 `npm run build:prod` 因当前 Node/OpenSSL 组合触发 `ERR_OSSL_EVP_UNSUPPORTED`
  - 改用 `$env:NODE_OPTIONS='--openssl-legacy-provider'; npm run build:prod` 后构建通过
  - 当前仍保留项目原有 `22` 条 warning，未因本轮 fortune-config 收口新增阻塞错误
- 已同步修正文档：
  - `docs/i18n/线程协作.md`
  - `docs/i18n/翻译清单.md`
  - `docs/i18n/翻译进度.md`
  - 说明：已移除对不存在的 `src/views/game/lucky-box/fortune-config/edit.vue`、`src/views/game/lucky-box/fortune-config/details.vue` 的错误引用，避免后续线程误判任务范围

### 2026-04-15

- 已处理组件：
  - `src/components/data/AccountInput/index.vue`
  - 说明：已完成账号输入组件中类型选择 placeholder、类型选项和平台选择 placeholder 的国际化；账号输入值、平台值与外部传入参数保持原样
- 已补充页面级语言 key：
  - `src/lang/messages/pages/en.js`
  - `src/lang/messages/pages/zh.js`
  - 新增范围：`pages.accountInput`
- 已完成构建验证：
  - `src/components/data/AccountInput/index.vue` 国际化改动编译通过
  - 当前仍保留项目原有 `22` 条 warning，未因本轮 i18n 改动新增阻塞性错误
- 已处理组件：
  - `src/components/data/InappPurchaseGoogle/index.vue`
  - 说明：已完成弹窗标题、购买记录、Google 订阅单据、状态文案、复制按钮、空内容提示与 tooltip 的国际化；订阅令牌、json 内容、订单状态与接口返回值保持原样
- 已补充页面级语言 key：
  - `src/lang/messages/pages/en.js`
  - `src/lang/messages/pages/zh.js`
  - 新增范围：`pages.inappPurchaseGoogle`
- 已完成构建验证：
  - `src/components/data/InappPurchaseGoogle/index.vue` 国际化改动编译通过
  - 当前仍保留项目原有 `22` 条 warning，未因本轮 i18n 改动新增阻塞性错误
- 已处理组件：
  - `src/components/data/InAppPurchaseDetails/index.vue`
  - 说明：已完成抽屉标题、订单信息区、状态流转、商品信息、元数据、事件通知和状态映射的国际化；`createNickname`、`productDescriptor`、商品名称/内容/描述、原因、事件类型与通知数据保持接口返回原值
- 已补充页面级语言 key：
  - `src/lang/messages/pages/en.js`
  - `src/lang/messages/pages/zh.js`
  - 新增范围：`pages.inAppPurchaseDetails`
- 已完成构建验证：
  - `src/components/data/InAppPurchaseDetails/index.vue` 国际化改动编译通过
  - 当前仍保留项目原有 `22` 条 warning，未因本轮 i18n 改动新增阻塞性错误
- 已完成核查组件：
  - `src/components/data/InappPurchaseApple/index.vue`
  - 说明：当前组件已接入 `pages.inappPurchaseApple`，源码中未发现剩余中文展示文本，本轮无需重复修改源码
- 已处理组件：
  - `src/components/data/UserAuthForm/index.vue`
  - 说明：已完成抽屉标题、卡片标题、手机号绑定按钮、已绑定状态、placeholder、校验提示、确认弹窗与成功提示的国际化；认证类型列表中的 `item.type` 与手机号数据保持接口返回原样
- 已补充页面级语言 key：
  - `src/lang/messages/pages/en.js`
  - `src/lang/messages/pages/zh.js`
  - 新增范围：`pages.userAuthForm`
- 已完成构建验证：
  - `src/components/data/UserAuthForm/index.vue` 国际化改动编译通过
  - 当前仍保留项目原有 `22` 条 warning，未因本轮 i18n 改动新增阻塞性错误
- 已处理组件：
  - `src/components/data/RoomInfo/index.vue`
  - 说明：已完成折叠面板标题、基础资料字段、状态标签、布尔展示文案、设置信息字段、徽章 tooltip 文案的国际化；房间公告内容、国家码、平台值与接口返回数据保持原样
- 已补充页面级语言 key：
  - `src/lang/messages/pages/en.js`
  - `src/lang/messages/pages/zh.js`
  - 新增范围：`pages.roomInfo`
- 保留项：
  - `src/components/data/RoomInfo/index.vue`
  - 内容：注释掉的“装饰道具”代码块中的中文
  - 原因：该代码块当前不渲染，不属于可见展示文案，按协作规范不作为本轮必翻项处理
- 已完成构建验证：
  - `src/components/data/RoomInfo/index.vue` 国际化改动编译通过
  - 当前仍保留项目原有 `22` 条 warning，未因本轮 i18n 改动新增阻塞性错误
- 已完成页面：
  - `src/views/sys/region-config/region/index.vue`
  - 说明：已完成筛选区、表格列头、操作菜单、抽屉标题、表单标签、placeholder、钱包设置、确认弹窗与校验提示的国际化；接口参数、区域编码字段、提交结构与元数据 key 保持原样
- 已补充页面级语言 key：
  - `src/lang/messages/pages/en.js`
  - `src/lang/messages/pages/zh.js`
  - 新增范围：`pages.regionConfig`
- 已完成构建验证：
  - `src/views/sys/region-config/region/index.vue` 国际化改动编译通过
  - 当前仍保留项目原有 `22` 条 warning，未因本轮 i18n 改动新增阻塞性错误
- 已处理组件：
  - `src/components/data/AccountHanle/index.vue`
  - 说明：已完成弹窗标题、表单标签、处罚分组名、处罚选项名、天数选项、按钮、校验提示与翻译失败提示文案国际化；处罚值、提交字段和默认警告内容保持原样
- 已补充页面级语言 key：
  - `src/lang/messages/pages/en.js`
  - `src/lang/messages/pages/zh.js`
  - 新增范围：`pages.accountHandle`
- 阻塞/保留项：
  - `src/components/data/AccountHanle/index.vue`
  - 内容：默认“警告”描述文案
  - 原因：该文本会直接写入提交表单并发送给后端，属于提交内容，不按纯展示文案处理
- 已完成构建验证：
  - `src/components/data/AccountHanle/index.vue` 国际化改动编译通过
- 已完成页面：
  - `src/views/team/diamond-policy/index.vue`
  - 说明：已完成筛选区、政策菜单、表格列头、编辑区、历史抽屉、校验提示与确认弹窗翻译；接口参数、政策类型值、提交结构和删除/发布逻辑保持原样
- 已处理页面私有子组件：
  - `src/views/team/diamond-policy/props-form-edit.vue`
  - 说明：已完成抽屉内静态展示文案翻译，并复用现有 `pages.propsSourceGroupForm` key，避免重复新增同义 key
- 已补充页面级语言 key：
  - `src/lang/messages/pages/en.js`
  - `src/lang/messages/pages/zh.js`
  - 新增范围：`pages.teamDiamondPolicy`
- 已完成构建验证：
  - `src/views/team/diamond-policy/index.vue` 国际化改动编译通过
  - `src/views/team/diamond-policy/props-form-edit.vue` 国际化改动编译通过
  - 当前仍保留项目原有 `22` 条 warning，未因本轮 i18n 改动新增阻塞性错误
- 已完成页面：
  - `src/views/game/lottery-config/form-edit.vue`
  - 说明：已完成弹窗标题、游戏类型、奖励列表、添加配置区、按钮、placeholder、校验提示与概率提示的国际化；`lotteryGameTypes` 的共享常量值未改动，仅在页面展示层对 `EGG` 做了本地映射翻译
- 已处理页面私有子组件：
  - `src/views/game/lottery-config/select-propsr-popover.vue`
  - 说明：已完成弹出层标题、类型名称标签与选择按钮国际化
- 已补充页面级语言 key：
  - `src/lang/messages/pages/en.js`
  - `src/lang/messages/pages/zh.js`
  - 新增范围：`pages.gameLotteryConfigForm`
  - 复用范围：`pages.propsSourceGroupForm.resourceType`、`pages.propsSourceGroupForm.validation`
- 保留项：
  - `src/views/game/lottery-config/form-edit.vue`
  - 内容：`specialIdTypes`、`pItem.name`、`badgeName` 等动态或接口返回内容
  - 原因：这类文本不属于静态展示文案，本轮按原值展示
- 已完成构建验证：
  - `src/views/game/lottery-config/form-edit.vue` 国际化改动编译通过
  - `src/views/game/lottery-config/select-propsr-popover.vue` 国际化改动编译通过
  - 当前仍保留项目原有 `22` 条 warning，未因本轮 i18n 改动新增阻塞性错误
- 已完成页面：
  - `src/views/game/lottery-config/index.vue`
  - 说明：已完成筛选区 placeholder、搜索/添加按钮、游戏类型列、道具列、时间列、编辑按钮与游戏类型展示映射国际化；接口查询参数、分页结构和编辑逻辑保持原样
- 已补充页面级语言 key：
  - `src/lang/messages/pages/en.js`
  - `src/lang/messages/pages/zh.js`
  - 新增范围：`pages.gameLotteryConfig`
- 保留项：
  - `src/views/game/lottery-config/index.vue`
  - 内容：注释掉的“上/下架”筛选块中的中文
  - 原因：该区块当前不渲染，不属于可见展示文案
- 已完成构建验证：
  - `src/views/game/lottery-config/index.vue` 国际化改动编译通过
  - 当前仍保留项目原有 `22` 条 warning，未因本轮 i18n 改动新增阻塞性错误
- 已沉淀线程经验到文档：
  - 新线程读取源码与 md 时统一使用 UTF-8 显式编码
  - 每次领取新任务前都要重新读取 `docs/i18n/线程协作.md`、`docs/i18n/翻译进度.md`、`docs/i18n/翻译清单.md` 与 `docs/i18n/主要路由.md`，确认认领状态已经写入 md 后再决定是否领取
  - 每次认领任务时，必须先更新 md 再开始改源码；写入认领记录前后都要复查 3 份协作文档 + `docs/i18n/主要路由.md`，确认没有线程冲突
  - 构建验证统一使用 `npm run build:prod`
  - 同目录私有子组件需和页面一起扫描，避免“主页面已翻、抽屉仍是中文”

### 2026-04-14

- 已建立页面级翻译文件目录：
  - `src/lang/messages/pages/en.js`
  - `src/lang/messages/pages/zh.js`
- 已将页面级翻译模块接入：
  - `src/lang/messages/en.js`
  - `src/lang/messages/zh.js`
- 已完成页面：
  - `src/views/message/push/push-task.vue`
  - 说明：仅替换展示文本，接口值如 `OFFICIAL_MESSAGE_NOTICE`、语言值 `ar/tr/en`、状态值等保持不变
  - `src/views/user/user-table/index.vue`
  - 说明：已完成页面可见文案翻译，接口查询字段、权限码、提交值和路由逻辑未改动
- 已处理组件：
  - `src/components/data/UserInfo/BaseInfo/index.vue`
  - 当前状态：已完成展示文本翻译，剩余中文仅存在注释中
- 已完成页面：
  - `src/views/room/profile/index.vue`
  - 说明：已完成筛选区、表格、操作菜单、弹窗、表单校验文案和下拉展示项翻译；接口参数、事件值、角色值、审批状态值保持原样
- 已完成页面：
  - `src/views/team/policy/index.vue`
  - 说明：已完成筛选区、政策列表、编辑区、历史政策抽屉、确认提示与状态文案翻译；政策类型值、查询参数、发布状态字段等后端依赖值保持原样
- 已完成可见静态文案：
  - `src/views/props/props-source-group/form-edit.vue`
  - 说明：已完成抽屉标题、表单标签、按钮、占位文案、校验提示、奖励摘要和本地资源类型名称翻译
  - 待补接口样例：
    - 奖励列表中的 `badgeName`
    - 资源选择项中的 `pItem.name`
    - 接口返回的礼物 / 徽章 / 表情包 / 通用资源名称
  - 处理策略：这类文本依赖接口返回，当前先保留原样，等待你后续提供接口返回数据后再逐项补齐
- 已完成页面：
  - `src/views/cnf/lottery/index.vue`
  - 说明：已完成配置页中的卡片标题、表单标签、按钮、弹窗提示、默认奖品文案和默认配置区翻译；仅处理展示文案，抽奖配置结构、接口提交体和字段值保持原样
- 已完成页面：
  - `src/views/activity/template-cnf/index.vue`
  - 说明：已完成筛选区、帮助说明、表格列标题、状态标签、操作菜单、加载文案与确认弹窗翻译；活动状态值、权限码、接口查询参数和路由跳转参数保持原样
- 已完成页面：
  - `src/views/team/business-development/index.vue`
  - 说明：已完成筛选区、表格列头、操作菜单、无权限提示、复制结果提示与删除确认弹窗翻译；权限码、接口查询参数、分页参数和操作逻辑保持原样
- 已补充并固定文档目录：
  - `docs/i18n/翻译进度.md`
  - `docs/i18n/翻译清单.md`
- 后续翻译时需要同步更新的文档：
  - `docs/i18n/翻译进度.md`
  - `docs/i18n/翻译清单.md`
- 已将你的约束写入文档并作为后续执行规则：
  - 只翻译展示文本
  - 不修改功能逻辑
  - 不修改接口参数
  - 不修改路由路径
  - 不修改权限码
  - 不修改后端依赖值
- 已补充国际化表单适配样式：
  - 为英文等较长标题增加可复用的表单标签宽度和自动换行方案
  - 已补充表单标题纵向居中，避免标签宽度加大后文字贴上边
  - 当前已接入页面：
    - `src/views/message/push/push-task.vue`
    - `src/views/room/profile/index.vue`
  - 公共样式位置：
    - `src/styles/element-ui.scss`
- 已完成表格展示适配方案：
  - 表头标题支持自动换行，避免英文标题被直接截断
  - 未设置 `min-width` 的普通 `el-table-column` 增加全局默认最小宽度
  - 已修正表头 `.cell` 高度自适应与纵向居中，避免 `th` 足够高但标题文本仍贴边
  - 相关入口位置：
    - `src/styles/element-ui.scss`
    - `src/main.js`
- 已完成两次构建验证：
  - 语言切换持久化改动编译通过
  - `src/views/room/profile/index.vue` 国际化改动编译通过
  - `src/views/team/policy/index.vue` 国际化改动编译通过
  - `src/views/props/props-source-group/form-edit.vue` 静态文案国际化改动编译通过
  - `src/views/cnf/lottery/index.vue` 国际化改动编译通过
  - `src/views/activity/template-cnf/index.vue` 国际化改动编译通过
  - `src/views/team/business-development/index.vue` 国际化改动编译通过
  - 表格标题自动换行与默认最小宽度适配编译通过
  - 表格标题 `.cell` 高度自适应与纵向居中修正编译通过
  - 表单标题纵向居中适配编译通过
- 已处理组件：
  - `src/components/data/UserInfo/BankCardDrawer/index.vue`
  - 说明：已完成抽屉标题、卡片标签、审核状态、使用状态、操作按钮、表单标签、placeholder、校验提示与确认弹窗国际化；`cardType` 与银行卡类型枚举值保持原样
- 已补充页面级语言 key：
  - `src/lang/messages/pages/en.js`
  - `src/lang/messages/pages/zh.js`
  - 新增范围：`pages.bankCardDrawer`
- 已完成构建验证：
  - `src/components/data/UserInfo/BankCardDrawer/index.vue` 国际化改动编译通过
  - 当前仍保留项目原有 `22` 条 warning，未因本轮 i18n 改动新增阻塞性错误
- 已处理页面：
  - `src/views/game/lucky-box/standard-config/gift-details.vue`
  - 说明：已完成列表弹窗、表格列头、操作按钮、提示文案、表单标签、placeholder、校验提示与礼物类型展示映射的国际化；礼物类型实际值、接口参数与页面逻辑保持原样
- 已补充页面级语言 key：
  - `src/lang/messages/pages/en.js`
  - `src/lang/messages/pages/zh.js`
  - 新增范围：`pages.luckyBoxGiftDetails`
- 已完成构建验证：
  - `src/views/game/lucky-box/standard-config/gift-details.vue` 国际化改动编译通过
  - 当前仍保留项目原有 `22` 条 warning，未因本轮 i18n 改动新增阻塞性错误
- 已完成页面：
  - `src/views/game/lucky-box/standard-config/index.vue`
  - 说明：已完成筛选区、表格列头、类型标签、操作按钮、删除确认与成功提示的国际化；列表筛选值、状态布尔值与接口逻辑保持原样
- 已处理页面私有子组件：
  - `src/views/game/lucky-box/standard-config/edit.vue`
  - `src/views/game/lucky-box/standard-config/probability.vue`
  - 说明：已完成编辑弹窗与概率配置弹窗中的标题、表单标签、placeholder、校验提示、说明提示、保存确认与错误提示国际化；概率数值、礼物关联值与接口参数保持原样
- 已补充页面级语言 key：
  - `src/lang/messages/pages/en.js`
  - `src/lang/messages/pages/zh.js`
  - 新增范围：`pages.luckyBoxStandardConfig`
- 已完成构建验证：
  - `src/views/game/lucky-box/standard-config/index.vue` 国际化改动编译通过
  - `src/views/game/lucky-box/standard-config/edit.vue` 国际化改动编译通过
  - `src/views/game/lucky-box/standard-config/probability.vue` 国际化改动编译通过
  - 当前仍保留项目原有 `22` 条 warning，未因本轮 i18n 改动新增阻塞性错误
- 已处理组件：
  - `src/components/data/UserInfo/BaseInfo/AssociatedDeviceTimeline.vue`
  - 说明：已完成语言、时区、IP、客户端、设备信息、Push 信息与注册时间等标签国际化；`item.latestDevice.*` 与 `item.userProfile.createTime` 等动态数据保持原样
- 语言 key 处理：
  - 本轮复用 `pages.userBaseInfo.labels`
  - 本轮复用 `pages.userBaseInfo.words.activeIp`
  - 无需新增页面级语言 key
- 已完成构建验证：
  - `src/components/data/UserInfo/BaseInfo/AssociatedDeviceTimeline.vue` 国际化改动编译通过
  - 当前仍保留项目原有 `22` 条 warning，未因本轮 i18n 改动新增阻塞性错误
- 已处理组件：
  - `src/components/data/UserInfo/AccountStatusLatestLog/index.vue`
  - 说明：已完成最新账号处理日志标签文案国际化；`item.approvalUserName`、`item.statusName` 与 `item.createTime` 保持动态原值展示
- 已补充页面级语言 key：
  - `src/lang/messages/pages/en.js`
  - `src/lang/messages/pages/zh.js`
  - 新增范围：`pages.accountStatusLatestLog`
- 已完成构建验证：
  - `src/components/data/UserInfo/AccountStatusLatestLog/index.vue` 国际化改动编译通过
  - 当前仍保留项目原有 `22` 条 warning，未因本轮 i18n 改动新增阻塞性错误
- 已处理组件：
  - `src/components/data/UserInfo/UserTableExhibit/index.vue`
  - 说明：已完成特殊 ID 账号展示后缀国际化；直接复用 `pages.userBaseInfo.labels.specialIdSuffix`，未新增页面级语言 key
- 已完成构建验证：
  - `src/components/data/UserInfo/UserTableExhibit/index.vue` 国际化改动编译通过
  - 当前仍保留项目原有 `22` 条 warning，未因本轮 i18n 改动新增阻塞性错误
- 已处理组件：
  - `src/components/data/SearchRoomInput/index.vue`
  - 说明：已完成房间 ID 输入框 placeholder、类型选择、搜索结果弹窗与失败提示国际化；房间数据与接口返回内容保持原样
- 已补充页面级语言 key：
  - `src/lang/messages/pages/en.js`
  - `src/lang/messages/pages/zh.js`
  - 新增范围：`pages.searchRoomInput`
- 已完成构建验证：
  - `src/components/data/SearchRoomInput/index.vue` 国际化改动编译通过
  - 当前仍保留项目原有 `22` 条 warning，未因本轮 i18n 改动新增阻塞性错误
- 已处理组件：
  - `src/components/data/GiftHistoryDetailsDrawer/index.vue`
  - 说明：已完成抽屉标题、发送人/房间、礼物信息快照、接收用户标签、日志事件与单据 ID 按钮国际化；礼物值、房间资料、日志内容与接口返回数据保持原样
- 已补充页面级语言 key：
  - `src/lang/messages/pages/en.js`
  - `src/lang/messages/pages/zh.js`
  - 新增范围：`pages.giftHistoryDetailsDrawer`
- 已完成构建验证：
  - `src/components/data/GiftHistoryDetailsDrawer/index.vue` 国际化改动编译通过
  - 当前仍保留项目原有 `22` 条 warning，未因本轮 i18n 改动新增阻塞性错误
- 已处理组件：
  - `src/components/data/EditUserForm/index.vue`
  - 说明：已完成用户编辑抽屉标题、昵称/性别表单项、出生日期 placeholder、关闭/提交按钮与校验提示国际化；国家选择与接口返回数据保持原样
- 已补充页面级语言 key：
  - `src/lang/messages/pages/en.js`
  - `src/lang/messages/pages/zh.js`
  - 新增范围：`pages.editUserForm`
- 已完成构建验证：
  - `src/components/data/EditUserForm/index.vue` 国际化改动编译通过
  - 当前仍保留项目原有 `22` 条 warning，未因本轮 i18n 改动新增阻塞性错误
- 已处理组件：
  - `src/components/data/EditUserGoldCoinRewardForm/index.vue`
  - 说明：已完成金币奖励弹窗标题、表单标签、placeholder、按钮与校验提示国际化；`currencyRewardReasons` 的提交值与备注拼接内容保持原样，仅在页面展示层做奖励类型本地映射翻译
- 已补充页面级语言 key：
  - `src/lang/messages/pages/en.js`
  - `src/lang/messages/pages/zh.js`
  - 新增范围：`pages.editUserGoldCoinRewardForm`
- 保留项：
  - `src/components/data/EditUserGoldCoinRewardForm/index.vue`
  - 内容：模板注释中的中文
  - 原因：该部分不渲染，不属于可见展示文案
- 已完成构建验证：
  - `src/components/data/EditUserGoldCoinRewardForm/index.vue` 国际化改动编译通过
  - 当前仍保留项目原有 `22` 条 warning，未因本轮 i18n 改动新增阻塞性错误
- 已完成页面：
  - `src/views/game/lucky-box/award-config/index.vue`
  - 说明：已完成筛选区、表格列头、类型标签、操作按钮、删除确认与成功提示的国际化；列表筛选值与接口逻辑保持原样
- 已处理页面私有子组件：
  - `src/views/game/lucky-box/award-config/edit.vue`
  - `src/views/game/lucky-box/award-config/details.vue`
  - 说明：已完成编辑弹窗与奖励配置弹窗中的标题、表单标签、placeholder、校验提示、按钮与本地常量类型映射国际化；资源值、目标次数、接口参数与逻辑保持原样
- 已补充页面级语言 key：
  - `src/lang/messages/pages/en.js`
  - `src/lang/messages/pages/zh.js`
  - 新增范围：`pages.luckyBoxAwardConfig`
- 已完成构建验证：
  - `src/views/game/lucky-box/award-config/index.vue` 国际化改动编译通过
  - `src/views/game/lucky-box/award-config/edit.vue` 国际化改动编译通过
  - `src/views/game/lucky-box/award-config/details.vue` 国际化改动编译通过
  - 当前仍保留项目原有 `22` 条 warning，未因本轮 i18n 改动新增阻塞性错误
- 已完成页面：
  - `src/views/game/lucky-box/bounty-config/index.vue`
  - 说明：已完成筛选区、表格列头、类型标签、操作按钮、删除确认与成功提示的国际化；`DAILY`、`WEEKLY` 等实际值与接口逻辑保持原样
- 已处理页面私有子组件：
  - `src/views/game/lucky-box/bounty-config/edit.vue`
  - `src/views/game/lucky-box/bounty-config/details.vue`
  - 说明：已完成编辑弹窗与道具配置弹窗中的标题、表单标签、placeholder、校验提示、按钮、礼物类型/道具类型本地映射国际化；资源值、提交字段、接口参数与逻辑保持原样
- 已补充页面级语言 key：
  - `src/lang/messages/pages/en.js`
  - `src/lang/messages/pages/zh.js`
  - 新增范围：`pages.luckyBoxBountyConfig`
- 已完成构建验证：
  - `src/views/game/lucky-box/bounty-config/index.vue` 国际化改动编译通过
  - `src/views/game/lucky-box/bounty-config/edit.vue` 国际化改动编译通过
  - `src/views/game/lucky-box/bounty-config/details.vue` 国际化改动编译通过
  - 当前仍保留项目原有 `22` 条 warning，未因本轮 i18n 改动新增阻塞性错误

## 当前进行中

- 历史已完成 `src/views` 页面私有组件复查任务当前优先于新页面认领
- 下一步目标：
  - 先补查已标记完成页面目录中的私有组件，并把组件状态补写入进度文档
  - 完成该临时任务后，再继续按 `docs/i18n/主要路由.md` 领取下一个未完成主路由页面
- 当前认领线程：
  - 线程一：当前无进行中任务；已完成 `src/views/sys/start-page/index.vue` 与 `src/views/sys/start-page/form-edit.vue`，并已完成构建验证与 md 同步
  - 线程二：当前无进行中任务；已完成 `src/views/message/push/index.vue`、`src/views/message/push/new-push-form.vue`、`src/views/message/push/push-log.vue`、`src/views/message/push/push-task.vue`，并已完成构建验证与 md 同步
  - 线程三：当前无进行中任务；已完成 `src/views/tools/upload/index.vue`，后续与其他线程一样优先处理历史已完成页面私有组件复查

## 扫描概况

### views 目录

- `src/views` 中命中中文展示文本总数：`9165`
- `src/views` 中涉及文件数：`430`

#### 中文密度较高的页面

- `src/views/user/user-table/index.vue`：158
- `src/views/props/props-source-group/form-edit.vue`：140
- `src/views/cnf/lottery/index.vue`：133
- `src/views/room/profile/index.vue`：128
- `src/views/team/policy/index.vue`：125
- `src/views/activity/template-cnf/index.vue`：90
- `src/views/team/business-development/index.vue`：89
- `src/views/sys/region-config/region/index.vue`：已完成
- `src/views/team/diamond-policy/index.vue`：已完成
- `src/views/game/lottery-config/form-edit.vue`：已完成

### components 目录

- `src/components` 中命中中文展示文本总数：`752`
- `src/components` 中涉及文件数：`57`

#### 中文密度较高的组件

- `src/components/data/UserInfo/BaseInfo/index.vue`：79
- `src/components/data/InappPurchaseApple/index.vue`：54
- `src/components/data/AccountHanle/index.vue`：已完成
- `src/components/data/InAppPurchaseDetails/index.vue`：45
- `src/components/data/InappPurchaseGoogle/index.vue`：40
- `src/components/data/RoomInfo/index.vue`：39
- `src/components/data/UserInfo/BankCardDrawer/index.vue`：33
- `src/components/data/UserAuthForm/index.vue`：32

## 建议执行顺序

### 第一批

- `src/views/user/user-table/index.vue`
- `src/components/data/UserInfo/BaseInfo/index.vue`
- `src/views/room/profile/index.vue`
- `src/views/message/push/push-task.vue`
- `src/views/team/policy/index.vue`

### 第二批

- `src/views/props/props-source-group/form-edit.vue`
- `src/views/cnf/lottery/index.vue`
- `src/views/activity/template-cnf/index.vue`
- `src/views/team/business-development/index.vue`
- `src/views/sys/region-config/region/index.vue`（已完成）
- `src/views/team/diamond-policy/index.vue`
- `src/views/game/lottery-config/form-edit.vue`（已完成）

### 第三批

- `src/components/data/AccountHanle/index.vue`
- `src/components/data/InappPurchaseApple/index.vue`
- `src/components/data/InAppPurchaseDetails/index.vue`
- `src/components/data/InappPurchaseGoogle/index.vue`
- `src/components/data/RoomInfo/index.vue`

## 备注

- 终端里部分文件曾出现乱码展示，已确认源码本身为 UTF-8，后续按 UTF-8 读取和修改
- 在 PowerShell 中建议显式使用：`Get-Content -Raw -Encoding UTF8 <path>`
- 部分旧语言文件中存在历史遗留键值写法混用问题，后续会逐步收口，但不影响当前继续翻译页面
- 路由 / 菜单翻译与页面展示文案翻译分开处理，避免相互影响
- 校验提示、按钮、标签、空态、对话框标题属于安全翻译区
- 类似 `PASS`、`NOT_PASS`、`OFFICIAL_MESSAGE_NOTICE`、`NORMAL`、`FREEZE` 这类后端依赖值必须保持原样
- 本项目构建验证命令为：`npm run build:prod`
