zh-CN.ts 20.4 KB
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698
export default {
  app: {
    seo: {
      title: '机器人生产管理看板',
      description: '用于机器人装配、测试、异常、返修与追溯管理的生产运营看板。'
    },
    error: {
      title: '页面未找到',
      description: '抱歉,未找到该页面。'
    }
  },
  common: {
    error: '错误',
    requestFailed: '请求失败,请稍后重试。',
    language: '语言',
    english: 'English',
    chinese: '中文',
    saveChanges: '保存更改',
    choose: '选择',
    cancel: '取消',
    create: '创建',
    delete: '删除',
    update: '更新',
    send: '发送',
    saveDraft: '保存草稿',
    accept: '接受',
    optOut: '拒绝',
    invitePeople: '邀请成员',
    newCustomer: '新建客户',
    advancedQuery: '高级查询',
    collapseQuery: '收起筛选'
  },
  layout: {
    nav: {
      home: '首页',
      production: '生产执行',
      workOrders: '工单管理',
      snManagement: 'SN管理',
      operations: '工序执行台',
      inbox: '收件箱',
      customers: '客户',
      baseInfo: '基础信息',
      deviceTypes: '设备类型',
      settings: '设置',
      general: '通用',
      members: '成员',
      notifications: '通知',
      security: '安全',
      feedback: '反馈',
      helpSupport: '帮助与支持'
    },
    search: {
      goTo: '前往',
      code: '代码',
      viewPageSource: '查看页面源码'
    },
    cookie: {
      title: '我们使用第一方 Cookie 来优化您的网站使用体验。'
    }
  },
  notifications: {
    title: '通知',
    messageMap: {
      sentMessage: '给你发送了一条消息',
      subscribedEmailList: '订阅了你的邮件列表',
      addedProject: '将你加入了一个项目',
      abandonedCart: '放弃了购物车',
      purchasedProduct: '购买了你的产品',
      requestedRefund: '发起了退款请求'
    }
  },
  teams: {
    createTeam: '创建团队',
    manageTeams: '管理团队'
  },
  userMenu: {
    profile: '个人资料',
    billing: '账单',
    settings: '设置',
    theme: '主题',
    primary: '主色',
    neutral: '中性色',
    appearance: '外观',
    light: '浅色',
    dark: '深色',
    templates: '模板',
    starter: '起始模板',
    landing: '落地页',
    docs: '文档站',
    saas: 'SaaS',
    dashboard: '仪表盘',
    chat: '聊天',
    portfolio: '作品集',
    changelog: '更新日志',
    documentation: '文档',
    githubRepository: 'GitHub 仓库',
    defaultName: '未登录用户',
    logout: '退出登录',
    logoutSuccessTitle: '已退出登录',
    logoutSuccessDescription: '当前会话已结束。'
  },
  login: {
    badge: '生产系统访问',
    title: '登录机器人生产管理系统',
    description: '请输入账号密码以访问工单、工序、测试、异常和追溯等业务模块。',
    form: {
      title: '账号登录',
      description: '登录后将根据角色加载对应菜单与页面权限。',
      username: '用户名',
      usernamePlaceholder: '请输入用户名',
      password: '密码',
      passwordPlaceholder: '请输入密码',
      submit: '登录'
    },
    demo: {
      title: '示例账号(Mock)',
      admin: '管理员:admin / 123456',
      operator: '操作员:operator / 123456'
    },
    validation: {
      usernameRequired: '请输入用户名',
      passwordRequired: '请输入密码'
    },
    errors: {
      title: '登录失败',
      validation: '用户名和密码不能为空。',
      invalidCredentials: '用户名或密码错误。',
      requestFailed: '登录请求失败,请稍后重试。'
    },
    toast: {
      successTitle: '登录成功',
      successDescription: '欢迎回来,{name}。'
    }
  },
  home: {
    title: '生产总览看板',
    actions: {
      refresh: '手动刷新',
      export: '汇总导出'
    },
    dateRange: {
      pickDate: '选择日期',
      last7Days: '近 7 天',
      last14Days: '近 14 天',
      last30Days: '近 30 天',
      last3Months: '近 3 个月',
      last6Months: '近 6 个月',
      lastYear: '近 1 年'
    },
    filters: {
      lineAll: '全部产线',
      workOrderStatusAll: '全部工单状态'
    },
    workOrderStatus: {
      pending_dispatch: '待派工',
      running: '执行中',
      pending_qc: '待质检',
      in_exception: '异常中',
      completed: '已完成'
    },
    metrics: {
      workOrders: {
        total: '工单总数',
        running: '执行中',
        pendingQc: '待质检',
        inException: '异常中'
      },
      sn: {
        completed: 'SN完工数',
        inProcess: '在制数',
        frozen: '冻结数'
      },
      quality: {
        firstPassRate: '首测通过率',
        retestPassRate: '复测通过率',
        exceptionRate: '异常率'
      }
    },
    table: {
      title: '最近工单进展',
      description: '展示当前筛选条件下的最新工单执行概况。',
      count: '共 {count} 条',
      orderNo: '工单号',
      line: '产线',
      status: '状态',
      plannedDate: '计划日期',
      progress: '完成进度',
      empty: '当前筛选条件下暂无工单数据。'
    },
    export: {
      successTitle: '导出成功',
      successDescription: '汇总文件已生成并开始下载。'
    }
  },
  workOrders: {
    title: '工单管理',
    actions: {
      new: '新建工单',
      editDraft: '编辑草稿',
      dispatch: '下达',
      pause: '暂停',
      resume: '恢复',
      close: '关闭'
    },
    status: {
      draft: '草稿',
      pending_dispatch: '待派工',
      running: '执行中',
      paused: '暂停中',
      pending_qc: '待质检',
      completed: '已完成',
      closed: '已关闭'
    },
    filters: {
      orderNo: '工单号',
      deviceCode: '设备编号',
      deviceCodeAll: '全部设备类型',
      batchNo: '批次',
      owner: '责任人',
      ownerAll: '全部责任人',
      status: '状态',
      statusAll: '全部状态',
      plannedStart: '计划开始',
      plannedEnd: '计划结束'
    },
    table: {
      actions: '操作',
      selectAll: '全选',
      selectRow: '选择行',
      orderNo: '工单号',
      deviceCode: '设备编号',
      batchNo: '批次',
      line: '产线',
      owner: '责任人',
      status: '状态',
      progress: '完成率',
      plannedDate: '计划日期',
      audit: '审计信息',
      selectedRows: '已选择 {selected} / {total} 行。'
    },
    form: {
      createTitle: '新建工单',
      createDescription: '创建工单草稿,后续可编辑并下达。',
      editTitle: '编辑工单草稿',
      editDescription: '仅草稿状态可编辑,变更将写入审计记录。',
      fields: {
        orderNo: '工单号',
        deviceCode: '设备编号',
        batchNo: '批次号',
        line: '产线',
        owner: '责任人',
        plannedDate: '计划日期',
        totalSn: '总SN数量'
      },
      validation: {
        required: '该字段不能为空',
        orderNoMax: '工单号不能超过 {max} 个字符',
        deviceCodeMax: '设备编号不能超过 {max} 个字符',
        batchNoMax: '批次号不能超过 {max} 个字符',
        lineMax: '产线不能超过 {max} 个字符',
        totalSnPositive: '总SN数量必须大于 0'
      }
    }
  },
  snManagement: {
    title: 'SN管理',
    actions: {
      import: '批量导入',
      freeze: '冻结',
      unfreeze: '解冻',
      scrap: '报废',
      flowDetail: '流程详情入口',
      reasonRequired: '请填写操作原因。',
      reasonLabel: '操作原因',
      reasonPlaceholder: '请输入冻结/解冻/报废原因'
    },
    status: {
      pending: '待开工',
      in_process: '在制',
      completed: '已完工',
      frozen: '已冻结',
      scrapped: '已报废'
    },
    exceptionStatus: {
      none: '无异常',
      open: '异常处理中',
      rework: '返修中',
      closed: '已闭环'
    },
    filters: {
      sn: 'SN',
      workOrderNo: '工单号',
      status: '状态',
      statusAll: '全部状态',
      currentStep: '当前工序',
      exceptionStatus: '异常状态',
      exceptionStatusAll: '全部异常状态'
    },
    table: {
      actions: '操作',
      selectAll: '全选',
      selectRow: '选择行',
      sn: 'SN',
      workOrderNo: '工单号',
      status: '状态',
      currentStep: '当前工序',
      exceptionStatus: '异常状态',
      reason: '原因',
      audit: '审计信息',
      selectedRows: '已选择 {selected} / {total} 行。'
    },
    import: {
      title: '批量导入 SN',
      description: '支持按行或分隔符批量导入 SN,重复 SN 将自动跳过。',
      workOrderNo: '工单号',
      currentStep: '当前工序',
      snList: 'SN 列表',
      workOrderPlaceholder: '如:WO-202605-001',
      currentStepPlaceholder: '如:装配',
      snListPlaceholder: '每行一个 SN,或使用逗号/空格分隔',
      validation: '请填写工单号、当前工序和 SN 列表。'
    },
    flow: {
      title: 'SN流程详情',
      operatorLabel: '操作人',
      timeLabel: '操作时间',
      directionLabel: '状态流转方向',
      initialStatus: '初始状态',
      empty: '暂无流程记录。'
    }
  },
  operations: {
    title: '工序执行台',
    filters: {
      workstation: '工位',
      stepName: '工序',
      operator: '操作员',
      status: '任务状态',
      statusAll: '全部状态',
      sn: 'SN'
    },
    status: {
      pending: '待开始',
      in_progress: '进行中',
      pending_test: '待测试',
      failed: '测试失败',
      rework: '返修中',
      completed: '已完成',
      skipped: '已跳过'
    },
    result: {
      pending: '待提交',
      pass: '通过',
      fail: '失败'
    },
    actions: {
      start: '开工',
      complete_assembly: '完成装配',
      complete_rework: '完成返修',
      complete_repair: '完成维修',
      submit_test: '提交测试',
      skip: '跳过工序',
      audit: '任务审计记录',
      testResult: '测试结果',
      remarkLabel: '备注',
      remarkPlaceholder: '请输入操作备注或跳过原因',
      skipReasonRequired: '跳过工序必须填写原因。'
    },
    table: {
      actions: '操作',
      selectAll: '全选',
      selectRow: '选择行',
      taskId: '任务ID',
      workOrderSn: '工单号 / SN',
      stepName: '工序',
      workstationDevice: '工位 / 设备',
      operator: '操作员',
      timeRange: '开始 ~ 结束时间',
      result: '结果',
      status: '状态',
      nextAction: '下一步动作',
      selectedRows: '已选择 {selected} / {total} 行。'
    },
    nextAction: {
      start: '可开工',
      complete_assembly: '可完成装配',
      complete_rework: '可完成返修',
      submit_test: '可提交测试',
      create_exception: '需创建异常',
      go_next_step: '流转下一工序',
      audit_review: '需审计复核'
    },
    audit: {
      title: '任务审计记录',
      operatorLabel: '操作人',
      timeLabel: '操作时间',
      directionLabel: '状态流转方向',
      initialStatus: '初始状态',
      empty: '暂无审计记录。'
    }
  },
  inbox: {
    title: '收件箱',
    tabs: {
      all: '全部',
      unread: '未读'
    },
    actions: {
      archive: '归档',
      reply: '回复',
      attachFile: '添加附件',
      markAsUnread: '标记为未读',
      markAsImportant: '标记为重要',
      starThread: '收藏会话',
      muteThread: '静音会话'
    },
    compose: {
      replyTo: '回复给 {name}({email})',
      placeholder: '请输入回复内容...'
    },
    toast: {
      sentTitle: '邮件已发送',
      sentDescription: '你的邮件已成功发送'
    }
  },
  customers: {
    title: '客户',
    table: {
      actions: '操作',
      copyCustomerId: '复制客户 ID',
      copiedTitle: '已复制到剪贴板',
      copiedDescription: '客户 ID 已复制到剪贴板',
      viewDetails: '查看客户详情',
      viewPayments: '查看客户付款记录',
      deleteCustomer: '删除客户',
      deletedTitle: '客户已删除',
      deletedDescription: '该客户已删除。',
      selectAll: '全选',
      selectRow: '选择行',
      id: 'ID',
      name: '姓名',
      email: '邮箱',
      location: '地区',
      status: '状态',
      display: '显示列',
      filterEmails: '筛选邮箱...',
      filterStatus: '筛选状态',
      selectedRows: '已选择 {selected} / {total} 行。'
    },
    status: {
      all: '全部',
      subscribed: '已订阅',
      unsubscribed: '未订阅',
      bounced: '退信'
    },
    addModal: {
      title: '新建客户',
      description: '向数据库新增一个客户',
      name: '姓名',
      email: '邮箱',
      namePlaceholder: '张三',
      emailPlaceholder: 'zhangsan@example.com',
      successTitle: '成功',
      successDescription: '已新增客户 {name}'
    },
    deleteModal: {
      title: '删除 {count} 个客户',
      description: '确认删除吗?此操作不可撤销。'
    }
  },
  deviceTypes: {
    title: '设备类型管理',
    actions: {
      new: '新建设备类型',
      edit: '编辑设备类型',
      delete: '删除设备类型'
    },
    filters: {
      searchPlaceholder: '搜索设备名称 / 型号 / 类型',
      allCategoryEnums: '全部枚举类',
      categoryEnumPlaceholder: '设备枚举类',
      allBattery: '电池属性:全部',
      hasBattery: '含电池',
      noBattery: '不含电池',
      batteryPlaceholder: '电池属性'
    },
    categoryEnum: {
      robot: '机器人',
      controller: '控制器',
      vision: '视觉',
      chassis: '底盘',
      communication: '通信',
      power: '电源',
      sensor: '传感器',
      actuator: '执行器',
      other: '其他'
    },
    battery: {
      yes: '含电池',
      no: '不含电池'
    },
    table: {
      actions: '操作',
      selectAll: '全选',
      selectRow: '选择行',
      id: 'ID',
      name: '设备名称',
      model: '型号',
      categoryEnum: '枚举类',
      size: '长×宽×高(mm)',
      weightKg: '重量(kg)',
      hasBattery: '是否含电池',
      updatedAt: '更新时间',
      display: '显示列',
      selectedRows: '已选择 {selected} / {total} 行。'
    },
    form: {
      createTitle: '新建设备类型',
      createDescription: '录入设备主数据,供工艺与追溯环节引用。',
      editTitle: '编辑设备类型',
      editDescription: '更新设备类型属性,变更将影响后续新工单配置。',
      fields: {
        name: '设备名称',
        model: '型号',
        categoryEnum: '枚举类',
        lengthMm: '长度(mm)',
        widthMm: '宽度(mm)',
        heightMm: '高度(mm)',
        weightKg: '重量(kg)',
        hasBattery: '是否含电池',
        dimensionPreview: '尺寸预览',
        batterySpec: '电池规格',
        description: '备注'
      },
      placeholders: {
        name: '如:协作机械臂控制柜',
        model: '如:RPS-CB-500',
        categoryEnum: '请选择设备枚举类',
        lengthMm: '请输入长度',
        widthMm: '请输入宽度',
        heightMm: '请输入高度',
        weightKg: '请输入重量',
        batterySpec: '如:48V 40Ah 磷酸铁锂',
        description: '可填写使用场景、注意事项等'
      },
      hints: {
        name: '建议与工艺/测试规范中的命名保持一致。',
        model: '建议填写企业内统一型号编码。',
        categoryEnum: '用于统一数据标准、筛选与统计。',
        weightKg: '单位为 kg,支持 1 位小数。',
        hasBattery: '如设备内置或外接电池,请勾选。',
        batterySpec: '示例:24V 15Ah 锂电。',
        description: '用于补充设备识别信息,最多 {max} 字。',
        noChanges: '当前未修改任何字段。'
      },
      validation: {
        required: '该字段不能为空',
        positive: '请输入大于 0 的数值',
        batterySpecRequired: '含电池设备必须填写电池规格',
        nameTooLong: '设备名称不能超过 {max} 个字符',
        modelTooLong: '型号不能超过 {max} 个字符',
        batterySpecTooLong: '电池规格不能超过 {max} 个字符',
        descriptionTooLong: '备注不能超过 {max} 个字符',
        sizeTooLarge: '尺寸不能超过 {max} mm',
        weightTooLarge: '重量不能超过 {max} kg'
      }
    },
    deleteModal: {
      title: '删除 {count} 个设备类型',
      description: '删除后无法恢复,且可能影响后续业务引用。请确认操作。'
    },
    toast: {
      batchDeleted: '已删除 {count} 个设备类型。'
    }
  },
  permission: {
    denied: '当前操作无权限。',
    pageNotManaged: '该页面未纳入权限配置。',
    pageDenied: '你没有访问此页面的权限。',
    buttonDenied: '你没有执行该操作的权限。',
    toast: {
      title: '权限受限'
    },
    forbidden: {
      badge: '403 访问受限',
      title: '无权访问该页面',
      description: '你的角色未被授权访问当前页面。如需开通,请联系系统管理员。',
      fromTitle: '尝试访问路径',
      backHome: '返回首页',
      goBack: '返回上一页'
    }
  },
  settings: {
    title: '设置',
    nav: {
      general: '通用',
      members: '成员',
      notifications: '通知',
      security: '安全',
      documentation: '文档'
    },
    profile: {
      title: '个人资料',
      description: '这些信息将会公开显示。',
      name: '姓名',
      nameDesc: '将展示在收据、发票和其他沟通内容中。',
      email: '邮箱',
      emailDesc: '用于登录、邮件回执和产品更新通知。',
      username: '用户名',
      usernameDesc: '用于登录和个人资料链接的唯一用户名。',
      avatar: '头像',
      avatarDesc: '支持 JPG、GIF 或 PNG,最大 1MB。',
      bio: '简介',
      bioDesc: '你的个人简介,链接会自动识别。',
      toastTitle: '成功',
      toastDesc: '设置已更新。',
      validation: {
        tooShort: '长度太短',
        invalidEmail: '邮箱格式不正确'
      }
    },
    members: {
      title: '成员',
      description: '通过邮箱地址邀请新成员。',
      searchPlaceholder: '搜索成员',
      editMember: '编辑成员',
      removeMember: '移除成员',
      inviteModal: {
        title: '邀请成员',
        description: '填写成员信息并分配角色。',
        submit: '发送邀请'
      },
      editModal: {
        title: '编辑成员',
        description: '更新成员资料与角色。',
        submit: '保存成员'
      },
      roleLabel: '角色',
      role: {
        member: '成员',
        admin: '管理员',
        customer: '客户'
      }
    },
    notifications: {
      sections: {
        channels: {
          title: '通知渠道',
          description: '我们通过哪些渠道通知你?'
        },
        account: {
          title: '账户更新',
          description: '接收有关 Nuxt UI 的更新通知。'
        }
      },
      fields: {
        email: {
          label: '邮件',
          description: '每天接收一封摘要邮件。'
        },
        desktop: {
          label: '桌面通知',
          description: '接收桌面通知。'
        },
        weeklyDigest: {
          label: '每周摘要',
          description: '每周接收新闻摘要。'
        },
        productUpdates: {
          label: '产品更新',
          description: '每月接收包含新功能与更新的邮件。'
        },
        importantUpdates: {
          label: '重要更新',
          description: '接收安全修复、维护等重要通知邮件。'
        }
      }
    },
    security: {
      password: {
        title: '密码',
        description: '设置新密码前,请先确认当前密码。',
        currentPlaceholder: '当前密码',
        newPlaceholder: '新密码',
        update: '更新',
        validation: {
          minLength: '至少 8 个字符',
          different: '新旧密码不能相同'
        }
      },
      account: {
        title: '账号',
        description: '如果你不再使用该服务,可以在这里删除账号。此操作不可逆,账号相关的所有信息将被永久删除。',
        delete: '删除账号'
      }
    }
  }
} as const