datai/docs/archive/api-docs/system/2026-01-26-002-08-04-api-修改语言.md

3.1 KiB
Raw Permalink Blame History

API 文档:修改语言接口

元数据

  • 需求编号2026-01-26-002-08-04
  • 创建时间2026-01-26
  • 创建人SSOT 架构师
  • 父需求2026-01-26-002-08-语言管理功能
  • 状态:已完成

功能概述

修改已有的语言信息。

接口信息

基本信息

  • 接口名称:修改语言
  • 接口功能:更新已存在的语言信息
  • 请求方式PUT
  • 请求路径/system/language
  • 权限要求system:language:edit

请求参数

参数名 类型 必选 说明 示例值
id Long 语言 ID 2
langCode String 语言代码 en-US
langName String 语言名称 英语(美国)
langNameEn String 语言英文名称 English (United States)
sortOrder Integer 排序 2
status String 状态0正常 1停用 0

响应参数

参数名 类型 说明
code Integer 状态码200 成功)
msg String 提示信息

请求示例

PUT /system/language
Content-Type: application/json

{
  "id": 2,
  "langCode": "en-US",
  "langName": "英语(美国)",
  "langNameEn": "English (United States)",
  "sortOrder": 2,
  "status": "0"
}

响应示例

{
  "code": 200,
  "msg": "修改成功"
}

错误码

错误码 说明 处理建议
400 请求参数错误 检查请求参数是否正确
401 未登录或登录已过期 重新登录
403 无权限访问 联系管理员分配权限
404 语言不存在 检查语言 ID 是否正确
409 语言代码已存在 使用不同的语言代码
500 服务器内部错误 联系技术支持

业务规则

  1. 唯一性规则

    • 语言代码langCode必须唯一
    • 不能修改为已存在的语言代码(除自己外)
  2. 必填规则

    • 语言 IDid为必填项
    • 语言代码langCode为必填项
    • 语言名称langName为必填项
    • 语言英文名称langNameEn为必填项
  3. 数据权限

    • 需要登录用户
    • 需要具备 system:language:edit 权限
  4. 修改后处理

    • 清除语言列表缓存
    • 清除语言详情缓存
    • 记录操作日志
  5. 特殊限制

    • 不能修改默认语言的 ID
    • 不能修改语言代码为系统保留的代码(如 zh-CN、en-US

缓存策略

  • 缓存类型Redis
  • 缓存更新
    • 修改语言后清除该语言的缓存
    • 清除所有语言列表缓存
    • 清除缓存键模式:system:language:*

注意事项

  1. 修改语言代码会影响所有使用该语言的用户,建议谨慎操作
  2. 修改语言名称不会影响语言代码,前端显示的语言名称会立即更新
  3. 修改语言状态后,停用的语言不会在前端语言选择列表中显示
  4. 修改排序字段会影响语言在前端的显示顺序
  5. 修改语言信息后,建议刷新国际化资源缓存以确保翻译内容生效