bill 1 年間 前
コミット
50e9dcc4dd

+ 3 - 1
src/api/constant.ts

@@ -9,10 +9,12 @@ export enum ResCode {
 export const all = '___all___'
 export type All = typeof all
 
+const codes = ui18n.t('code')
 export const ResCodeDesc: { [key in ResCode]: string } = {
   [ResCode.TOKEN_INVALID]: ui18n.t('sys.TOKEN_INVALID'),
   [ResCode.NO_ACCESS]: ui18n.t('sys.NO_ACCESS'),
-  [ResCode.SUCCESS]: ui18n.t('sys.SUCCESS')
+  [ResCode.SUCCESS]: ui18n.t('sys.SUCCESS'),
+  ...(codes as any)
 }
 
 // 上传文件

+ 11 - 2
src/components/locale-env/index.vue

@@ -1,9 +1,18 @@
 <template>
-  <a-config-provider :locale="zhCN">
+  <a-config-provider :locale="locale[lang]">
     <slot></slot>
   </a-config-provider>
 </template>
 
 <script setup lang="ts">
-import zhCN from 'ant-design-vue/es/locale/zh_CN'
+import zh from 'ant-design-vue/es/locale/zh_CN'
+import en from 'ant-design-vue/es/locale/en_US'
+import ja from 'ant-design-vue/es/locale/ja_JP'
+import { lang } from '@/lang'
+
+const locale = {
+  zh,
+  en,
+  ja
+}
 </script>

+ 13 - 4
src/env/index.ts

@@ -1,3 +1,5 @@
+import { getToken } from '@/api'
+import { lang } from '@/lang'
 import { strToParams } from '@/shared'
 
 export type Params = {
@@ -7,8 +9,15 @@ export type Params = {
 export const params = strToParams(location.search) as Params
 export const baseURL = import.meta.env.DEV ? '/api' : '/'
 
-export const registerLink = '/#/login/register?from=%2F'
-export const forgetLink = '/#/login/forget?from=%2F'
-export const userInfoLink = '/#/information'
+const goto = import.meta.env.DEV ? 'https://test.4dkankan.com' : ''
+export const registerLink = `${goto}?lang=${lang}#/login/register`
+export const forgetLink = `${goto}?lang=${lang}#/login/forget`
+export const userInfoLink = `${goto}?lang=${lang}#/information`
 
-export const projectManage = '/smarts/smart-viewer.html'
+export let projectManage = `${goto}/smarts/smart-viewer.html?lang=${lang}`
+
+setTimeout(() => {
+  if (import.meta.env.DEV) {
+    projectManage = `${projectManage}&token=${getToken()}`
+  }
+}, 1000)

+ 25 - 0
src/lang/en/code.ts

@@ -0,0 +1,25 @@
+export default {
+    "0": "操作成功",
+    "2001": "操作过于频繁,请刷新后再试",
+    "4001": "参数缺少",
+    "4002": "没有权限",
+    "4003": "用户不存在",
+    "4004": "用户已添加",
+    "4005": "项目创建人不能删除",
+    "4008": "用户未登录",
+    "4009": "四维登录失败",
+    "4010": "删除自己",
+    "4011": "默认角色不允许",
+    "4012": "角色已被成员绑定,请更换成员角色后进行删除",
+    "5001": "项目创建人不存在",
+    "5002": "项目不存在,或已删除",
+    "7001": "文件上传失败",
+    "7002": "上传文件不存在",
+    "7003": "文件上传过大",
+    "7004": "上传调用bim失败",
+    "7005": "bim已上传,删除可再次删除",
+    "7006": "bim上传中,请稍后",
+    "7007": "文件内容错误",
+    "8001": "场景已绑定不可添加",
+    "-1": "操作失败"
+}

+ 1 - 1
src/lang/en/project.ts

@@ -35,7 +35,7 @@ export default {
     "projectBimLabel": "BIM",
     "projectImgTip": "Recommended size: 500 * 500 pixels",
     "projectNameLabel": "Project Name",
-    "projectMsgLabel": "Project Description",
+    "projectMsgLabel": "Description",
     "projectCreaterLabel": "Creator",
     "createTimeLabel": "Creation Time",
     "updateTimeLabel": "Last Updated",

+ 1 - 1
src/lang/en/role.ts

@@ -6,7 +6,7 @@ export default {
     "name": "Project Role",
     "roleNameRule": "Please enter a role name",
     "remarkRule": "Please enter a note, maximum 50 characters",
-    "roleMenusLabel": "Menu Assignment",
+    "roleMenusLabel": "Assignment",
     "add": "New Role",
     "delMsg": "Are you sure you want to delete this role?"
 }

+ 2 - 1
src/lang/en/scene.ts

@@ -15,5 +15,6 @@ export default {
     "nameLabel1Rule": "Please enter a name, maximum {max} characters.",
     "fileLabel": "BIM",
     "updateFile": "Modify BIM",
-    "shootCountLabel": "Projects"
+    "shootCountLabel": "Projects",
+    "addTip": "Please add scenes with the same camera type and the same number of points."
 }

+ 25 - 0
src/lang/ja/code.ts

@@ -0,0 +1,25 @@
+export default {
+    "0": "操作成功",
+    "2001": "操作过于频繁,请刷新后再试",
+    "4001": "参数缺少",
+    "4002": "没有权限",
+    "4003": "用户不存在",
+    "4004": "用户已添加",
+    "4005": "项目创建人不能删除",
+    "4008": "用户未登录",
+    "4009": "四维登录失败",
+    "4010": "删除自己",
+    "4011": "默认角色不允许",
+    "4012": "角色已被成员绑定,请更换成员角色后进行删除",
+    "5001": "项目创建人不存在",
+    "5002": "项目不存在,或已删除",
+    "7001": "文件上传失败",
+    "7002": "上传文件不存在",
+    "7003": "文件上传过大",
+    "7004": "上传调用bim失败",
+    "7005": "bim已上传,删除可再次删除",
+    "7006": "bim上传中,请稍后",
+    "7007": "文件内容错误",
+    "8001": "场景已绑定不可添加",
+    "-1": "操作失败"
+}

+ 2 - 1
src/lang/ja/scene.ts

@@ -15,5 +15,6 @@ export default {
     "nameLabel1Rule": "タイトルを入力してください。最大{max}字まで",
     "fileLabel": "BIMファイル",
     "updateFile": "BIMを調整",
-    "shootCountLabel": "ポイント数"
+    "shootCountLabel": "ポイント数",
+    "addTip": "同じカメラタイプで同じ点数のシーンを追加してください。"
 }

+ 1 - 1
src/lang/ja/sys.ts

@@ -51,7 +51,7 @@ export default {
     "projectFileCount": "ファイル数",
     "projectSceneCount": "物件数",
     "projectOverCount": "完成数",
-    "operLog": "操作記録",
+    "operLog": "情報の変更",
     "updateInfo": "操作記録",
     "updatePwd": "パスワードを変更",
     "delTip": "削除後には元に戻せないので確定しますか?",

+ 25 - 0
src/lang/zh/code.ts

@@ -0,0 +1,25 @@
+export default {
+    "0": "操作成功",
+    "2001": "操作过于频繁,请刷新后再试",
+    "4001": "参数缺少",
+    "4002": "没有权限",
+    "4003": "用户不存在",
+    "4004": "用户已添加",
+    "4005": "项目创建人不能删除",
+    "4008": "用户未登录",
+    "4009": "四维登录失败",
+    "4010": "删除自己",
+    "4011": "默认角色不允许",
+    "4012": "角色已被成员绑定,请更换成员角色后进行删除",
+    "5001": "项目创建人不存在",
+    "5002": "项目不存在,或已删除",
+    "7001": "文件上传失败",
+    "7002": "上传文件不存在",
+    "7003": "文件上传过大",
+    "7004": "上传调用bim失败",
+    "7005": "bim已上传,删除可再次删除",
+    "7006": "bim上传中,请稍后",
+    "7007": "文件内容错误",
+    "8001": "场景已绑定不可添加",
+    "-1": "操作失败"
+}

+ 19 - 19
src/lang/zh/scene.ts

@@ -1,20 +1,20 @@
 export default {
-  addTip: '请添加相同相机类型和点位数量一致的场景',
-  delTip: '确定要删除此场景?',
-  nameLabel: '名称',
-  phoneLabel: '创建人',
-  numLabel: '场景码',
-  typeLabel: '类型',
-  shootCountLabel: '点位数',
-  statusLabel: '状态',
-  createTimeLabel: '拍摄时间',
-  name: '场景',
-  selected: '已选择{len}个场景',
-  nameRule: '请输入场景名称',
-  fileRule: '请上传BIM文件',
-  create: '创建场景',
-  nameLabel1: '场景名称',
-  nameLabel1Rule: '请输入名称最多{max}字',
-  fileLabel: 'BIM文件',
-  updateFile: '修改BIM'
-}
+    "addTip": "请添加相同相机类型和点位数量一致的场景",
+    "delTip": "确定要删除此场景?",
+    "nameLabel": "名称",
+    "phoneLabel": "创建人",
+    "numLabel": "场景码",
+    "typeLabel": "类型",
+    "shootCountLabel": "点位数",
+    "statusLabel": "状态",
+    "createTimeLabel": "拍摄时间",
+    "name": "场景",
+    "selected": "已选择{len}个场景",
+    "nameRule": "请输入场景名称",
+    "fileRule": "请上传BIM文件",
+    "create": "创建场景",
+    "nameLabel1": "场景名称",
+    "nameLabel1Rule": "请输入名称最多{max}字",
+    "fileLabel": "BIM文件",
+    "updateFile": "修改BIM"
+}

+ 76 - 65
src/lang/zh/sys.ts

@@ -1,66 +1,77 @@
 export default {
-  '404': '错误页面',
-  name: '四维工地管家',
-  TOKEN_INVALID: 'token已失效',
-  NO_ACCESS: '无权访问',
-  SUCCESS: '请求成功',
-  ERROR: '服务错误,请稍后再试',
-  undata: '未搜索到结果,',
-  data: '数据',
-  undataDesc: '您还没有{name},请先创建{name}~',
-  uploadBtn: '上传',
-  uploadDesc: ['支持{ extxTip }文件格式;', '最大支持上传{ maxSizeTip };'],
-  noUploadDesc: ['仅支持{extxTip}文件格式', '最大支持上传{maxSizeTip}'],
-  more: '等',
-  logout: '退出登录',
-  router: {
-    login: '登录',
-    personal: '个人信息',
-    projects: '项目管理',
-    projectScenes: '场景管理',
-    projectMaterial: '项目资料',
-    projectMembers: '成员管理',
-    projectTaggings: '项目标注',
-    projectRoles: '项目角色',
-    project: '项目'
-  },
-  copyAuth: '请授予写入粘贴板权限!',
-  unLoginName: '游客',
-  add: '新增',
-  update: '修改',
-  cancel: '取消',
-  save: '保存',
-  query: '查看',
-  oper: '操作',
-  del: '删除',
-  tipTitle: '系统提示',
-  good: '好',
-  time: ['早上', '中午', '下午', '晚上'],
-  projectCount: '项目数',
-  projectFileCount: '项目文件数',
-  projectSceneCount: '项目场景数',
-  projectOverCount: '已完成项目数',
-  operLog: '操作记录',
-  updateInfo: '修改信息',
-  updatePwd: '修改密码',
-  delTip: '删除后无法恢复,是否确认?',
-  selectTime: '选择日期',
-  search: '搜索',
-  reset: '重置',
-  all: '全部',
-  edit: '编辑',
-  sync: '同步',
-  select: '选择',
-  create: '创建',
-  loginh1: '欢迎登录',
-  loginh2: '账号登录',
-  phoneRule: '请输入账号',
-  passwordRule: '请输入账号',
-  phoneRul1: '请输入正确账号',
-  passwordRule1: '手机号或密码有误',
-  rememberLabel: '记住密码',
-  login: '登录',
-  forget: '忘记密码',
-  register: '注册',
-  un: '未知'
-}
+    "404": "错误页面",
+    "name": "四维工地管家",
+    "TOKEN_INVALID": "token已失效",
+    "NO_ACCESS": "无权访问",
+    "SUCCESS": "请求成功",
+    "ERROR": "服务错误,请稍后再试",
+    "undata": "未搜索到结果,",
+    "data": "数据",
+    "undataDesc": "您还没有{name},请先创建{name}~",
+    "uploadBtn": "上传",
+    "uploadDesc": [
+        "支持{ extxTip }文件格式;",
+        "最大支持上传{ maxSizeTip };"
+    ],
+    "noUploadDesc": [
+        "仅支持{extxTip}文件格式",
+        "最大支持上传{maxSizeTip}"
+    ],
+    "more": "等",
+    "logout": "退出登录",
+    "router": {
+        "login": "登录",
+        "personal": "个人信息",
+        "projects": "项目管理",
+        "projectScenes": "场景管理",
+        "projectMaterial": "项目资料",
+        "projectMembers": "成员管理",
+        "projectTaggings": "项目标注",
+        "projectRoles": "项目角色",
+        "project": "项目"
+    },
+    "copyAuth": "请授予写入粘贴板权限!",
+    "unLoginName": "游客",
+    "add": "新增",
+    "update": "修改",
+    "cancel": "取消",
+    "save": "保存",
+    "query": "查看",
+    "oper": "操作",
+    "del": "删除",
+    "tipTitle": "系统提示",
+    "good": "好",
+    "time": [
+        "早上",
+        "中午",
+        "下午",
+        "晚上"
+    ],
+    "projectCount": "项目数",
+    "projectFileCount": "项目文件数",
+    "projectSceneCount": "项目场景数",
+    "projectOverCount": "已完成项目数",
+    "operLog": "操作记录",
+    "updateInfo": "修改信息",
+    "updatePwd": "修改密码",
+    "delTip": "删除后无法恢复,是否确认?",
+    "selectTime": "选择日期",
+    "search": "搜索",
+    "reset": "重置",
+    "all": "全部",
+    "edit": "编辑",
+    "sync": "同步",
+    "select": "选择",
+    "create": "创建",
+    "loginh1": "欢迎登录",
+    "loginh2": "账号登录",
+    "phoneRule": "请输入账号",
+    "passwordRule": "请输入账号",
+    "phoneRul1": "请输入正确账号",
+    "passwordRule1": "手机号或密码有误",
+    "rememberLabel": "记住密码",
+    "login": "登录",
+    "forget": "忘记密码",
+    "register": "注册",
+    "un": "未知"
+}

+ 1 - 1
src/views/member/edit.vue

@@ -1,7 +1,7 @@
 <template>
   <a-modal
     v-model:visible="visible"
-    :title="`${editMember.teamId ? $t('sys.update') : $t('sys.add')}${$t(
+    :title="`${editMember.teamId ? $t('sys.update') : $t('sys.add')} ${$t(
       'material.name'
     )}`"
     width="480px"

+ 2 - 2
src/views/project/edit.vue

@@ -1,7 +1,7 @@
 <template>
   <a-modal
     v-model:visible="visible"
-    :title="`${project.projectId ? $t('sys.update') : $t('sys.add')}${$t(
+    :title="`${project.projectId ? $t('sys.update') : $t('sys.add')} ${$t(
       'project.name'
     )}`"
     width="660px"
@@ -90,7 +90,7 @@ export type IProject = Omit<InsertProjectData, 'projectImg'> & {
   projectImg?: string | File
 }
 
-defineOptions({ name: 'insert-project' })
+defineOptions({ name: 'InsertProject' })
 
 const props = defineProps<{
   project?: IProject

+ 1 - 1
src/views/record/columns.ts

@@ -39,7 +39,7 @@ export const recordColumns: ColumnsType<Record> = [
     }
   },
   {
-    width: '60px',
+    width: '100px',
     title: ui18n.t('sys.oper'),
     dataIndex: 'action',
     key: 'action'

+ 1 - 0
src/views/scene/columns.ts

@@ -80,6 +80,7 @@ export const sceneColumns: ColumnsType<ProjectScene> = [
     key: 'createTime'
   },
   {
+    width: '260px',
     title: ui18n.t('sys.oper'),
     dataIndex: 'action',
     key: 'action',

+ 2 - 2
src/views/scene/insert.vue

@@ -3,7 +3,7 @@
     v-model:visible="visible"
     :title="`${
       currentType === Type.bim ? $t('sys.create') : $t('sys.select')
-    }${$t('scene.name')}`"
+    } ${$t('scene.name')}`"
     :width="`${currentType === Type.bim ? 480 : 660}px`"
     :after-close="onCancel"
     @ok="saveHandler"
@@ -78,7 +78,7 @@ export type SaveData =
       payload: SelectTypeScenes
     }
 
-defineOptions({ name: 'insert-project-scene' })
+defineOptions({ name: 'InsertProjectScene' })
 
 const props = defineProps<{
   showBim?: boolean