datai/docs/archive/2026-01-21-002-09-国际化资源管理需求.md

7.3 KiB
Raw Permalink Blame History

国际化资源管理需求

元数据

  • 需求编号2026-01-21-002-09
  • 创建时间2026-01-21
  • 创建人SSOT 架构师
  • 状态:进行中
  • 优先级:低
  • 父需求2026-01-21-002-项目国际化需求

需求概述

提供国际化资源管理功能,支持添加、编辑、删除国际化资源,支持按语言、模块筛选资源,支持批量导入导出资源。

目标

  1. 资源添加:支持添加国际化资源(键值对)
  2. 资源编辑:支持编辑国际化资源
  3. 资源删除:支持删除国际化资源
  4. 资源筛选:支持按语言、模块筛选资源
  5. 批量导入:支持批量导入国际化资源
  6. 批量导出:支持批量导出国际化资源

业务上下文

当前问题

  • 缺乏国际化资源管理功能,无法动态管理国际化资源
  • 国际化资源分散在代码中,难以维护
  • 缺乏批量导入导出功能,效率低下

业务场景

国际化资源管理
├─ 资源列表
│  ├─ 查看所有国际化资源
│  ├─ 按语言筛选
│  ├─ 按模块筛选
│  ├─ 搜索资源键
│  └─ 搜索资源值
├─ 资源添加
│  ├─ 选择语言
│  ├─ 输入模块名称
│  ├─ 输入资源键
│  └─ 输入资源值
├─ 资源编辑
│  ├─ 修改资源键
│  └─ 修改资源值
├─ 资源删除
│  └─ 删除资源
├─ 批量导入
│  ├─ 上传导入文件
│  └─ 解析导入数据
└─ 批量导出
   ├─ 选择导出语言
   ├─ 选择导出模块
   └─ 生成导出文件

应用场景

  1. 资源维护:管理员可以维护国际化资源
  2. 批量操作:管理员可以批量导入导出国际化资源
  3. 资源查询:管理员可以查询国际化资源
  4. 资源更新:管理员可以更新国际化资源

功能需求

核心功能

功能 1资源列表

  • 描述:提供资源列表功能,支持查看所有国际化资源
  • 验收标准
    1. 支持查看所有国际化资源
    2. 支持按语言筛选
    3. 支持按模块筛选
    4. 支持按资源键搜索
    5. 支持按资源值搜索
    6. 支持分页查询
    7. 支持排序
  • 优先级:高
  • 依赖关系:依赖国际化资源表

功能 2资源添加

  • 描述:提供资源添加功能,支持添加国际化资源
  • 验收标准
    1. 支持选择语言
    2. 支持输入模块名称
    3. 支持输入资源键
    4. 支持输入资源值
    5. 同一语言下,资源键必须唯一
    6. 添加成功后显示成功提示
  • 优先级:高
  • 依赖关系:依赖国际化资源表

功能 3资源编辑

  • 描述:提供资源编辑功能,支持编辑国际化资源
  • 验收标准
    1. 支持修改资源键
    2. 支持修改资源值
    3. 修改资源键时,检查是否与现有资源键冲突
    4. 编辑成功后显示成功提示
  • 优先级:高
  • 依赖关系:依赖国际化资源表

功能 4资源删除

  • 描述:提供资源删除功能,支持删除国际化资源
  • 验收标准
    1. 支持删除资源
    2. 删除前提示确认
    3. 删除成功后显示成功提示
  • 优先级:高
  • 依赖关系:依赖国际化资源表

功能 5批量导入

  • 描述:提供批量导入功能,支持批量导入国际化资源
  • 验收标准
    1. 支持上传导入文件Excel、CSV、JSON
    2. 支持解析导入数据
    3. 支持数据校验
    4. 支持导入预览
    5. 支持导入确认
    6. 导入成功后显示成功提示
    7. 导入失败时显示错误信息
  • 优先级:中
  • 依赖关系:依赖国际化资源表

功能 6批量导出

  • 描述:提供批量导出功能,支持批量导出国际化资源
  • 验收标准
    1. 支持选择导出语言
    2. 支持选择导出模块
    3. 支持导出文件格式Excel、CSV、JSON
    4. 支持导出预览
    5. 支持导出确认
    6. 导出成功后自动下载文件
  • 优先级:中
  • 依赖关系:依赖国际化资源表

非功能需求

性能需求

  • 查询时间:资源列表查询时间 < 100ms
  • 添加时间:资源添加时间 < 500ms
  • 编辑时间:资源编辑时间 < 500ms
  • 删除时间:资源删除时间 < 500ms
  • 导入时间:批量导入 1000 条数据时间 < 10s
  • 导出时间:批量导出 1000 条数据时间 < 10s

安全需求

  • 认证方式:使用现有的 Spring Security 认证机制
  • 授权机制:只有管理员权限才能管理国际化资源
  • 数据安全:国际化资源数据加密存储
  • 审计日志:记录国际化资源变更日志

可维护性需求

  • 代码可读性:代码符合项目编码规范,注释完整
  • 测试覆盖率:单元测试覆盖率 ≥ 80%

数据需求

数据模型

sys_i18n_resource国际化资源表

sys_i18n_resource (国际化资源表)
├─ id (BIGINT) - 主键ID
├─ lang_code (VARCHAR) - 语言代码zh、en
├─ module_name (VARCHAR) - 模块名称
├─ resource_key (VARCHAR) - 资源键
├─ resource_value (TEXT) - 资源值
├─ create_by (VARCHAR) - 创建者
├─ create_time (DATETIME) - 创建时间
├─ update_by (VARCHAR) - 更新者
└─ update_time (DATETIME) - 更新时间

数据存储需求

  • 数据库类型MySQL 8.3.0
  • 存储容量:单表支持 1000 万+ 数据
  • 数据备份策略:每日备份,保留 7 天

数据流转需求

资源管理
  └─ 管理员添加/编辑/删除国际化资源
  └─ 更新数据库中的国际化资源
  └─ 刷新国际化资源缓存

业务规则

  1. 资源键唯一性同一语言下资源键resource_key必须唯一
  2. 资源管理权限:只有管理员权限才能管理国际化资源
  3. 导入数据校验:导入数据必须校验,确保数据正确性
  4. 导出数据格式:导出数据必须符合标准格式

技术约束

  1. Spring Boot 版本3.5.7
  2. Java 版本21
  3. 数据库MySQL 8.3.0
  4. ORM 框架MyBatis 3.5.16
  5. 文件处理Apache POI、Jackson
  6. 必须使用现有的认证授权机制:不能引入新的认证方式

成功标准

  1. 支持添加国际化资源
  2. 支持编辑国际化资源
  3. 支持删除国际化资源
  4. 支持按语言、模块筛选资源
  5. 支持批量导入国际化资源
  6. 支持批量导出国际化资源
  7. 资源列表查询时间 < 100ms
  8. 批量导入 1000 条数据时间 < 10s
  9. 批量导出 1000 条数据时间 < 10s
  10. 单元测试覆盖率 ≥ 80%

风险评估

风险 影响程度 发生概率 缓解措施
导入数据格式错误导致导入失败 实现数据校验,提供错误提示
导出数据格式不兼容 支持多种导出格式,确保兼容性
资源键冲突导致数据覆盖 导入前检查资源键冲突,提供覆盖选项

依赖关系

  • 依赖国际化资源表
  • 依赖现有的 MyBatis 框架
  • 依赖现有的认证授权机制
  • 依赖 Apache POI、Jackson

相关文档