yb 11 hónapja
szülő
commit
61c1a22538

+ 1 - 0
src/layout/components/Menu/src/components/useRenderMenuTitle.tsx

@@ -6,6 +6,7 @@ export const useRenderMenuTitle = () => {
   const renderMenuTitle = (meta: RouteMeta) => {
     const { t } = useI18n()
     const { title = 'Please set title', icon } = meta
+    console.log("🚀 ~ renderMenuTitle ~ title:", title)
 
     return icon ? (
       <>

+ 6 - 2
src/locales/en.ts

@@ -1707,7 +1707,9 @@ export default {
     formatSupportsMp3WmaWavAmrFileSizeNotExceeding2MPlaybackLengthNotExceeding60s: 'Support mp3/wma/wav/amr, file size not more than 2M, playback length not more than 60s.',
     thisOperationWillPermanentlyDeleteTheFileAreYouSureToContinue: 'This operation will delete the file permanently, do you want to continue?',
     deleteCurrentMenu: 'Delete current menu',
-    menuName: 'Menu name',
+    menuName: 'Menu name(CN)',
+    menuNameEn: 'Menu name',
+    menuNameJp: 'Menu name(JP)',
     pleaseEnterMenuName: 'Please enter a menu name.',
     menuIdentifier: 'Menu ID',
     pleaseEnterMenuKey: 'Please input menu KEY',
@@ -2061,7 +2063,9 @@ export default {
     senderName: "Sender's name",
     enableStatus: 'Open Status',
     remarks: 'Remarks',
-    menuName: 'Menu Name',
+    menuName: 'Menu Name(CN)',
+    menuNameEn: 'Menu Name',
+    menuNameJp: 'Menu Name(JP)',
     pleaseEnterMenuName: 'Please input the menu name',
     pleaseSelectMenuStatus: 'Please select menu status',
     refreshMenuCache: 'Refresh menu cache',

+ 6 - 2
src/locales/ja.ts

@@ -1706,7 +1706,9 @@ export default {
       'mp3/wma/wav/amr形式をサポート、ファイルサイズは2MB以下、再生時間は60秒以下',
     thisOperationWillPermanentlyDeleteTheFileAreYouSureToContinue: 'この操作でファイルが永久に削除されます。続行しますか?',
     deleteCurrentMenu: '現在のメニューを削除',
-    menuName: 'メニュー名',
+    menuName: 'メニュー名(CN)',
+    menuNameEn: 'メニュー名(EN)',
+    menuNameJp: 'メニュー名',
     pleaseEnterMenuName: 'メニュー名を入力してください',
     menuIdentifier: 'メニュー識別子',
     pleaseEnterMenuKey: 'メニューKEYを入力してください',
@@ -2068,7 +2070,9 @@ export default {
     senderName: '送信者名',
     enableStatus: '有効ステータス',
     remarks: '備考',
-    menuName: 'メニュー名',
+    menuName: 'メニュー名(CN)',
+    menuNameEn: 'メニュー名(EN)',
+    menuNameJp: 'メニュー名',
     pleaseEnterMenuName: 'メニュー名を入力してください',
     pleaseSelectMenuStatus: 'メニューステータスを選択してください',
     refreshMenuCache: 'メニューキャッシュを更新',

+ 4 - 0
src/locales/zh-CN.ts

@@ -1708,6 +1708,8 @@ export default {
     thisOperationWillPermanentlyDeleteTheFileAreYouSureToContinue: '此操作将永久删除该文件, 是否继续?',
     deleteCurrentMenu: '删除当前菜单',
     menuName: '菜单名称',
+    menuNameEn: '菜单名称(EN)',
+    menuNameJp: '菜单名称(JP)',
     pleaseEnterMenuName: '请输入菜单名称',
     menuIdentifier: '菜单标识',
     pleaseEnterMenuKey: '请输入菜单 KEY',
@@ -2062,6 +2064,8 @@ export default {
     enableStatus: '开启状态',
     remarks: '备注',
     menuName: '菜单名称',
+    menuNameEn: '菜单名称(EN)',
+    menuNameJp: '菜单名称(JP)',
     pleaseEnterMenuName: '请输入菜单名称',
     pleaseSelectMenuStatus: '请选择菜单状态',
     refreshMenuCache: '刷新菜单缓存',

+ 1 - 0
src/store/modules/user.ts

@@ -61,6 +61,7 @@ export const useUserStore = defineStore('admin-user', {
       this.roles = userInfo.roles
       this.user = userInfo.user
       this.isSetUser = true
+      console.log("🚀 ~ setUserInfoAction ~ userInfo.menus:", userInfo.menus)
       wsCache.set(CACHE_KEY.USER, userInfo)
       wsCache.set(CACHE_KEY.ROLE_ROUTERS, userInfo.menus)
     },

+ 10 - 0
src/views/system/menu/MenuForm.vue

@@ -20,6 +20,12 @@
       <el-form-item :label="t('system.menuName')" prop="name">
         <el-input v-model="formData.name" clearable :placeholder="t('system.pleaseEnterMenuName')" />
       </el-form-item>
+      <el-form-item :label="t('system.menuNameEn')" prop="nameEn">
+        <el-input v-model="formData.nameEn" clearable :placeholder="t('system.pleaseEnterMenuName')" />
+      </el-form-item>
+      <el-form-item :label="t('system.menuNameJp')" prop="nameJp">
+        <el-input v-model="formData.nameJp" clearable :placeholder="t('system.pleaseEnterMenuName')" />
+      </el-form-item>
       <el-form-item :label="t('system.menuType')" prop="type">
         <el-radio-group v-model="formData.type">
           <el-radio-button
@@ -132,6 +138,8 @@ const formType = ref('') // 表单的类型:create - 新增;update - 修改
 const formData = ref({
   id: undefined,
   name: '',
+  nameEn: '',
+  nameJp: '',
   permission: '',
   type: SystemMenuTypeEnum.DIR,
   sort: Number(undefined),
@@ -233,6 +241,8 @@ const resetForm = () => {
   formData.value = {
     id: undefined,
     name: '',
+    nameEn: '',
+    nameJp: '',
     permission: '',
     type: SystemMenuTypeEnum.DIR,
     sort: Number(undefined),

+ 5 - 1
src/views/system/menu/index.vue

@@ -71,7 +71,11 @@
       :default-expand-all="isExpandAll"
       row-key="id"
     >
-      <el-table-column :show-overflow-tooltip="true" :label="t('system.menuName')" prop="name" width="250" />
+      <el-table-column :show-overflow-tooltip="true" :label="t('system.menuName')" prop="name" width="250">
+        <template #default="scope">
+          {{ scope.row.name }} | {{ scope.row.nameEn }} | {{ scope.row.nameJp }}
+        </template>
+      </el-table-column>
       <el-table-column align="center" :label="t('mall.icon')" prop="icon" width="100">
         <template #default="scope">
           <Icon :icon="scope.row.icon" />