smart-admin-web 10.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +201 -0
- package/README.md +78 -0
- package/dist/App.vue.d.ts +3 -0
- package/dist/App.vue.js +54 -0
- package/dist/App.vue.js.map +1 -0
- package/dist/App2.vue.js +5 -0
- package/dist/App2.vue.js.map +1 -0
- package/dist/_virtual/_plugin-vue_export-helper.js +10 -0
- package/dist/_virtual/_plugin-vue_export-helper.js.map +1 -0
- package/dist/api/client.d.ts +29 -0
- package/dist/api/client.js +139 -0
- package/dist/api/client.js.map +1 -0
- package/dist/api/index.d.ts +672 -0
- package/dist/api/index.js +638 -0
- package/dist/api/index.js.map +1 -0
- package/dist/api/reauthGate.d.ts +16 -0
- package/dist/api/reauthGate.js +21 -0
- package/dist/api/reauthGate.js.map +1 -0
- package/dist/api/schema.d.ts +10230 -0
- package/dist/assets/icons/ph-subset.json.js +16 -0
- package/dist/assets/icons/ph-subset.json.js.map +1 -0
- package/dist/assets/oauth/dingtalk.svg.js +5 -0
- package/dist/assets/oauth/dingtalk.svg.js.map +1 -0
- package/dist/assets/oauth/gitee.svg.js +5 -0
- package/dist/assets/oauth/gitee.svg.js.map +1 -0
- package/dist/assets/oauth/github.svg.js +5 -0
- package/dist/assets/oauth/github.svg.js.map +1 -0
- package/dist/assets/oauth/qq.svg.js +5 -0
- package/dist/assets/oauth/qq.svg.js.map +1 -0
- package/dist/assets/oauth/wechat.svg.js +5 -0
- package/dist/assets/oauth/wechat.svg.js.map +1 -0
- package/dist/assets/oauth/wecom.svg.js +5 -0
- package/dist/assets/oauth/wecom.svg.js.map +1 -0
- package/dist/assets/svg/star.svg.js +6 -0
- package/dist/assets/svg/star.svg.js.map +1 -0
- package/dist/components/ApiSelect/index.vue.d.ts +22 -0
- package/dist/components/ApiSelect/index.vue.js +50 -0
- package/dist/components/ApiSelect/index.vue.js.map +1 -0
- package/dist/components/ApiSelect/index2.vue.js +5 -0
- package/dist/components/ApiSelect/index2.vue.js.map +1 -0
- package/dist/components/AppIcon.vue.d.ts +7 -0
- package/dist/components/AppIcon.vue.js +33 -0
- package/dist/components/AppIcon.vue.js.map +1 -0
- package/dist/components/AppIcon2.vue.js +5 -0
- package/dist/components/AppIcon2.vue.js.map +1 -0
- package/dist/components/Chart/BarChart.vue.d.ts +13 -0
- package/dist/components/Chart/BarChart.vue.js +27 -0
- package/dist/components/Chart/BarChart.vue.js.map +1 -0
- package/dist/components/Chart/BarChart2.vue.js +5 -0
- package/dist/components/Chart/BarChart2.vue.js.map +1 -0
- package/dist/components/Chart/LineChart.vue.d.ts +15 -0
- package/dist/components/Chart/LineChart.vue.js +33 -0
- package/dist/components/Chart/LineChart.vue.js.map +1 -0
- package/dist/components/Chart/LineChart2.vue.js +5 -0
- package/dist/components/Chart/LineChart2.vue.js.map +1 -0
- package/dist/components/Chart/PieChart.vue.d.ts +14 -0
- package/dist/components/Chart/PieChart.vue.js +31 -0
- package/dist/components/Chart/PieChart.vue.js.map +1 -0
- package/dist/components/Chart/PieChart2.vue.js +5 -0
- package/dist/components/Chart/PieChart2.vue.js.map +1 -0
- package/dist/components/Chart/echarts.d.ts +57 -0
- package/dist/components/Chart/echarts.js +47 -0
- package/dist/components/Chart/echarts.js.map +1 -0
- package/dist/components/Chart/index.vue.d.ts +12 -0
- package/dist/components/Chart/index.vue.js +8 -0
- package/dist/components/Chart/index.vue.js.map +1 -0
- package/dist/components/Chart/index2.vue.js +27 -0
- package/dist/components/Chart/index2.vue.js.map +1 -0
- package/dist/components/CodeBlock/index.vue.d.ts +17 -0
- package/dist/components/CodeBlock/index.vue.js +8 -0
- package/dist/components/CodeBlock/index.vue.js.map +1 -0
- package/dist/components/CodeBlock/index2.vue.js +48 -0
- package/dist/components/CodeBlock/index2.vue.js.map +1 -0
- package/dist/components/CronEditor/index.vue.d.ts +15 -0
- package/dist/components/CronEditor/index.vue.js +8 -0
- package/dist/components/CronEditor/index.vue.js.map +1 -0
- package/dist/components/CronEditor/index2.vue.js +528 -0
- package/dist/components/CronEditor/index2.vue.js.map +1 -0
- package/dist/components/DetailPage/index.vue.d.ts +26 -0
- package/dist/components/DetailPage/index.vue.js +8 -0
- package/dist/components/DetailPage/index.vue.js.map +1 -0
- package/dist/components/DetailPage/index2.vue.js +51 -0
- package/dist/components/DetailPage/index2.vue.js.map +1 -0
- package/dist/components/DictCheckbox/index.vue.d.ts +6 -0
- package/dist/components/DictCheckbox/index.vue.js +43 -0
- package/dist/components/DictCheckbox/index.vue.js.map +1 -0
- package/dist/components/DictCheckbox/index2.vue.js +5 -0
- package/dist/components/DictCheckbox/index2.vue.js.map +1 -0
- package/dist/components/DictRadio/index.vue.d.ts +6 -0
- package/dist/components/DictRadio/index.vue.js +38 -0
- package/dist/components/DictRadio/index.vue.js.map +1 -0
- package/dist/components/DictRadio/index2.vue.js +5 -0
- package/dist/components/DictRadio/index2.vue.js.map +1 -0
- package/dist/components/DictSelect/index.vue.d.ts +6 -0
- package/dist/components/DictSelect/index.vue.js +37 -0
- package/dist/components/DictSelect/index.vue.js.map +1 -0
- package/dist/components/DictSelect/index2.vue.js +5 -0
- package/dist/components/DictSelect/index2.vue.js.map +1 -0
- package/dist/components/DictTag/index.vue.d.ts +10 -0
- package/dist/components/DictTag/index.vue.js +48 -0
- package/dist/components/DictTag/index.vue.js.map +1 -0
- package/dist/components/DictTag/index2.vue.js +5 -0
- package/dist/components/DictTag/index2.vue.js.map +1 -0
- package/dist/components/ErrorBoundary/index.vue.d.ts +13 -0
- package/dist/components/ErrorBoundary/index.vue.js +8 -0
- package/dist/components/ErrorBoundary/index.vue.js.map +1 -0
- package/dist/components/ErrorBoundary/index2.vue.js +61 -0
- package/dist/components/ErrorBoundary/index2.vue.js.map +1 -0
- package/dist/components/ExportColumnsModal/index.vue.d.ts +19 -0
- package/dist/components/ExportColumnsModal/index.vue.js +8 -0
- package/dist/components/ExportColumnsModal/index.vue.js.map +1 -0
- package/dist/components/ExportColumnsModal/index2.vue.js +121 -0
- package/dist/components/ExportColumnsModal/index2.vue.js.map +1 -0
- package/dist/components/FileUpload/index.vue.d.ts +24 -0
- package/dist/components/FileUpload/index.vue.js +42 -0
- package/dist/components/FileUpload/index.vue.js.map +1 -0
- package/dist/components/FileUpload/index2.vue.js +5 -0
- package/dist/components/FileUpload/index2.vue.js.map +1 -0
- package/dist/components/FormContainer/index.vue.d.ts +51 -0
- package/dist/components/FormContainer/index.vue.js +160 -0
- package/dist/components/FormContainer/index.vue.js.map +1 -0
- package/dist/components/FormContainer/index3.vue.js +6 -0
- package/dist/components/FormContainer/index3.vue.js.map +1 -0
- package/dist/components/IconPicker/index.vue.d.ts +18 -0
- package/dist/components/IconPicker/index.vue.js +43 -0
- package/dist/components/IconPicker/index.vue.js.map +1 -0
- package/dist/components/IconPicker/index2.vue.js +5 -0
- package/dist/components/IconPicker/index2.vue.js.map +1 -0
- package/dist/components/ImportWizard/index.vue.d.ts +39 -0
- package/dist/components/ImportWizard/index.vue.js +8 -0
- package/dist/components/ImportWizard/index.vue.js.map +1 -0
- package/dist/components/ImportWizard/index2.vue.js +634 -0
- package/dist/components/ImportWizard/index2.vue.js.map +1 -0
- package/dist/components/JsonEditor/index.vue.d.ts +12 -0
- package/dist/components/JsonEditor/index.vue.js +87 -0
- package/dist/components/JsonEditor/index.vue.js.map +1 -0
- package/dist/components/JsonEditor/index2.vue.js +5 -0
- package/dist/components/JsonEditor/index2.vue.js.map +1 -0
- package/dist/components/MarkdownEditor/MarkdownView.vue.d.ts +6 -0
- package/dist/components/MarkdownEditor/MarkdownView.vue.js +33 -0
- package/dist/components/MarkdownEditor/MarkdownView.vue.js.map +1 -0
- package/dist/components/MarkdownEditor/MarkdownView2.vue.js +5 -0
- package/dist/components/MarkdownEditor/MarkdownView2.vue.js.map +1 -0
- package/dist/components/MarkdownEditor/index.vue.d.ts +10 -0
- package/dist/components/MarkdownEditor/index.vue.js +35 -0
- package/dist/components/MarkdownEditor/index.vue.js.map +1 -0
- package/dist/components/MarkdownEditor/index2.vue.js +5 -0
- package/dist/components/MarkdownEditor/index2.vue.js.map +1 -0
- package/dist/components/MenuSearch.vue.d.ts +10 -0
- package/dist/components/MenuSearch.vue.js +8 -0
- package/dist/components/MenuSearch.vue.js.map +1 -0
- package/dist/components/MenuSearch2.vue.js +121 -0
- package/dist/components/MenuSearch2.vue.js.map +1 -0
- package/dist/components/OrgTreeSelect/index.vue.d.ts +6 -0
- package/dist/components/OrgTreeSelect/index.vue.js +42 -0
- package/dist/components/OrgTreeSelect/index.vue.js.map +1 -0
- package/dist/components/OrgTreeSelect/index2.vue.js +5 -0
- package/dist/components/OrgTreeSelect/index2.vue.js.map +1 -0
- package/dist/components/PasswordStrength/index.vue.d.ts +6 -0
- package/dist/components/PasswordStrength/index.vue.js +8 -0
- package/dist/components/PasswordStrength/index.vue.js.map +1 -0
- package/dist/components/PasswordStrength/index2.vue.js +91 -0
- package/dist/components/PasswordStrength/index2.vue.js.map +1 -0
- package/dist/components/ReauthModal.vue.d.ts +3 -0
- package/dist/components/ReauthModal.vue.js +8 -0
- package/dist/components/ReauthModal.vue.js.map +1 -0
- package/dist/components/ReauthModal2.vue.js +139 -0
- package/dist/components/ReauthModal2.vue.js.map +1 -0
- package/dist/components/RoleSelect/index.vue.d.ts +8 -0
- package/dist/components/RoleSelect/index.vue.js +26 -0
- package/dist/components/RoleSelect/index.vue.js.map +1 -0
- package/dist/components/RoleSelect/index2.vue.js +5 -0
- package/dist/components/RoleSelect/index2.vue.js.map +1 -0
- package/dist/components/SelectTable/index.vue.d.ts +76 -0
- package/dist/components/SelectTable/index.vue.js +8 -0
- package/dist/components/SelectTable/index.vue.js.map +1 -0
- package/dist/components/SelectTable/index2.vue.js +256 -0
- package/dist/components/SelectTable/index2.vue.js.map +1 -0
- package/dist/components/SmartLogo.vue.d.ts +8 -0
- package/dist/components/SmartLogo.vue.js +8 -0
- package/dist/components/SmartLogo.vue.js.map +1 -0
- package/dist/components/SmartLogo2.vue.js +74 -0
- package/dist/components/SmartLogo2.vue.js.map +1 -0
- package/dist/components/StatusSwitch/index.vue.d.ts +21 -0
- package/dist/components/StatusSwitch/index.vue.js +45 -0
- package/dist/components/StatusSwitch/index.vue.js.map +1 -0
- package/dist/components/StatusSwitch/index2.vue.js +5 -0
- package/dist/components/StatusSwitch/index2.vue.js.map +1 -0
- package/dist/components/TableZoomButton/index.vue.d.ts +13 -0
- package/dist/components/TableZoomButton/index.vue.js +42 -0
- package/dist/components/TableZoomButton/index.vue.js.map +1 -0
- package/dist/components/TableZoomButton/index2.vue.js +5 -0
- package/dist/components/TableZoomButton/index2.vue.js.map +1 -0
- package/dist/components/UserPicker/index.vue.d.ts +13 -0
- package/dist/components/UserPicker/index.vue.js +8 -0
- package/dist/components/UserPicker/index.vue.js.map +1 -0
- package/dist/components/UserPicker/index2.vue.js +214 -0
- package/dist/components/UserPicker/index2.vue.js.map +1 -0
- package/dist/components/UserSelect/index.vue.d.ts +9 -0
- package/dist/components/UserSelect/index.vue.js +32 -0
- package/dist/components/UserSelect/index.vue.js.map +1 -0
- package/dist/components/UserSelect/index2.vue.js +5 -0
- package/dist/components/UserSelect/index2.vue.js.map +1 -0
- package/dist/components/oauth/BrandIcon.vue.d.ts +12 -0
- package/dist/components/oauth/BrandIcon.vue.js +8 -0
- package/dist/components/oauth/BrandIcon.vue.js.map +1 -0
- package/dist/components/oauth/BrandIcon2.vue.js +95 -0
- package/dist/components/oauth/BrandIcon2.vue.js.map +1 -0
- package/dist/composables/authMenuRoute.d.ts +32 -0
- package/dist/composables/authMenuRoute.js +37 -0
- package/dist/composables/authMenuRoute.js.map +1 -0
- package/dist/composables/clearClientCache.d.ts +10 -0
- package/dist/composables/clearClientCache.js +17 -0
- package/dist/composables/clearClientCache.js.map +1 -0
- package/dist/composables/useAuthMenu.d.ts +3 -0
- package/dist/composables/useAuthMenu.js +61 -0
- package/dist/composables/useAuthMenu.js.map +1 -0
- package/dist/composables/useBatchDelete.d.ts +18 -0
- package/dist/composables/useBatchDelete.js +21 -0
- package/dist/composables/useBatchDelete.js.map +1 -0
- package/dist/composables/useCompactScreen.d.ts +12 -0
- package/dist/composables/useCompactScreen.js +17 -0
- package/dist/composables/useCompactScreen.js.map +1 -0
- package/dist/composables/useConfirm.d.ts +18 -0
- package/dist/composables/useConfirm.js +61 -0
- package/dist/composables/useConfirm.js.map +1 -0
- package/dist/composables/useFullscreenToggle.d.ts +11 -0
- package/dist/composables/useFullscreenToggle.js +64 -0
- package/dist/composables/useFullscreenToggle.js.map +1 -0
- package/dist/composables/useHeaderTools.d.ts +31 -0
- package/dist/composables/useHeaderTools.js +15 -0
- package/dist/composables/useHeaderTools.js.map +1 -0
- package/dist/composables/useLayoutMenu.d.ts +17 -0
- package/dist/composables/useLayoutMenu.js +93 -0
- package/dist/composables/useLayoutMenu.js.map +1 -0
- package/dist/composables/useMenuBadge.d.ts +11 -0
- package/dist/composables/useMenuBadge.js +17 -0
- package/dist/composables/useMenuBadge.js.map +1 -0
- package/dist/composables/useMenuFlat.d.ts +8 -0
- package/dist/composables/useMenuFlat.js +29 -0
- package/dist/composables/useMenuFlat.js.map +1 -0
- package/dist/composables/useModule.d.ts +16 -0
- package/dist/composables/useModule.js +44 -0
- package/dist/composables/useModule.js.map +1 -0
- package/dist/composables/useNoticeAction.d.ts +8 -0
- package/dist/composables/useNoticeAction.js +79 -0
- package/dist/composables/useNoticeAction.js.map +1 -0
- package/dist/composables/usePageTitle.d.ts +1 -0
- package/dist/composables/usePageTitle.js +20 -0
- package/dist/composables/usePageTitle.js.map +1 -0
- package/dist/composables/useRealtime.d.ts +31 -0
- package/dist/composables/useRealtime.js +59 -0
- package/dist/composables/useRealtime.js.map +1 -0
- package/dist/composables/useSite.d.ts +24 -0
- package/dist/composables/useSite.js +27 -0
- package/dist/composables/useSite.js.map +1 -0
- package/dist/composables/useTabTitle.d.ts +1 -0
- package/dist/composables/useTabTitle.js +10 -0
- package/dist/composables/useTabTitle.js.map +1 -0
- package/dist/composables/useTableRowSort.d.ts +20 -0
- package/dist/composables/useTableRowSort.js +59 -0
- package/dist/composables/useTableRowSort.js.map +1 -0
- package/dist/composables/useTableZoom.d.ts +5 -0
- package/dist/composables/useTableZoom.js +30 -0
- package/dist/composables/useTableZoom.js.map +1 -0
- package/dist/composables/useTheme.d.ts +13 -0
- package/dist/composables/useTheme.js +30 -0
- package/dist/composables/useTheme.js.map +1 -0
- package/dist/composables/useVisualViewportHeight.d.ts +3 -0
- package/dist/composables/useVisualViewportHeight.js +16 -0
- package/dist/composables/useVisualViewportHeight.js.map +1 -0
- package/dist/createSmartAdmin.d.ts +56 -0
- package/dist/createSmartAdmin.js +76 -0
- package/dist/createSmartAdmin.js.map +1 -0
- package/dist/directives/auth.d.ts +16 -0
- package/dist/directives/auth.js +19 -0
- package/dist/directives/auth.js.map +1 -0
- package/dist/env.d.ts +10 -0
- package/dist/index.d.ts +90 -0
- package/dist/index.js +273 -0
- package/dist/index.js.map +1 -0
- package/dist/layouts/AppHeader.vue.d.ts +12 -0
- package/dist/layouts/AppHeader.vue.js +8 -0
- package/dist/layouts/AppHeader.vue.js.map +1 -0
- package/dist/layouts/AppHeader2.vue.js +352 -0
- package/dist/layouts/AppHeader2.vue.js.map +1 -0
- package/dist/layouts/LayoutModeCards.vue.d.ts +3 -0
- package/dist/layouts/LayoutModeCards.vue.js +8 -0
- package/dist/layouts/LayoutModeCards.vue.js.map +1 -0
- package/dist/layouts/LayoutModeCards2.vue.js +67 -0
- package/dist/layouts/LayoutModeCards2.vue.js.map +1 -0
- package/dist/layouts/NoticeBell.vue.d.ts +3 -0
- package/dist/layouts/NoticeBell.vue.js +8 -0
- package/dist/layouts/NoticeBell.vue.js.map +1 -0
- package/dist/layouts/NoticeBell2.vue.js +292 -0
- package/dist/layouts/NoticeBell2.vue.js.map +1 -0
- package/dist/layouts/PersonalLayout.vue.d.ts +3 -0
- package/dist/layouts/PersonalLayout.vue.js +8 -0
- package/dist/layouts/PersonalLayout.vue.js.map +1 -0
- package/dist/layouts/PersonalLayout2.vue.js +65 -0
- package/dist/layouts/PersonalLayout2.vue.js.map +1 -0
- package/dist/layouts/SettingRow.vue.d.ts +16 -0
- package/dist/layouts/SettingRow.vue.js +8 -0
- package/dist/layouts/SettingRow.vue.js.map +1 -0
- package/dist/layouts/SettingRow2.vue.js +23 -0
- package/dist/layouts/SettingRow2.vue.js.map +1 -0
- package/dist/layouts/SettingsDrawer.vue.d.ts +10 -0
- package/dist/layouts/SettingsDrawer.vue.js +8 -0
- package/dist/layouts/SettingsDrawer.vue.js.map +1 -0
- package/dist/layouts/SettingsDrawer2.vue.js +380 -0
- package/dist/layouts/SettingsDrawer2.vue.js.map +1 -0
- package/dist/layouts/TabsBar.vue.d.ts +3 -0
- package/dist/layouts/TabsBar.vue.js +8 -0
- package/dist/layouts/TabsBar.vue.js.map +1 -0
- package/dist/layouts/TabsBar2.vue.js +132 -0
- package/dist/layouts/TabsBar2.vue.js.map +1 -0
- package/dist/layouts/components/SideNav.vue.d.ts +15 -0
- package/dist/layouts/components/SideNav.vue.js +8 -0
- package/dist/layouts/components/SideNav.vue.js.map +1 -0
- package/dist/layouts/components/SideNav2.vue.js +49 -0
- package/dist/layouts/components/SideNav2.vue.js.map +1 -0
- package/dist/layouts/default.vue.d.ts +3 -0
- package/dist/layouts/default.vue.js +8 -0
- package/dist/layouts/default.vue.js.map +1 -0
- package/dist/layouts/default2.vue.js +213 -0
- package/dist/layouts/default2.vue.js.map +1 -0
- package/dist/lib/chunkReload.d.ts +9 -0
- package/dist/lib/chunkReload.js +24 -0
- package/dist/lib/chunkReload.js.map +1 -0
- package/dist/lib/icons.d.ts +2 -0
- package/dist/lib/icons.js +39 -0
- package/dist/lib/icons.js.map +1 -0
- package/dist/lib/loadingBar.d.ts +7 -0
- package/dist/lib/loadingBar.js +18 -0
- package/dist/lib/loadingBar.js.map +1 -0
- package/dist/lib/markdown.d.ts +8 -0
- package/dist/lib/markdown.js +16 -0
- package/dist/lib/markdown.js.map +1 -0
- package/dist/lib/markdownLinks.d.ts +26 -0
- package/dist/lib/markdownLinks.js +21 -0
- package/dist/lib/markdownLinks.js.map +1 -0
- package/dist/lib/noticeActions.d.ts +13 -0
- package/dist/lib/noticeActions.js +16 -0
- package/dist/lib/noticeActions.js.map +1 -0
- package/dist/lib/runtime.d.ts +21 -0
- package/dist/lib/runtime.js +13 -0
- package/dist/lib/runtime.js.map +1 -0
- package/dist/locales/en-US.d.ts +1358 -0
- package/dist/locales/en-US.js +1362 -0
- package/dist/locales/en-US.js.map +1 -0
- package/dist/locales/index.d.ts +30 -0
- package/dist/locales/index.js +46 -0
- package/dist/locales/index.js.map +1 -0
- package/dist/locales/menuTitle.d.ts +8 -0
- package/dist/locales/menuTitle.js +19 -0
- package/dist/locales/menuTitle.js.map +1 -0
- package/dist/locales/zh-CN.d.ts +1358 -0
- package/dist/locales/zh-CN.js +1368 -0
- package/dist/locales/zh-CN.js.map +1 -0
- package/dist/router/bootFailure.d.ts +8 -0
- package/dist/router/bootFailure.js +11 -0
- package/dist/router/bootFailure.js.map +1 -0
- package/dist/router/detailRoutes.d.ts +2 -0
- package/dist/router/detailRoutes.js +19 -0
- package/dist/router/detailRoutes.js.map +1 -0
- package/dist/router/index.d.ts +3 -0
- package/dist/router/index.js +58 -0
- package/dist/router/index.js.map +1 -0
- package/dist/router/namedPage.d.ts +13 -0
- package/dist/router/namedPage.js +12 -0
- package/dist/router/namedPage.js.map +1 -0
- package/dist/router/routes.d.ts +2 -0
- package/dist/router/routes.js +121 -0
- package/dist/router/routes.js.map +1 -0
- package/dist/router/viewRegistry.d.ts +18 -0
- package/dist/router/viewRegistry.js +26 -0
- package/dist/router/viewRegistry.js.map +1 -0
- package/dist/stores/app.d.ts +83 -0
- package/dist/stores/app.js +82 -0
- package/dist/stores/app.js.map +1 -0
- package/dist/stores/auth.d.ts +106 -0
- package/dist/stores/auth.js +59 -0
- package/dist/stores/auth.js.map +1 -0
- package/dist/stores/dict.d.ts +11 -0
- package/dist/stores/dict.js +36 -0
- package/dist/stores/dict.js.map +1 -0
- package/dist/stores/tabs.d.ts +53 -0
- package/dist/stores/tabs.js +88 -0
- package/dist/stores/tabs.js.map +1 -0
- package/dist/stores/user.d.ts +64 -0
- package/dist/stores/user.js +64 -0
- package/dist/stores/user.js.map +1 -0
- package/dist/style.css +1 -0
- package/dist/theme/accents.d.ts +2 -0
- package/dist/theme/accents.js +5 -0
- package/dist/theme/accents.js.map +1 -0
- package/dist/theme/mix.d.ts +26 -0
- package/dist/theme/mix.js +43 -0
- package/dist/theme/mix.js.map +1 -0
- package/dist/theme/naive-theme.d.ts +9 -0
- package/dist/theme/naive-theme.js +89 -0
- package/dist/theme/naive-theme.js.map +1 -0
- package/dist/types/api.d.ts +714 -0
- package/dist/types/api.js +15 -0
- package/dist/types/api.js.map +1 -0
- package/dist/types/menu.d.ts +67 -0
- package/dist/types/menu.js +26 -0
- package/dist/types/menu.js.map +1 -0
- package/dist/utils/chunkUpload.d.ts +6 -0
- package/dist/utils/chunkUpload.js +35 -0
- package/dist/utils/chunkUpload.js.map +1 -0
- package/dist/utils/download.d.ts +8 -0
- package/dist/utils/download.js +8 -0
- package/dist/utils/download.js.map +1 -0
- package/dist/utils/error.d.ts +14 -0
- package/dist/utils/error.js +50 -0
- package/dist/utils/error.js.map +1 -0
- package/dist/utils/format.d.ts +20 -0
- package/dist/utils/format.js +19 -0
- package/dist/utils/format.js.map +1 -0
- package/dist/utils/importDup.d.ts +17 -0
- package/dist/utils/importDup.js +18 -0
- package/dist/utils/importDup.js.map +1 -0
- package/dist/utils/oauthBrand.d.ts +100 -0
- package/dist/utils/oauthBrand.js +97 -0
- package/dist/utils/oauthBrand.js.map +1 -0
- package/dist/utils/tree.d.ts +33 -0
- package/dist/utils/tree.js +47 -0
- package/dist/utils/tree.js.map +1 -0
- package/dist/utils/ua.d.ts +7 -0
- package/dist/utils/ua.js +33 -0
- package/dist/utils/ua.js.map +1 -0
- package/dist/utils/url.d.ts +16 -0
- package/dist/utils/url.js +13 -0
- package/dist/utils/url.js.map +1 -0
- package/dist/views/dashboard/biz.vue.d.ts +3 -0
- package/dist/views/dashboard/biz.vue.js +8 -0
- package/dist/views/dashboard/biz.vue.js.map +1 -0
- package/dist/views/dashboard/biz2.vue.js +136 -0
- package/dist/views/dashboard/biz2.vue.js.map +1 -0
- package/dist/views/dashboard/workbench.vue.d.ts +3 -0
- package/dist/views/dashboard/workbench.vue.js +8 -0
- package/dist/views/dashboard/workbench.vue.js.map +1 -0
- package/dist/views/dashboard/workbench2.vue.js +195 -0
- package/dist/views/dashboard/workbench2.vue.js.map +1 -0
- package/dist/views/embed/iframe.vue.d.ts +3 -0
- package/dist/views/embed/iframe.vue.js +8 -0
- package/dist/views/embed/iframe.vue.js.map +1 -0
- package/dist/views/embed/iframe2.vue.js +21 -0
- package/dist/views/embed/iframe2.vue.js.map +1 -0
- package/dist/views/error/404.vue.d.ts +3 -0
- package/dist/views/error/404.vue.js +8 -0
- package/dist/views/error/404.vue.js.map +1 -0
- package/dist/views/error/4042.vue.js +31 -0
- package/dist/views/error/4042.vue.js.map +1 -0
- package/dist/views/error/BootError.vue.d.ts +3 -0
- package/dist/views/error/BootError.vue.js +8 -0
- package/dist/views/error/BootError.vue.js.map +1 -0
- package/dist/views/error/BootError2.vue.js +57 -0
- package/dist/views/error/BootError2.vue.js.map +1 -0
- package/dist/views/error/MissingRoute.vue.d.ts +3 -0
- package/dist/views/error/MissingRoute.vue.js +8 -0
- package/dist/views/error/MissingRoute.vue.js.map +1 -0
- package/dist/views/error/MissingRoute2.vue.js +23 -0
- package/dist/views/error/MissingRoute2.vue.js.map +1 -0
- package/dist/views/login/LoginForm.vue.d.ts +12 -0
- package/dist/views/login/LoginForm.vue.js +8 -0
- package/dist/views/login/LoginForm.vue.js.map +1 -0
- package/dist/views/login/LoginForm2.vue.js +642 -0
- package/dist/views/login/LoginForm2.vue.js.map +1 -0
- package/dist/views/login/index.vue.d.ts +3 -0
- package/dist/views/login/index.vue.js +8 -0
- package/dist/views/login/index.vue.js.map +1 -0
- package/dist/views/login/index2.vue.js +79 -0
- package/dist/views/login/index2.vue.js.map +1 -0
- package/dist/views/login/skins/AuroraGlass.vue.d.ts +3 -0
- package/dist/views/login/skins/AuroraGlass.vue.js +8 -0
- package/dist/views/login/skins/AuroraGlass.vue.js.map +1 -0
- package/dist/views/login/skins/AuroraGlass2.vue.js +80 -0
- package/dist/views/login/skins/AuroraGlass2.vue.js.map +1 -0
- package/dist/views/login/skins/SplitPanel.vue.d.ts +3 -0
- package/dist/views/login/skins/SplitPanel.vue.js +8 -0
- package/dist/views/login/skins/SplitPanel.vue.js.map +1 -0
- package/dist/views/login/skins/SplitPanel2.vue.js +85 -0
- package/dist/views/login/skins/SplitPanel2.vue.js.map +1 -0
- package/dist/views/login/skins/Spotlight.vue.d.ts +3 -0
- package/dist/views/login/skins/Spotlight.vue.js +8 -0
- package/dist/views/login/skins/Spotlight.vue.js.map +1 -0
- package/dist/views/login/skins/Spotlight2.vue.js +36 -0
- package/dist/views/login/skins/Spotlight2.vue.js.map +1 -0
- package/dist/views/login/skins.d.ts +8 -0
- package/dist/views/login/skins.js +13 -0
- package/dist/views/login/skins.js.map +1 -0
- package/dist/views/mfa/bindComplete.d.ts +7 -0
- package/dist/views/mfa/bindComplete.js +8 -0
- package/dist/views/mfa/bindComplete.js.map +1 -0
- package/dist/views/mfa/index.vue.d.ts +3 -0
- package/dist/views/mfa/index.vue.js +8 -0
- package/dist/views/mfa/index.vue.js.map +1 -0
- package/dist/views/mfa/index2.vue.js +425 -0
- package/dist/views/mfa/index2.vue.js.map +1 -0
- package/dist/views/module/index.vue.d.ts +3 -0
- package/dist/views/module/index.vue.js +8 -0
- package/dist/views/module/index.vue.js.map +1 -0
- package/dist/views/module/index2.vue.js +142 -0
- package/dist/views/module/index2.vue.js.map +1 -0
- package/dist/views/oauth/callback.vue.d.ts +3 -0
- package/dist/views/oauth/callback.vue.js +8 -0
- package/dist/views/oauth/callback.vue.js.map +1 -0
- package/dist/views/oauth/callback2.vue.js +86 -0
- package/dist/views/oauth/callback2.vue.js.map +1 -0
- package/dist/views/personal/bindings.vue.d.ts +3 -0
- package/dist/views/personal/bindings.vue.js +8 -0
- package/dist/views/personal/bindings.vue.js.map +1 -0
- package/dist/views/personal/bindings2.vue.js +220 -0
- package/dist/views/personal/bindings2.vue.js.map +1 -0
- package/dist/views/personal/notice.vue.d.ts +3 -0
- package/dist/views/personal/notice.vue.js +5 -0
- package/dist/views/personal/notice.vue.js.map +1 -0
- package/dist/views/personal/notice2.vue.js +163 -0
- package/dist/views/personal/notice2.vue.js.map +1 -0
- package/dist/views/personal/password.vue.d.ts +3 -0
- package/dist/views/personal/password.vue.js +5 -0
- package/dist/views/personal/password.vue.js.map +1 -0
- package/dist/views/personal/password2.vue.js +147 -0
- package/dist/views/personal/password2.vue.js.map +1 -0
- package/dist/views/personal/profile.vue.d.ts +3 -0
- package/dist/views/personal/profile.vue.js +8 -0
- package/dist/views/personal/profile.vue.js.map +1 -0
- package/dist/views/personal/profile2.vue.js +264 -0
- package/dist/views/personal/profile2.vue.js.map +1 -0
- package/dist/views/personal/security.vue.d.ts +3 -0
- package/dist/views/personal/security.vue.js +8 -0
- package/dist/views/personal/security.vue.js.map +1 -0
- package/dist/views/personal/security2.vue.js +82 -0
- package/dist/views/personal/security2.vue.js.map +1 -0
- package/dist/views/personal/sessions.vue.d.ts +3 -0
- package/dist/views/personal/sessions.vue.js +8 -0
- package/dist/views/personal/sessions.vue.js.map +1 -0
- package/dist/views/personal/sessions2.vue.js +101 -0
- package/dist/views/personal/sessions2.vue.js.map +1 -0
- package/dist/views/system/cache/index.vue.d.ts +3 -0
- package/dist/views/system/cache/index.vue.js +8 -0
- package/dist/views/system/cache/index.vue.js.map +1 -0
- package/dist/views/system/cache/index2.vue.js +113 -0
- package/dist/views/system/cache/index2.vue.js.map +1 -0
- package/dist/views/system/config/components/ConfigFormModal.vue.d.ts +16 -0
- package/dist/views/system/config/components/ConfigFormModal.vue.js +5 -0
- package/dist/views/system/config/components/ConfigFormModal.vue.js.map +1 -0
- package/dist/views/system/config/components/ConfigFormModal2.vue.js +177 -0
- package/dist/views/system/config/components/ConfigFormModal2.vue.js.map +1 -0
- package/dist/views/system/config/components/ExternalAuthConfig.vue.d.ts +3 -0
- package/dist/views/system/config/components/ExternalAuthConfig.vue.js +8 -0
- package/dist/views/system/config/components/ExternalAuthConfig.vue.js.map +1 -0
- package/dist/views/system/config/components/ExternalAuthConfig2.vue.js +218 -0
- package/dist/views/system/config/components/ExternalAuthConfig2.vue.js.map +1 -0
- package/dist/views/system/config/components/GroupExtraConfig.vue.d.ts +9 -0
- package/dist/views/system/config/components/GroupExtraConfig.vue.js +8 -0
- package/dist/views/system/config/components/GroupExtraConfig.vue.js.map +1 -0
- package/dist/views/system/config/components/GroupExtraConfig2.vue.js +108 -0
- package/dist/views/system/config/components/GroupExtraConfig2.vue.js.map +1 -0
- package/dist/views/system/config/components/HighSensConfig.vue.d.ts +3 -0
- package/dist/views/system/config/components/HighSensConfig.vue.js +5 -0
- package/dist/views/system/config/components/HighSensConfig.vue.js.map +1 -0
- package/dist/views/system/config/components/HighSensConfig2.vue.js +134 -0
- package/dist/views/system/config/components/HighSensConfig2.vue.js.map +1 -0
- package/dist/views/system/config/components/JobConfig.vue.d.ts +3 -0
- package/dist/views/system/config/components/JobConfig.vue.js +5 -0
- package/dist/views/system/config/components/JobConfig.vue.js.map +1 -0
- package/dist/views/system/config/components/JobConfig2.vue.js +116 -0
- package/dist/views/system/config/components/JobConfig2.vue.js.map +1 -0
- package/dist/views/system/config/components/OtherConfig.vue.d.ts +3 -0
- package/dist/views/system/config/components/OtherConfig.vue.js +5 -0
- package/dist/views/system/config/components/OtherConfig.vue.js.map +1 -0
- package/dist/views/system/config/components/OtherConfig2.vue.js +121 -0
- package/dist/views/system/config/components/OtherConfig2.vue.js.map +1 -0
- package/dist/views/system/config/components/SecurityConfig.vue.d.ts +3 -0
- package/dist/views/system/config/components/SecurityConfig.vue.js +8 -0
- package/dist/views/system/config/components/SecurityConfig.vue.js.map +1 -0
- package/dist/views/system/config/components/SecurityConfig2.vue.js +456 -0
- package/dist/views/system/config/components/SecurityConfig2.vue.js.map +1 -0
- package/dist/views/system/config/components/SysBaseConfig.vue.d.ts +3 -0
- package/dist/views/system/config/components/SysBaseConfig.vue.js +5 -0
- package/dist/views/system/config/components/SysBaseConfig.vue.js.map +1 -0
- package/dist/views/system/config/components/SysBaseConfig2.vue.js +107 -0
- package/dist/views/system/config/components/SysBaseConfig2.vue.js.map +1 -0
- package/dist/views/system/config/components/UploadConfig.vue.d.ts +3 -0
- package/dist/views/system/config/components/UploadConfig.vue.js +5 -0
- package/dist/views/system/config/components/UploadConfig.vue.js.map +1 -0
- package/dist/views/system/config/components/UploadConfig2.vue.js +135 -0
- package/dist/views/system/config/components/UploadConfig2.vue.js.map +1 -0
- package/dist/views/system/config/groups.d.ts +9 -0
- package/dist/views/system/config/groups.js +18 -0
- package/dist/views/system/config/groups.js.map +1 -0
- package/dist/views/system/config/index.vue.d.ts +3 -0
- package/dist/views/system/config/index.vue.js +5 -0
- package/dist/views/system/config/index.vue.js.map +1 -0
- package/dist/views/system/config/index2.vue.js +127 -0
- package/dist/views/system/config/index2.vue.js.map +1 -0
- package/dist/views/system/dict/index.vue.d.ts +3 -0
- package/dist/views/system/dict/index.vue.js +8 -0
- package/dist/views/system/dict/index.vue.js.map +1 -0
- package/dist/views/system/dict/index2.vue.js +560 -0
- package/dist/views/system/dict/index2.vue.js.map +1 -0
- package/dist/views/system/file/index.vue.d.ts +3 -0
- package/dist/views/system/file/index.vue.js +5 -0
- package/dist/views/system/file/index.vue.js.map +1 -0
- package/dist/views/system/file/index2.vue.js +186 -0
- package/dist/views/system/file/index2.vue.js.map +1 -0
- package/dist/views/system/job/index.vue.d.ts +3 -0
- package/dist/views/system/job/index.vue.js +8 -0
- package/dist/views/system/job/index.vue.js.map +1 -0
- package/dist/views/system/job/index2.vue.js +1167 -0
- package/dist/views/system/job/index2.vue.js.map +1 -0
- package/dist/views/system/job-log/index.vue.d.ts +3 -0
- package/dist/views/system/job-log/index.vue.js +8 -0
- package/dist/views/system/job-log/index.vue.js.map +1 -0
- package/dist/views/system/job-log/index2.vue.js +411 -0
- package/dist/views/system/job-log/index2.vue.js.map +1 -0
- package/dist/views/system/job-monitor/index.vue.d.ts +3 -0
- package/dist/views/system/job-monitor/index.vue.js +8 -0
- package/dist/views/system/job-monitor/index.vue.js.map +1 -0
- package/dist/views/system/job-monitor/index2.vue.js +253 -0
- package/dist/views/system/job-monitor/index2.vue.js.map +1 -0
- package/dist/views/system/log/exception/index.vue.d.ts +3 -0
- package/dist/views/system/log/exception/index.vue.js +8 -0
- package/dist/views/system/log/exception/index.vue.js.map +1 -0
- package/dist/views/system/log/exception/index2.vue.js +216 -0
- package/dist/views/system/log/exception/index2.vue.js.map +1 -0
- package/dist/views/system/log/login/index.vue.d.ts +3 -0
- package/dist/views/system/log/login/index.vue.js +5 -0
- package/dist/views/system/log/login/index.vue.js.map +1 -0
- package/dist/views/system/log/login/index2.vue.js +113 -0
- package/dist/views/system/log/login/index2.vue.js.map +1 -0
- package/dist/views/system/log/op/index.vue.d.ts +3 -0
- package/dist/views/system/log/op/index.vue.js +8 -0
- package/dist/views/system/log/op/index.vue.js.map +1 -0
- package/dist/views/system/log/op/index2.vue.js +332 -0
- package/dist/views/system/log/op/index2.vue.js.map +1 -0
- package/dist/views/system/menu/components/ButtonManager.vue.d.ts +21 -0
- package/dist/views/system/menu/components/ButtonManager.vue.js +8 -0
- package/dist/views/system/menu/components/ButtonManager.vue.js.map +1 -0
- package/dist/views/system/menu/components/ButtonManager2.vue.js +498 -0
- package/dist/views/system/menu/components/ButtonManager2.vue.js.map +1 -0
- package/dist/views/system/menu/components/MenuFormModal.vue.d.ts +22 -0
- package/dist/views/system/menu/components/MenuFormModal.vue.js +8 -0
- package/dist/views/system/menu/components/MenuFormModal.vue.js.map +1 -0
- package/dist/views/system/menu/components/MenuFormModal2.vue.js +259 -0
- package/dist/views/system/menu/components/MenuFormModal2.vue.js.map +1 -0
- package/dist/views/system/menu/index.vue.d.ts +3 -0
- package/dist/views/system/menu/index.vue.js +8 -0
- package/dist/views/system/menu/index.vue.js.map +1 -0
- package/dist/views/system/menu/index2.vue.js +391 -0
- package/dist/views/system/menu/index2.vue.js.map +1 -0
- package/dist/views/system/module/index.vue.d.ts +3 -0
- package/dist/views/system/module/index.vue.js +8 -0
- package/dist/views/system/module/index.vue.js.map +1 -0
- package/dist/views/system/module/index2.vue.js +344 -0
- package/dist/views/system/module/index2.vue.js.map +1 -0
- package/dist/views/system/monitor/index.vue.d.ts +3 -0
- package/dist/views/system/monitor/index.vue.js +8 -0
- package/dist/views/system/monitor/index.vue.js.map +1 -0
- package/dist/views/system/monitor/index2.vue.js +184 -0
- package/dist/views/system/monitor/index2.vue.js.map +1 -0
- package/dist/views/system/notice/index.vue.d.ts +3 -0
- package/dist/views/system/notice/index.vue.js +8 -0
- package/dist/views/system/notice/index.vue.js.map +1 -0
- package/dist/views/system/notice/index2.vue.js +401 -0
- package/dist/views/system/notice/index2.vue.js.map +1 -0
- package/dist/views/system/org/index.vue.d.ts +3 -0
- package/dist/views/system/org/index.vue.js +8 -0
- package/dist/views/system/org/index.vue.js.map +1 -0
- package/dist/views/system/org/index2.vue.js +397 -0
- package/dist/views/system/org/index2.vue.js.map +1 -0
- package/dist/views/system/position/index.vue.d.ts +3 -0
- package/dist/views/system/position/index.vue.js +5 -0
- package/dist/views/system/position/index.vue.js.map +1 -0
- package/dist/views/system/position/index2.vue.js +211 -0
- package/dist/views/system/position/index2.vue.js.map +1 -0
- package/dist/views/system/recycle/index.vue.d.ts +3 -0
- package/dist/views/system/recycle/index.vue.js +8 -0
- package/dist/views/system/recycle/index.vue.js.map +1 -0
- package/dist/views/system/recycle/index2.vue.js +121 -0
- package/dist/views/system/recycle/index2.vue.js.map +1 -0
- package/dist/views/system/role/components/GrantMenuTable.vue.d.ts +18 -0
- package/dist/views/system/role/components/GrantMenuTable.vue.js +8 -0
- package/dist/views/system/role/components/GrantMenuTable.vue.js.map +1 -0
- package/dist/views/system/role/components/GrantMenuTable2.vue.js +212 -0
- package/dist/views/system/role/components/GrantMenuTable2.vue.js.map +1 -0
- package/dist/views/system/role/components/grantMenuGroups.d.ts +31 -0
- package/dist/views/system/role/components/grantMenuGroups.js +76 -0
- package/dist/views/system/role/components/grantMenuGroups.js.map +1 -0
- package/dist/views/system/role/index.vue.d.ts +3 -0
- package/dist/views/system/role/index.vue.js +5 -0
- package/dist/views/system/role/index.vue.js.map +1 -0
- package/dist/views/system/role/index2.vue.js +476 -0
- package/dist/views/system/role/index2.vue.js.map +1 -0
- package/dist/views/system/session/index.vue.d.ts +3 -0
- package/dist/views/system/session/index.vue.js +5 -0
- package/dist/views/system/session/index.vue.js.map +1 -0
- package/dist/views/system/session/index2.vue.js +80 -0
- package/dist/views/system/session/index2.vue.js.map +1 -0
- package/dist/views/system/user/components/ResetPasswordModal.vue.d.ts +10 -0
- package/dist/views/system/user/components/ResetPasswordModal.vue.js +8 -0
- package/dist/views/system/user/components/ResetPasswordModal.vue.js.map +1 -0
- package/dist/views/system/user/components/ResetPasswordModal2.vue.js +111 -0
- package/dist/views/system/user/components/ResetPasswordModal2.vue.js.map +1 -0
- package/dist/views/system/user/components/UserFormModal.vue.d.ts +30 -0
- package/dist/views/system/user/components/UserFormModal.vue.js +8 -0
- package/dist/views/system/user/components/UserFormModal.vue.js.map +1 -0
- package/dist/views/system/user/components/UserFormModal2.vue.js +415 -0
- package/dist/views/system/user/components/UserFormModal2.vue.js.map +1 -0
- package/dist/views/system/user/index.vue.d.ts +3 -0
- package/dist/views/system/user/index.vue.js +8 -0
- package/dist/views/system/user/index.vue.js.map +1 -0
- package/dist/views/system/user/index2.vue.js +427 -0
- package/dist/views/system/user/index2.vue.js.map +1 -0
- package/package.json +99 -0
|
@@ -0,0 +1,1368 @@
|
|
|
1
|
+
const e = {
|
|
2
|
+
common: {
|
|
3
|
+
rowNo: "序号",
|
|
4
|
+
copySuffix: "-副本",
|
|
5
|
+
zoomIn: "放大",
|
|
6
|
+
zoomOut: "还原",
|
|
7
|
+
success: "操作成功",
|
|
8
|
+
confirm: "确定",
|
|
9
|
+
confirmTitle: "操作确认",
|
|
10
|
+
cancel: "取消",
|
|
11
|
+
close: "关闭",
|
|
12
|
+
more: "更多",
|
|
13
|
+
search: "查询",
|
|
14
|
+
reset: "重置",
|
|
15
|
+
expandAll: "展开全部",
|
|
16
|
+
collapseAll: "折叠全部",
|
|
17
|
+
add: "新增",
|
|
18
|
+
edit: "编辑",
|
|
19
|
+
delete: "删除",
|
|
20
|
+
save: "保存",
|
|
21
|
+
submit: "提交",
|
|
22
|
+
format: "格式化",
|
|
23
|
+
copy: "复制",
|
|
24
|
+
copied: "已复制",
|
|
25
|
+
loading: "加载中…",
|
|
26
|
+
yes: "是",
|
|
27
|
+
no: "否",
|
|
28
|
+
status: "状态",
|
|
29
|
+
enabled: "启用",
|
|
30
|
+
disabled: "停用",
|
|
31
|
+
visible: "显示",
|
|
32
|
+
hidden: "隐藏",
|
|
33
|
+
operation: "操作",
|
|
34
|
+
createTime: "创建时间",
|
|
35
|
+
batchDelete: "批量删除",
|
|
36
|
+
batchDeleteConfirm: "确认删除选中的 {count} 项?此操作不可恢复。",
|
|
37
|
+
all: "全部",
|
|
38
|
+
noData: "暂无数据",
|
|
39
|
+
back: "返回",
|
|
40
|
+
detail: "详情"
|
|
41
|
+
},
|
|
42
|
+
userPicker: {
|
|
43
|
+
title: "选择用户",
|
|
44
|
+
available: "可选用户",
|
|
45
|
+
selected: "已选",
|
|
46
|
+
add: "添加",
|
|
47
|
+
added: "已选",
|
|
48
|
+
addChecked: "添加选中",
|
|
49
|
+
clear: "清空"
|
|
50
|
+
},
|
|
51
|
+
notFound: {
|
|
52
|
+
desc: "页面不存在",
|
|
53
|
+
back: "返回工作台"
|
|
54
|
+
},
|
|
55
|
+
// 内容区渲染异常兜底(components/ErrorBoundary)
|
|
56
|
+
errorBoundary: {
|
|
57
|
+
title: "这个页面出错了",
|
|
58
|
+
desc: "页面渲染时抛出了未处理的异常。可以重试,或先回首页继续用别的功能。",
|
|
59
|
+
retry: "重试",
|
|
60
|
+
home: "回首页"
|
|
61
|
+
},
|
|
62
|
+
// 门户重建失败(网络/5xx/限流):会话没坏,不清会话
|
|
63
|
+
bootError: {
|
|
64
|
+
title: "加载工作台失败",
|
|
65
|
+
desc: "没能取到你的应用与菜单。多半是网络不通或服务端暂时不可用,你的登录状态仍然有效。",
|
|
66
|
+
retry: "重试",
|
|
67
|
+
relogin: "重新登录"
|
|
68
|
+
},
|
|
69
|
+
missingRoute: {
|
|
70
|
+
title: "菜单页面无法加载",
|
|
71
|
+
message: "菜单“{title}”配置的组件路径不存在,请检查组件路径:{component}"
|
|
72
|
+
},
|
|
73
|
+
app: {
|
|
74
|
+
theme: "主题",
|
|
75
|
+
dark: "暗色",
|
|
76
|
+
light: "亮色",
|
|
77
|
+
accent: "主色",
|
|
78
|
+
density: "密度",
|
|
79
|
+
comfortable: "舒适",
|
|
80
|
+
compact: "紧凑",
|
|
81
|
+
language: "语言",
|
|
82
|
+
loginStyle: "登录页样式",
|
|
83
|
+
collapse: "折叠菜单",
|
|
84
|
+
openMenu: "打开菜单",
|
|
85
|
+
switchModule: "切换应用",
|
|
86
|
+
logout: "退出登录",
|
|
87
|
+
personalCenter: "个人中心",
|
|
88
|
+
clearCache: "清除缓存",
|
|
89
|
+
cacheCleared: "缓存已清除",
|
|
90
|
+
profile: "个人资料",
|
|
91
|
+
password: "修改密码",
|
|
92
|
+
security: "账号安全",
|
|
93
|
+
sessions: "我的会话",
|
|
94
|
+
bindings: "账号绑定",
|
|
95
|
+
search: "搜索菜单",
|
|
96
|
+
fullscreen: "全屏",
|
|
97
|
+
exitFullscreen: "退出全屏",
|
|
98
|
+
settings: "系统设置",
|
|
99
|
+
notice: {
|
|
100
|
+
title: "消息通知",
|
|
101
|
+
empty: "暂无通知",
|
|
102
|
+
markAllRead: "全部已读",
|
|
103
|
+
viewAll: "查看全部"
|
|
104
|
+
}
|
|
105
|
+
},
|
|
106
|
+
settings: {
|
|
107
|
+
title: "系统设置",
|
|
108
|
+
tabAppearance: "外观",
|
|
109
|
+
tabLayout: "布局",
|
|
110
|
+
tabGeneral: "通用",
|
|
111
|
+
themeMode: "主题模式",
|
|
112
|
+
auto: "跟随系统",
|
|
113
|
+
themeColor: "主题色",
|
|
114
|
+
custom: "自定义",
|
|
115
|
+
layout: "布局模式",
|
|
116
|
+
layoutVertical: "左侧菜单模式",
|
|
117
|
+
layoutVerticalMix: "左侧菜单混合模式",
|
|
118
|
+
layoutVerticalHybridHeaderFirst: "左侧混合-顶部优先",
|
|
119
|
+
layoutHorizontal: "顶部菜单模式",
|
|
120
|
+
layoutTopHybridSidebarFirst: "顶部混合-侧边优先",
|
|
121
|
+
layoutTopHybridHeaderFirst: "顶部混合-顶部优先",
|
|
122
|
+
interface: "界面功能",
|
|
123
|
+
showBreadcrumb: "显示面包屑",
|
|
124
|
+
showTabs: "显示多标签",
|
|
125
|
+
fixedHeader: "固定头部",
|
|
126
|
+
pageTransition: "切换动画",
|
|
127
|
+
transitionNone: "无",
|
|
128
|
+
transitionFade: "淡入淡出",
|
|
129
|
+
transitionFadeSlide: "滑动淡入",
|
|
130
|
+
grayscale: "灰色模式",
|
|
131
|
+
watermark: "水印",
|
|
132
|
+
watermarkText: "水印文案",
|
|
133
|
+
watermarkPlaceholder: "请输入水印文案",
|
|
134
|
+
formStyle: "表单形态",
|
|
135
|
+
formStyleModal: "弹窗",
|
|
136
|
+
formStyleDrawer: "抽屉",
|
|
137
|
+
resetConfirm: "确定恢复默认设置?",
|
|
138
|
+
copyConfig: "复制配置",
|
|
139
|
+
configCopied: "已复制当前配置(粘回 stores/app.ts 的 DEFAULTS 即为新默认)",
|
|
140
|
+
searchPlaceholder: "搜索菜单…",
|
|
141
|
+
searchEmpty: "无匹配菜单",
|
|
142
|
+
searchHint: "↑↓ 导航 · ↵ 进入 · Esc 关闭"
|
|
143
|
+
},
|
|
144
|
+
tabs: {
|
|
145
|
+
refresh: "刷新",
|
|
146
|
+
pin: "固定",
|
|
147
|
+
unpin: "取消固定",
|
|
148
|
+
close: "关闭",
|
|
149
|
+
closeOthers: "关闭其他",
|
|
150
|
+
closeLeft: "关闭左侧",
|
|
151
|
+
closeRight: "关闭右侧",
|
|
152
|
+
closeAll: "关闭全部"
|
|
153
|
+
},
|
|
154
|
+
login: {
|
|
155
|
+
title: "登录",
|
|
156
|
+
subtitle: "面向多机构、多应用的统一权限底座",
|
|
157
|
+
headlinePre: "企业级",
|
|
158
|
+
headlineAccent: "权限",
|
|
159
|
+
headlinePost: "管理后台",
|
|
160
|
+
welcome: "欢迎回来",
|
|
161
|
+
welcomeSub: "请登录以继续管理后台",
|
|
162
|
+
featRbac: "RBAC 角色授权",
|
|
163
|
+
featScope: "多机构数据范围",
|
|
164
|
+
featPortal: "多应用门户",
|
|
165
|
+
account: "账号",
|
|
166
|
+
accountPlaceholder: "请输入账号",
|
|
167
|
+
password: "密码",
|
|
168
|
+
passwordPlaceholder: "请输入密码",
|
|
169
|
+
required: "请输入账号和密码",
|
|
170
|
+
captcha: "验证码",
|
|
171
|
+
captchaPlaceholder: "请输入验证码",
|
|
172
|
+
captchaMathPlaceholder: "请输入计算结果",
|
|
173
|
+
captchaRequired: "请输入验证码",
|
|
174
|
+
remember: "记住我",
|
|
175
|
+
submit: "登 录",
|
|
176
|
+
success: "登录成功",
|
|
177
|
+
smsLogin: "短信登录",
|
|
178
|
+
accountLogin: "账号登录",
|
|
179
|
+
phone: "手机号",
|
|
180
|
+
phonePlaceholder: "请输入手机号",
|
|
181
|
+
smsCode: "短信验证码",
|
|
182
|
+
smsCodePlaceholder: "请输入短信验证码",
|
|
183
|
+
smsRequired: "请输入手机号和短信验证码",
|
|
184
|
+
sendCode: "获取验证码",
|
|
185
|
+
resendAfter: "{s}s 后重发",
|
|
186
|
+
smsSent: "验证码已发送",
|
|
187
|
+
mfaTitle: "验证码已发送至 {phone}",
|
|
188
|
+
mfaSub: "请输入短信验证码完成登录",
|
|
189
|
+
setupAuthenticator: "设置身份验证器",
|
|
190
|
+
totpTitle: "二次验证",
|
|
191
|
+
totpSub: "请输入身份验证器中的 6 位动态口令",
|
|
192
|
+
totpCode: "动态口令",
|
|
193
|
+
totpPlaceholder: "请输入 6 位动态口令",
|
|
194
|
+
totpBindTitle: "需要设置身份验证器",
|
|
195
|
+
totpBindSub: "管理员已要求此账号启用二次验证。请先完成绑定,再重新登录。",
|
|
196
|
+
useRecovery: "使用恢复码",
|
|
197
|
+
backToPassword: "返回密码登录",
|
|
198
|
+
otherMethods: "其他登录方式",
|
|
199
|
+
moreMethods: "更多登录方式",
|
|
200
|
+
ssoWecom: "企业微信",
|
|
201
|
+
ssoDingtalk: "钉钉",
|
|
202
|
+
sso: "SSO",
|
|
203
|
+
ssoComingSoon: "第三方登录即将开放",
|
|
204
|
+
skinAurora: "极光",
|
|
205
|
+
skinSplit: "双栏",
|
|
206
|
+
skinSpotlight: "聚光"
|
|
207
|
+
},
|
|
208
|
+
module: {
|
|
209
|
+
choose: "选择应用",
|
|
210
|
+
empty: "暂无可访问的应用,请联系管理员分配",
|
|
211
|
+
setDefault: "设为默认",
|
|
212
|
+
isDefault: "默认",
|
|
213
|
+
back: "返回",
|
|
214
|
+
enter: "进入",
|
|
215
|
+
manage: "模块管理",
|
|
216
|
+
code: "编码",
|
|
217
|
+
name: "名称",
|
|
218
|
+
icon: "图标",
|
|
219
|
+
defaultRoute: "默认路由",
|
|
220
|
+
apiPrefix: "路由前缀",
|
|
221
|
+
apiPrefixHint: "用于权限路由下拉按应用过滤,填后端路由段(如 sys、biz);留空=不过滤",
|
|
222
|
+
sort: "排序",
|
|
223
|
+
remark: "备注",
|
|
224
|
+
builtin: "内置",
|
|
225
|
+
codeRequired: "请输入编码",
|
|
226
|
+
nameRequired: "请输入名称",
|
|
227
|
+
addTitle: "新增应用",
|
|
228
|
+
editTitle: "编辑应用",
|
|
229
|
+
deleteConfirm: "确定删除应用「{title}」?",
|
|
230
|
+
disableConfirm: "确定停用应用「{title}」?门户将不再显示该应用",
|
|
231
|
+
saved: "保存成功",
|
|
232
|
+
deleted: "已删除"
|
|
233
|
+
},
|
|
234
|
+
menu: {
|
|
235
|
+
searchPlaceholder: "搜索名称/路由/权限码",
|
|
236
|
+
workbench: "工作台",
|
|
237
|
+
profile: "个人资料",
|
|
238
|
+
password: "修改密码",
|
|
239
|
+
security: "账号安全",
|
|
240
|
+
notice: "我的通知",
|
|
241
|
+
sessions: "我的会话",
|
|
242
|
+
bindings: "账号绑定",
|
|
243
|
+
manage: "菜单管理",
|
|
244
|
+
parent: "上级菜单",
|
|
245
|
+
parentRoot: "顶级(根目录)",
|
|
246
|
+
type: "类型",
|
|
247
|
+
typeCatalog: "目录",
|
|
248
|
+
typeMenu: "页面",
|
|
249
|
+
typeButton: "按钮",
|
|
250
|
+
title: "标题",
|
|
251
|
+
permission: "权限码",
|
|
252
|
+
permissionPlaceholder: "选择路由,可多选",
|
|
253
|
+
permissionHint: "一颗按钮可挂多条路由,角色勾上它即一起授出;「查询」按钮挂列表与详情两条路由。",
|
|
254
|
+
configPerms: "配置权限 ({n})",
|
|
255
|
+
showAllRoutes: "显示全部应用路由",
|
|
256
|
+
routesInApp: "本应用路由",
|
|
257
|
+
routesOther: "其他应用路由",
|
|
258
|
+
module: "所属应用",
|
|
259
|
+
moduleHint: "仅顶级目录可设",
|
|
260
|
+
linkHint: "外链/内嵌:路径填 http(s) URL = 外链(新窗口打开);组件填 http(s) URL = 内嵌 iframe。",
|
|
261
|
+
moduleAll: "全部",
|
|
262
|
+
moduleUnassigned: "未分配",
|
|
263
|
+
path: "路由路径",
|
|
264
|
+
component: "组件路径",
|
|
265
|
+
icon: "图标",
|
|
266
|
+
sort: "排序",
|
|
267
|
+
visible: "侧栏可见",
|
|
268
|
+
titleRequired: "请输入标题",
|
|
269
|
+
addTitle: "新增菜单",
|
|
270
|
+
editTitle: "编辑菜单",
|
|
271
|
+
addChild: "新增子节点",
|
|
272
|
+
buttons: "权限按钮",
|
|
273
|
+
buttonManagerTitle: "「{title}」· 权限按钮",
|
|
274
|
+
buttonParent: "所属页面",
|
|
275
|
+
addButton: "新增按钮",
|
|
276
|
+
batchFromRoutes: "从路由批量添加",
|
|
277
|
+
batchTitle: "从路由批量添加按钮",
|
|
278
|
+
batchSearchPlaceholder: "搜索方法/路径/标题",
|
|
279
|
+
noRoutesLeft: "没有可添加的路由(该菜单已覆盖全部,或路由清单为空)",
|
|
280
|
+
btnQuery: "查询",
|
|
281
|
+
btnCreate: "新增",
|
|
282
|
+
btnUpdate: "编辑",
|
|
283
|
+
btnDelete: "删除",
|
|
284
|
+
deleteConfirm: "确定删除菜单「{title}」?",
|
|
285
|
+
disableConfirm: "确定停用菜单「{title}」?其子节点将一并隐藏",
|
|
286
|
+
saved: "保存成功",
|
|
287
|
+
deleted: "已删除"
|
|
288
|
+
},
|
|
289
|
+
iconPicker: {
|
|
290
|
+
placeholder: "选择图标",
|
|
291
|
+
title: "选择图标",
|
|
292
|
+
search: "搜索图标名…",
|
|
293
|
+
local: "本地 SVG",
|
|
294
|
+
online: "在线",
|
|
295
|
+
onlinePlaceholder: "输入任意 iconify 名,如 mdi:home",
|
|
296
|
+
use: "使用",
|
|
297
|
+
offlineHint: "当前离线,未内置的在线图标无法预览",
|
|
298
|
+
empty: "无匹配图标",
|
|
299
|
+
more: "还有 {n} 个,继续输入以缩小范围"
|
|
300
|
+
},
|
|
301
|
+
// SmartTable(smart-naive-table)组件文案;查询/重置/密度复用 common/app 键,全局注入见 createSmartAdmin.ts
|
|
302
|
+
table: {
|
|
303
|
+
refresh: "刷新",
|
|
304
|
+
columnSettings: "列设置",
|
|
305
|
+
columnSettingsReset: "恢复默认",
|
|
306
|
+
fixedLeft: "固定到左侧",
|
|
307
|
+
fixedRight: "固定到右侧",
|
|
308
|
+
fixedNone: "取消固定",
|
|
309
|
+
expand: "展开",
|
|
310
|
+
collapse: "收起",
|
|
311
|
+
// TableZoomButton(表格铺满视口看宽表)
|
|
312
|
+
zoom: "放大",
|
|
313
|
+
zoomExit: "还原"
|
|
314
|
+
},
|
|
315
|
+
workbench: {
|
|
316
|
+
welcome: "你好,{name}",
|
|
317
|
+
subtitle: "SmartAdmin · 企业级权限管理后台",
|
|
318
|
+
roles: "角色总数",
|
|
319
|
+
users: "授权用户",
|
|
320
|
+
perms: "权限点",
|
|
321
|
+
online: "在线会话",
|
|
322
|
+
trendTitle: "近 7 日活跃趋势",
|
|
323
|
+
distributionTitle: "资源分布",
|
|
324
|
+
trendLogins: "登录数",
|
|
325
|
+
trendActive: "活跃用户"
|
|
326
|
+
},
|
|
327
|
+
// 业务系统工作台(dashboard/biz.vue;真数据拼装,应用可用同 key 页面覆盖成自己的业务统计)
|
|
328
|
+
biz: {
|
|
329
|
+
welcome: "{name},欢迎回来",
|
|
330
|
+
subtitle: "应用工作台",
|
|
331
|
+
quick: "快捷入口",
|
|
332
|
+
notices: "我的通知",
|
|
333
|
+
viewAll: "查看全部",
|
|
334
|
+
noMenus: "当前应用暂无菜单"
|
|
335
|
+
},
|
|
336
|
+
user: {
|
|
337
|
+
title: "用户管理",
|
|
338
|
+
account: "账号",
|
|
339
|
+
name: "姓名",
|
|
340
|
+
status: "状态",
|
|
341
|
+
enabled: "启用",
|
|
342
|
+
disabled: "停用",
|
|
343
|
+
superAdmin: "超管",
|
|
344
|
+
createTime: "创建时间",
|
|
345
|
+
// 写侧字段(创建/编辑专用)
|
|
346
|
+
password: "初始密码",
|
|
347
|
+
// 未配 Security:DefaultInitialPassword 时(默认就没配),后端生成随机强口令 —— 别再说"系统默认初始密码",
|
|
348
|
+
// 那个东西默认不存在,照着这句话去告诉新人"用默认密码登"必然登不上。
|
|
349
|
+
passwordHint: "留空则自动生成随机密码(创建后显示一次)",
|
|
350
|
+
org: "归属机构",
|
|
351
|
+
allOrgs: "全部",
|
|
352
|
+
orgPlaceholder: "选择机构(可空)",
|
|
353
|
+
position: "职位",
|
|
354
|
+
positionPlaceholder: "选择职位(可空)",
|
|
355
|
+
director: "直属主管",
|
|
356
|
+
directorPlaceholder: "选择主管(可空)",
|
|
357
|
+
nickname: "昵称",
|
|
358
|
+
nicknamePlaceholder: "昵称(可空)",
|
|
359
|
+
phone: "手机号",
|
|
360
|
+
phonePlaceholder: "手机号(可空)",
|
|
361
|
+
phoneInvalid: "手机号格式不正确",
|
|
362
|
+
email: "邮箱",
|
|
363
|
+
emailPlaceholder: "邮箱(可空)",
|
|
364
|
+
emailInvalid: "邮箱格式不正确",
|
|
365
|
+
gender: "性别",
|
|
366
|
+
genderPlaceholder: "选择性别(可空)",
|
|
367
|
+
avatar: "头像",
|
|
368
|
+
avatarUploading: "上传中…",
|
|
369
|
+
roles: "角色",
|
|
370
|
+
rolesPlaceholder: "分配角色(可空)",
|
|
371
|
+
accountRequired: "请输入账号",
|
|
372
|
+
nameRequired: "请输入姓名",
|
|
373
|
+
addTitle: "新增用户",
|
|
374
|
+
editTitle: "编辑用户",
|
|
375
|
+
deleteConfirm: "确定删除用户「{name}」?",
|
|
376
|
+
disableConfirm: "确定停用用户「{name}」?",
|
|
377
|
+
saved: "保存成功",
|
|
378
|
+
deleted: "已删除",
|
|
379
|
+
resetPassword: "重置密码",
|
|
380
|
+
newPassword: "新密码",
|
|
381
|
+
newPasswordHint: "留空则自动生成随机密码",
|
|
382
|
+
resetDone: "密码已重置",
|
|
383
|
+
createDone: "用户已创建",
|
|
384
|
+
resetDoneHint: "请将下方初始密码转达给用户,关闭后不再显示:",
|
|
385
|
+
copy: "复制",
|
|
386
|
+
copied: "已复制到剪贴板",
|
|
387
|
+
copyFailed: "复制失败,请手动选取",
|
|
388
|
+
forceTotp: "强制动态口令",
|
|
389
|
+
totpBound: "已绑动态口令",
|
|
390
|
+
issueTotpInvite: "发放动态口令邀请",
|
|
391
|
+
clearMfa: "解绑身份验证器",
|
|
392
|
+
clearMfaConfirm: "确定解绑用户「{name}」的身份验证器?解绑后需重新绑定才能使用二次验证。",
|
|
393
|
+
mfaCleared: "已解绑该用户的身份验证器",
|
|
394
|
+
totpInviteTitle: "{name} 的动态口令邀请",
|
|
395
|
+
totpInviteOnce: "邀请仅在当前显示一次,请通过受控渠道将链接或令牌发送给用户。",
|
|
396
|
+
totpInviteUrl: "绑定链接",
|
|
397
|
+
totpInviteToken: "邀请令牌",
|
|
398
|
+
totpInviteExpires: "过期时间"
|
|
399
|
+
},
|
|
400
|
+
mfa: {
|
|
401
|
+
bindTitle: "设置身份验证器",
|
|
402
|
+
recoveryTitle: "使用恢复码",
|
|
403
|
+
useRecovery: "使用恢复码",
|
|
404
|
+
backToBind: "设置身份验证器",
|
|
405
|
+
stepVerify: "验证身份",
|
|
406
|
+
stepAuthenticator: "身份验证器",
|
|
407
|
+
stepRecovery: "恢复码",
|
|
408
|
+
bindHint: "输入账号和当前密码开始自助绑定(需管理员已开启 TOTP)。",
|
|
409
|
+
account: "账号",
|
|
410
|
+
currentPassword: "当前密码",
|
|
411
|
+
startBind: "开始设置",
|
|
412
|
+
bindRequired: "请输入账号和当前密码",
|
|
413
|
+
scanSetupHint: "用 Google Authenticator、Microsoft Authenticator 等应用扫描下方二维码。",
|
|
414
|
+
manualSetupHint: "无法扫码时,可手动输入密钥添加到身份验证器,再填写当前 6 位动态口令。",
|
|
415
|
+
manualKey: "手动设置密钥",
|
|
416
|
+
otpauthUri: "身份验证器 URI",
|
|
417
|
+
authenticatorCode: "动态口令",
|
|
418
|
+
completeBind: "完成设置",
|
|
419
|
+
codeRequired: "请输入动态口令",
|
|
420
|
+
recoveryOnce: "请立即保存这些恢复码。每个只能使用一次,关闭页面后将不再显示。建议下载到本地妥善保管。",
|
|
421
|
+
copy: "复制",
|
|
422
|
+
copied: "已复制到剪贴板",
|
|
423
|
+
copyFailed: "复制失败,请手动选取",
|
|
424
|
+
copyAll: "复制全部恢复码",
|
|
425
|
+
downloadCodes: "下载到本地",
|
|
426
|
+
recoveryDownloaded: "恢复码文件已开始下载",
|
|
427
|
+
recoveryDownloadHeader: "SmartAdmin 恢复码(账号:{account})",
|
|
428
|
+
recoveryDownloadFooter: "每个恢复码仅可使用一次。请离线妥善保管,勿转发他人。",
|
|
429
|
+
backToLogin: "返回登录",
|
|
430
|
+
recoveryHint: "恢复码会移除身份验证器并注销所有现有会话。之后请重新自助绑定。",
|
|
431
|
+
recoveryCode: "恢复码",
|
|
432
|
+
submitRecovery: "使用恢复码",
|
|
433
|
+
recoveryRequired: "请输入账号、当前密码和恢复码",
|
|
434
|
+
recoveryDone: "身份验证器已移除。请重新登录;如仍被要求,请再次自助绑定。",
|
|
435
|
+
bindStartResponseIncomplete: "设置响应不完整,请重新开始设置。",
|
|
436
|
+
bindCompleteResponseIncomplete: "设置响应不完整,请重新开始设置。"
|
|
437
|
+
},
|
|
438
|
+
reauth: {
|
|
439
|
+
title: "再次验证身份",
|
|
440
|
+
hint: "此操作涉及高风险变更,请输入动态口令或当前密码以继续(约 5 分钟内有效)。",
|
|
441
|
+
method: "验证方式",
|
|
442
|
+
methodTotp: "动态口令",
|
|
443
|
+
methodPassword: "当前密码",
|
|
444
|
+
totpCode: "动态口令",
|
|
445
|
+
totpPlaceholder: "6 位动态口令",
|
|
446
|
+
totpRequired: "请输入动态口令",
|
|
447
|
+
password: "当前密码",
|
|
448
|
+
passwordPlaceholder: "当前登录密码",
|
|
449
|
+
passwordRequired: "请输入当前密码",
|
|
450
|
+
confirm: "验证并继续"
|
|
451
|
+
},
|
|
452
|
+
// 导入向导 / 导出选列(两模板各自维护)
|
|
453
|
+
import: {
|
|
454
|
+
button: "导入",
|
|
455
|
+
wizardTitle: "导入用户",
|
|
456
|
+
stepUpload: "上传文件",
|
|
457
|
+
stepMapping: "列映射",
|
|
458
|
+
stepPreview: "预览改错",
|
|
459
|
+
stepResult: "完成",
|
|
460
|
+
downloadTemplate: "下载模板",
|
|
461
|
+
dropHint: "点击或拖拽 xlsx 到此处",
|
|
462
|
+
dropSub: "仅支持 .xlsx;字典列请用模板下拉值",
|
|
463
|
+
needFile: "请先选择导入文件",
|
|
464
|
+
mappingHint: "将文件表头映射到目标字段;自动匹配的已预选,可按需调整。",
|
|
465
|
+
fileHeader: "文件表头",
|
|
466
|
+
targetColumn: "目标列",
|
|
467
|
+
unmap: "(不映射)",
|
|
468
|
+
summary: "共 {total} 行,其中 {errors} 行有错误",
|
|
469
|
+
summaryDup: "另有 {n} 行已存在",
|
|
470
|
+
onlyErrors: "只看错误行",
|
|
471
|
+
revalidate: "重新校验",
|
|
472
|
+
revalidated: "已重验:{errors}/{total} 行有错",
|
|
473
|
+
errors: "错误",
|
|
474
|
+
ok: "通过",
|
|
475
|
+
errorCount: "{n} 项",
|
|
476
|
+
dupTag: "已存在",
|
|
477
|
+
// 键名后缀 = DuplicateStrategy 的数值(0 跳过 / 1 覆盖 / 2 记为错误)
|
|
478
|
+
dupHint: {
|
|
479
|
+
0: "该行已存在,提交时按「跳过已存在」略过,不必修改",
|
|
480
|
+
1: "该行已存在,提交时按「覆盖已存在」更新,不必修改",
|
|
481
|
+
2: "该行已存在,当前策略「已存在记为错误」下会被判失败"
|
|
482
|
+
},
|
|
483
|
+
strategy: "重复策略",
|
|
484
|
+
strategySkip: "跳过已存在",
|
|
485
|
+
strategyOverwrite: "覆盖已存在",
|
|
486
|
+
strategyError: "已存在记为错误",
|
|
487
|
+
commit: "提交导入",
|
|
488
|
+
prev: "上一步",
|
|
489
|
+
next: "下一步",
|
|
490
|
+
resultTitle: "导入完成",
|
|
491
|
+
resultTotal: "合计 {n} 行",
|
|
492
|
+
resultInserted: "新增 {n}",
|
|
493
|
+
resultUpdated: "更新 {n}",
|
|
494
|
+
resultSkipped: "跳过 {n}",
|
|
495
|
+
resultFailed: "失败 {n}",
|
|
496
|
+
editFailures: "继续修改失败行",
|
|
497
|
+
downloadErrorReport: "下载错误报告",
|
|
498
|
+
noErrorRows: "当前没有错误行"
|
|
499
|
+
},
|
|
500
|
+
export: {
|
|
501
|
+
button: "导出",
|
|
502
|
+
pickColumns: "选择导出列",
|
|
503
|
+
selectAll: "全选",
|
|
504
|
+
confirm: "导出",
|
|
505
|
+
done: "导出成功"
|
|
506
|
+
},
|
|
507
|
+
config: {
|
|
508
|
+
title: "配置管理",
|
|
509
|
+
key: "配置键",
|
|
510
|
+
name: "配置名称",
|
|
511
|
+
value: "配置值",
|
|
512
|
+
group: "分组编码",
|
|
513
|
+
sort: "排序",
|
|
514
|
+
remark: "备注",
|
|
515
|
+
keyRequired: "请输入配置键",
|
|
516
|
+
nameRequired: "请输入配置名称",
|
|
517
|
+
addTitle: "新增配置",
|
|
518
|
+
editTitle: "编辑配置",
|
|
519
|
+
deleteConfirm: "确定删除配置「{name}」?",
|
|
520
|
+
saved: "保存成功",
|
|
521
|
+
deleted: "已删除",
|
|
522
|
+
groupManagedBy: "该分组归「{tab}」管理,保存后在那里显示",
|
|
523
|
+
groupExtra: {
|
|
524
|
+
title: "本组其它配置",
|
|
525
|
+
hint: "同一分组里上面的表单没有列出的配置项,在这里查看、修改或删除。"
|
|
526
|
+
},
|
|
527
|
+
tab: {
|
|
528
|
+
base: "系统基础",
|
|
529
|
+
security: "安全策略",
|
|
530
|
+
externalAuth: "第三方登录",
|
|
531
|
+
upload: "上传策略",
|
|
532
|
+
job: "定时任务",
|
|
533
|
+
other: "其他配置"
|
|
534
|
+
},
|
|
535
|
+
job: {
|
|
536
|
+
logRetentionDays: "日志保留天数",
|
|
537
|
+
alertEmails: "告警邮箱",
|
|
538
|
+
alertEmailsHint: "多个邮箱用逗号分隔"
|
|
539
|
+
},
|
|
540
|
+
externalAuth: {
|
|
541
|
+
hint: "控制登录页显示哪些已部署的第三方登录方式。关闭后按钮隐藏,授权入口同步拒绝。连接密钥仍在服务器配置文件中。",
|
|
542
|
+
empty: "当前未注册任何第三方登录(需在部署中装包或配置 OIDC)",
|
|
543
|
+
showOnLogin: "登录页显示",
|
|
544
|
+
hidden: "已隐藏",
|
|
545
|
+
loginVisible: "登录页显示",
|
|
546
|
+
summary: "共 {total} 种方式 · {on} 个在登录页显示",
|
|
547
|
+
summaryFull: "共 {total} 种 · 已配置 {registered} · 登录页显示 {on}",
|
|
548
|
+
reset: "还原",
|
|
549
|
+
notConfigured: "未配置",
|
|
550
|
+
notConfiguredTip: "部署侧未注册该方式(未装包或未填密钥),无法在登录页开启。",
|
|
551
|
+
linkByAccount: "按账号自动关联",
|
|
552
|
+
linkByAccountConfirmTitle: "打开按账号自动关联?",
|
|
553
|
+
linkByAccountConfirm: "{name}账号与本地账号完全相同的人,首次从{name}登录时会自动绑定到该本地账号并直接登录;超级管理员、已停用账号、已绑过{name}的账号除外。请先确认两边账号是同一批人,比如本地账号就是从{name}同步来的。"
|
|
554
|
+
},
|
|
555
|
+
base: {
|
|
556
|
+
siteTitle: "站点标题",
|
|
557
|
+
logo: "Logo 地址",
|
|
558
|
+
siteSubtitle: "登录副标题",
|
|
559
|
+
copyright: "版权信息",
|
|
560
|
+
copyrightUrl: "版权链接"
|
|
561
|
+
},
|
|
562
|
+
security: {
|
|
563
|
+
loginLock: {
|
|
564
|
+
title: "登录失败锁定",
|
|
565
|
+
maxFailCount: "锁定阈值(次)",
|
|
566
|
+
lockMinutes: "锁定时长(分钟)"
|
|
567
|
+
},
|
|
568
|
+
password: {
|
|
569
|
+
title: "密码复杂度",
|
|
570
|
+
minLength: "最小长度",
|
|
571
|
+
requireUpper: "须含大写字母",
|
|
572
|
+
requireLower: "须含小写字母",
|
|
573
|
+
requireDigit: "须含数字",
|
|
574
|
+
requireSpecial: "须含特殊字符",
|
|
575
|
+
expireDays: "密码有效天数(0=永不过期)",
|
|
576
|
+
historyCount: "密码历史防重用条数(0=关闭)"
|
|
577
|
+
},
|
|
578
|
+
session: {
|
|
579
|
+
title: "会话时长",
|
|
580
|
+
accessMinutes: "访问令牌(分钟)",
|
|
581
|
+
refreshMinutes: "刷新令牌(分钟)"
|
|
582
|
+
},
|
|
583
|
+
captcha: {
|
|
584
|
+
title: "登录验证码",
|
|
585
|
+
enabled: "启用登录验证码",
|
|
586
|
+
type: "验证码类型",
|
|
587
|
+
types: { char: "字符", path: "描边(更抗爬)", math: "算术" }
|
|
588
|
+
},
|
|
589
|
+
totp: {
|
|
590
|
+
title: "动态口令(TOTP)",
|
|
591
|
+
enabled: "启用动态口令",
|
|
592
|
+
requireForSuperAdmin: "超管必须动态口令",
|
|
593
|
+
hint: "与登录验证码一样可即时开关。开启后,用户管理里的「强制动态口令」才会在登录时生效;用户可在账号安全中自助绑定。"
|
|
594
|
+
},
|
|
595
|
+
sms: {
|
|
596
|
+
title: "短信验证",
|
|
597
|
+
hint: "二次验证仅对绑定了手机号的用户生效;开发环境验证码打印在后端日志,生产需注册真实短信通道(ISmsSender)。"
|
|
598
|
+
},
|
|
599
|
+
mfa: { enabled: "启用短信二次验证" },
|
|
600
|
+
smsLogin: { enabled: "启用短信验证码登录" },
|
|
601
|
+
rateLimit: {
|
|
602
|
+
title: "请求限流",
|
|
603
|
+
enabled: "启用请求限流",
|
|
604
|
+
windowSeconds: "限流窗口(秒)",
|
|
605
|
+
permitPerWindow: "全局每窗口请求数",
|
|
606
|
+
authPermitPerWindow: "认证端点每窗口请求数"
|
|
607
|
+
},
|
|
608
|
+
highSens: {
|
|
609
|
+
title: "高敏感权限(自定义追加)",
|
|
610
|
+
hint: "内核默认高敏权限不可删除;下方仅可追加/删除消费者自定义权限码。写操作需近期再认证。",
|
|
611
|
+
code: "权限码",
|
|
612
|
+
remark: "备注",
|
|
613
|
+
codePh: "如 POST:/api/v1/biz/order",
|
|
614
|
+
remarkPh: "可选备注",
|
|
615
|
+
codeRequired: "请填写权限码"
|
|
616
|
+
}
|
|
617
|
+
},
|
|
618
|
+
upload: {
|
|
619
|
+
title: "上传约束",
|
|
620
|
+
maxSizeMb: "单文件上限(MB)",
|
|
621
|
+
allowedExtensions: "允许的后缀",
|
|
622
|
+
extPlaceholder: "输入后缀回车,如 .jpg",
|
|
623
|
+
extTip: "含点、小写;留空则回退到服务端默认"
|
|
624
|
+
}
|
|
625
|
+
},
|
|
626
|
+
// 字典管理(主从:左类型 / 右字典项)
|
|
627
|
+
dict: {
|
|
628
|
+
title: "字典管理",
|
|
629
|
+
code: "类型编码",
|
|
630
|
+
name: "类型名称",
|
|
631
|
+
searchName: "搜索名称",
|
|
632
|
+
sort: "排序",
|
|
633
|
+
remark: "备注",
|
|
634
|
+
codeRequired: "请输入类型编码",
|
|
635
|
+
nameRequired: "请输入类型名称",
|
|
636
|
+
addTypeTitle: "新增字典类型",
|
|
637
|
+
editTypeTitle: "编辑字典类型",
|
|
638
|
+
typeDeleteConfirm: "确定删除字典类型「{name}」?其下字典项将一并删除。",
|
|
639
|
+
typeSaved: "保存成功",
|
|
640
|
+
typeDeleted: "已删除",
|
|
641
|
+
itemsOf: "「{name}」的字典项",
|
|
642
|
+
selectTypeHint: "请选择左侧字典类型以管理其字典项",
|
|
643
|
+
itemLabel: "显示文本",
|
|
644
|
+
itemValue: "值",
|
|
645
|
+
itemLabelRequired: "请输入显示文本",
|
|
646
|
+
itemValueRequired: "请输入值",
|
|
647
|
+
addItem: "新增字典项",
|
|
648
|
+
addItemTitle: "新增字典项",
|
|
649
|
+
editItemTitle: "编辑字典项",
|
|
650
|
+
itemDeleteConfirm: "确定删除字典项「{label}」?",
|
|
651
|
+
itemSaved: "保存成功",
|
|
652
|
+
itemDeleted: "已删除"
|
|
653
|
+
},
|
|
654
|
+
// 机构管理(树表 + 上级机构树选)
|
|
655
|
+
org: {
|
|
656
|
+
title: "机构管理",
|
|
657
|
+
searchPlaceholder: "搜索机构名称/编码",
|
|
658
|
+
name: "机构名称",
|
|
659
|
+
code: "机构编码",
|
|
660
|
+
category: "分类",
|
|
661
|
+
categoryPlaceholder: "选择机构分类",
|
|
662
|
+
sort: "排序",
|
|
663
|
+
parent: "上级机构",
|
|
664
|
+
parentPlaceholder: "选择上级机构(留空=顶级)",
|
|
665
|
+
nameRequired: "请输入机构名称",
|
|
666
|
+
codePlaceholder: "不填则自动生成",
|
|
667
|
+
addChild: "新增下级",
|
|
668
|
+
addTitle: "新增机构",
|
|
669
|
+
editTitle: "编辑机构",
|
|
670
|
+
deleteConfirm: "确定删除机构「{name}」?",
|
|
671
|
+
copy: "复制",
|
|
672
|
+
copyTitle: "复制机构",
|
|
673
|
+
copyConfirm: "将复制「{name}」及其全部下级,克隆编码自动追加 -copy 后缀。",
|
|
674
|
+
copyNameLabel: "新机构名称",
|
|
675
|
+
copied: "已复制",
|
|
676
|
+
saved: "保存成功",
|
|
677
|
+
deleted: "已删除"
|
|
678
|
+
},
|
|
679
|
+
// 文件管理(列表 + 上传/下载/删除)
|
|
680
|
+
file: {
|
|
681
|
+
title: "文件管理",
|
|
682
|
+
name: "文件名",
|
|
683
|
+
extension: "后缀",
|
|
684
|
+
size: "大小",
|
|
685
|
+
contentType: "类型",
|
|
686
|
+
uploadTime: "上传时间",
|
|
687
|
+
upload: "上传文件",
|
|
688
|
+
uploadChunked: "分片上传",
|
|
689
|
+
uploaded: "上传成功",
|
|
690
|
+
download: "下载",
|
|
691
|
+
deleteConfirm: "确定删除文件「{name}」?",
|
|
692
|
+
deleted: "已删除"
|
|
693
|
+
},
|
|
694
|
+
// 消息通知(管理端发布/列表/删除 + 用户侧「我的通知」共用此命名空间)
|
|
695
|
+
notice: {
|
|
696
|
+
title: "消息通知",
|
|
697
|
+
mine: "我的通知",
|
|
698
|
+
status: "状态",
|
|
699
|
+
read: "已读",
|
|
700
|
+
unread: "未读",
|
|
701
|
+
allRead: "已全部标记为已读",
|
|
702
|
+
noticeTitle: "标题",
|
|
703
|
+
content: "内容",
|
|
704
|
+
type: "类型",
|
|
705
|
+
typeNotice: "通知",
|
|
706
|
+
typeAnnouncement: "公告",
|
|
707
|
+
typeMessage: "消息",
|
|
708
|
+
receiver: "接收范围",
|
|
709
|
+
receiverAll: "全体用户",
|
|
710
|
+
receiverRole: "指定角色",
|
|
711
|
+
receiverUser: "指定用户",
|
|
712
|
+
receiverPlaceholder: "请选择接收对象",
|
|
713
|
+
receiverRequired: "请选择接收对象",
|
|
714
|
+
publishTime: "发布时间",
|
|
715
|
+
publish: "发布通知",
|
|
716
|
+
publishTitle: "发布通知",
|
|
717
|
+
titleRequired: "请输入标题",
|
|
718
|
+
deleteConfirm: "确定删除通知「{title}」?",
|
|
719
|
+
published: "已发布",
|
|
720
|
+
deleted: "已删除",
|
|
721
|
+
view: "查看",
|
|
722
|
+
detailTitle: "通知详情",
|
|
723
|
+
// 动作按钮(发布时可选带上,渲染在正文下)
|
|
724
|
+
actions: "动作按钮",
|
|
725
|
+
actionsHint: "最多 5 条;url 以 /api/ 开头是接口调用,其它站内路径是页面跳转;文案含「.」按 i18n key 翻译",
|
|
726
|
+
actionCount: "{count} 个动作",
|
|
727
|
+
actionLabel: "文案",
|
|
728
|
+
actionMethod: "方法",
|
|
729
|
+
actionUrl: "站内路径",
|
|
730
|
+
actionStyle: "样式",
|
|
731
|
+
actionStyleDefault: "默认",
|
|
732
|
+
actionStylePrimary: "主色",
|
|
733
|
+
actionStyleError: "危险",
|
|
734
|
+
actionNeedConfirm: "先确认",
|
|
735
|
+
actionNeedComment: "填意见",
|
|
736
|
+
actionAdd: "添加动作",
|
|
737
|
+
actionConfirm: "确定执行「{label}」?",
|
|
738
|
+
actionCommentPlaceholder: "请输入意见(可留空)",
|
|
739
|
+
actionDone: "已执行",
|
|
740
|
+
actionInvalidUrl: "动作地址不合法"
|
|
741
|
+
},
|
|
742
|
+
// 实时通知(SignalR;后端 SmartAdmin:Realtime:Enabled 开启后即时推送,否则退回轮询/惰性 401)
|
|
743
|
+
realtime: {
|
|
744
|
+
forcedLogout: "您已被强制下线"
|
|
745
|
+
},
|
|
746
|
+
// 在线会话(只读 + 踢人)
|
|
747
|
+
session: {
|
|
748
|
+
title: "在线会话",
|
|
749
|
+
account: "账号",
|
|
750
|
+
ip: "IP 地址",
|
|
751
|
+
device: "设备",
|
|
752
|
+
loginTime: "登录时间",
|
|
753
|
+
expiresAt: "过期时间",
|
|
754
|
+
kick: "强制下线",
|
|
755
|
+
self: "当前会话",
|
|
756
|
+
kickConfirm: "确定强制下线账号「{account}」的会话?该会话将立即失效。",
|
|
757
|
+
kicked: "已强制下线",
|
|
758
|
+
mineTitle: "我的会话",
|
|
759
|
+
current: "当前设备",
|
|
760
|
+
kickMineConfirm: "确定下线该设备上的会话?其登录状态将立即失效。"
|
|
761
|
+
},
|
|
762
|
+
// 外部登录 / SSO:回调结果页 + 个人中心账号绑定
|
|
763
|
+
oauth: {
|
|
764
|
+
processing: "正在处理登录…",
|
|
765
|
+
backToLogin: "即将返回登录页",
|
|
766
|
+
failed: "第三方登录失败,请重试",
|
|
767
|
+
bindingsTitle: "账号绑定",
|
|
768
|
+
bindingsHint: "把第三方账号绑定到本账号后,即可用它一键登录。绑定需跳转到对应平台完成一次授权。",
|
|
769
|
+
bindingsTip: "绑定会跳转到对应平台授权;解绑后将无法再用该方式登录本账号。",
|
|
770
|
+
boundCountLabel: "已绑定",
|
|
771
|
+
bindTip: "点击下方按钮前往授权绑定",
|
|
772
|
+
disabledTip: "运营已关闭该登录方式,已绑定的仍可解绑",
|
|
773
|
+
cannotBind: "暂不可绑定",
|
|
774
|
+
noProviders: "当前未启用任何第三方登录方式",
|
|
775
|
+
thirdParty: "第三方账号",
|
|
776
|
+
pendingLinkTitle: "待绑定 {name}",
|
|
777
|
+
pendingLinkHint: "该 {name} 尚未绑定系统账号。请用你自己的系统账号登录;登录后将请你确认是否绑定。请勿打开来源不明的绑定链接。",
|
|
778
|
+
pendingLinkSuccess: "已绑定 {name},下次可直接用它登录",
|
|
779
|
+
pendingLinkConfirmTitle: "确认绑定第三方账号?",
|
|
780
|
+
pendingLinkConfirmContent: "将把 {name}{identity} 绑定到当前账号「{account}」。若这不是你本人刚授权的第三方账号,请选择「仅登录」。",
|
|
781
|
+
pendingLinkConfirmOk: "确认绑定",
|
|
782
|
+
pendingLinkConfirmSkip: "仅登录,不绑定",
|
|
783
|
+
pendingLinkIdentity: "({display})",
|
|
784
|
+
bind: "绑定",
|
|
785
|
+
unbind: "解绑",
|
|
786
|
+
bound: "已绑定",
|
|
787
|
+
notBound: "未绑定",
|
|
788
|
+
boundAt: "绑定于 {time}",
|
|
789
|
+
unbound: "已解绑",
|
|
790
|
+
unbindConfirm: "确定解绑「{name}」?解绑后将不能再用它登录本账号。",
|
|
791
|
+
disabled: "已停用",
|
|
792
|
+
// 内置品牌显示名(后端未下发 displayName 时用)
|
|
793
|
+
brand: {
|
|
794
|
+
github: "GitHub",
|
|
795
|
+
wechat: "微信",
|
|
796
|
+
wecom: "企业微信",
|
|
797
|
+
dingtalk: "钉钉",
|
|
798
|
+
gitee: "Gitee",
|
|
799
|
+
qq: "QQ"
|
|
800
|
+
}
|
|
801
|
+
},
|
|
802
|
+
// 岗位管理(普通 CRUD;岗位与机构无关联)
|
|
803
|
+
position: {
|
|
804
|
+
title: "岗位管理",
|
|
805
|
+
code: "岗位编码",
|
|
806
|
+
name: "岗位名称",
|
|
807
|
+
sort: "排序",
|
|
808
|
+
codePlaceholder: "不填则自动生成",
|
|
809
|
+
nameRequired: "请输入岗位名称",
|
|
810
|
+
addTitle: "新增岗位",
|
|
811
|
+
editTitle: "编辑岗位",
|
|
812
|
+
deleteConfirm: "确定删除岗位「{name}」?",
|
|
813
|
+
saved: "保存成功",
|
|
814
|
+
deleted: "已删除"
|
|
815
|
+
},
|
|
816
|
+
// 角色管理(CRUD + 授权菜单 + 数据范围)
|
|
817
|
+
role: {
|
|
818
|
+
title: "角色管理",
|
|
819
|
+
code: "角色编码",
|
|
820
|
+
name: "角色名称",
|
|
821
|
+
sort: "排序",
|
|
822
|
+
remark: "备注",
|
|
823
|
+
codeRequired: "请输入角色编码",
|
|
824
|
+
nameRequired: "请输入角色名称",
|
|
825
|
+
addTitle: "新增角色",
|
|
826
|
+
editTitle: "编辑角色",
|
|
827
|
+
// 删角色会物理删掉用户↔角色关联(不可恢复),故删前先查人数当面告知;查不到人数(无用户查询权限)才退回这条通用文案
|
|
828
|
+
deleteConfirm: "确定删除角色「{name}」?其授权、数据范围及用户关联将一并清除。",
|
|
829
|
+
deleteConfirmNoUsers: "确定删除角色「{name}」?当前没有用户使用该角色。",
|
|
830
|
+
deleteConfirmWithUsers: "角色「{name}」当前有 {count} 个用户在用。删除后这些用户将立即失去该角色的全部权限,且关联无法恢复。确定删除?",
|
|
831
|
+
batchDeleteWithUsers: "确定删除所选 {count} 个角色?其中 {users} 个用户将立即失去相应权限,且关联无法恢复。",
|
|
832
|
+
isDelegatable: "可转授",
|
|
833
|
+
isDelegatableHint: "开启后,非超管用户可把该角色指派给其数据范围内的用户",
|
|
834
|
+
grantUsers: "授权用户",
|
|
835
|
+
grantUsersSaved: "用户授权已保存",
|
|
836
|
+
saved: "保存成功",
|
|
837
|
+
deleted: "已删除",
|
|
838
|
+
grantMenus: "授权菜单",
|
|
839
|
+
grantSaved: "授权已保存",
|
|
840
|
+
catalog: "一级目录",
|
|
841
|
+
menuCol: "菜单",
|
|
842
|
+
buttonsCol: "按钮授权",
|
|
843
|
+
apiOnlyRow: "接口权限(无页面)",
|
|
844
|
+
dataScope: "数据范围",
|
|
845
|
+
scopeType: "范围类型",
|
|
846
|
+
customOrgs: "自定义机构",
|
|
847
|
+
customOrgsHint: "选择该角色可见的机构",
|
|
848
|
+
scopeSaved: "数据范围已保存",
|
|
849
|
+
scope: {
|
|
850
|
+
all: "全部数据",
|
|
851
|
+
org: "本机构",
|
|
852
|
+
orgAndChildren: "本机构及以下",
|
|
853
|
+
self: "仅本人",
|
|
854
|
+
custom: "自定义机构"
|
|
855
|
+
}
|
|
856
|
+
},
|
|
857
|
+
// 日志(登录 / 操作共用一个命名空间;共享 result/success/failed/ip/userAgent/clear/cleared)
|
|
858
|
+
log: {
|
|
859
|
+
loginTitle: "登录日志",
|
|
860
|
+
account: "账号",
|
|
861
|
+
result: "结果",
|
|
862
|
+
success: "成功",
|
|
863
|
+
failed: "失败",
|
|
864
|
+
resultCode: "结果码",
|
|
865
|
+
name: "姓名",
|
|
866
|
+
ip: "IP 地址",
|
|
867
|
+
userAgent: "客户端",
|
|
868
|
+
device: "设备",
|
|
869
|
+
clear: "清空日志",
|
|
870
|
+
clearLoginConfirm: "确定清空全部登录日志?此为硬删除,不可恢复。",
|
|
871
|
+
cleared: "已清空",
|
|
872
|
+
// 操作日志
|
|
873
|
+
opTitle: "操作日志",
|
|
874
|
+
opName: "操作名",
|
|
875
|
+
method: "方法",
|
|
876
|
+
path: "路径",
|
|
877
|
+
elapsed: "耗时",
|
|
878
|
+
operator: "操作人",
|
|
879
|
+
operatorPlaceholder: "选择操作人",
|
|
880
|
+
param: "入参",
|
|
881
|
+
exception: "异常信息",
|
|
882
|
+
detail: "详情",
|
|
883
|
+
clearOpConfirm: "确定清空全部操作日志?此为硬删除,不可恢复。",
|
|
884
|
+
// 异常日志
|
|
885
|
+
exceptionTitle: "异常日志",
|
|
886
|
+
exceptionType: "异常类型",
|
|
887
|
+
exceptionMessage: "异常消息",
|
|
888
|
+
stackTrace: "异常堆栈",
|
|
889
|
+
traceId: "追踪号",
|
|
890
|
+
clearExceptionConfirm: "确定清空全部异常日志?此为硬删除,不可恢复。"
|
|
891
|
+
},
|
|
892
|
+
monitor: {
|
|
893
|
+
title: "服务器监控",
|
|
894
|
+
refresh: "刷新",
|
|
895
|
+
cpu: "CPU 占用",
|
|
896
|
+
memory: "内存占用",
|
|
897
|
+
runtime: "运行时",
|
|
898
|
+
disk: "磁盘",
|
|
899
|
+
processorCount: "处理器",
|
|
900
|
+
threadCount: "线程",
|
|
901
|
+
gcHeap: "托管堆",
|
|
902
|
+
totalMemory: "可用上界",
|
|
903
|
+
machineName: "主机名",
|
|
904
|
+
framework: "框架",
|
|
905
|
+
os: "操作系统",
|
|
906
|
+
arch: "架构",
|
|
907
|
+
uptime: "运行时长",
|
|
908
|
+
free: "可用",
|
|
909
|
+
days: "天",
|
|
910
|
+
hours: "时",
|
|
911
|
+
minutes: "分"
|
|
912
|
+
},
|
|
913
|
+
// 定时任务(任务列表 / 执行记录 / 任务监控 / CronEditor;错误码文案在 error.job.*,别重复)
|
|
914
|
+
job: {
|
|
915
|
+
title: "定时任务",
|
|
916
|
+
name: "任务名称",
|
|
917
|
+
code: "任务编码",
|
|
918
|
+
codePlaceholder: "唯一编码,创建后不可变",
|
|
919
|
+
remark: "备注",
|
|
920
|
+
nameRequired: "请输入任务名称",
|
|
921
|
+
codeRequired: "请输入任务编码",
|
|
922
|
+
addTitle: "新增任务",
|
|
923
|
+
editTitle: "编辑任务",
|
|
924
|
+
deleteConfirm: "确定删除任务「{name}」?",
|
|
925
|
+
saved: "保存成功,集群下最长 30 秒后生效",
|
|
926
|
+
deleted: "已删除",
|
|
927
|
+
runOnce: "执行",
|
|
928
|
+
runConfirm: "确定立即执行一次任务「{name}」?本次执行不影响原调度节奏。",
|
|
929
|
+
runStarted: "已触发执行",
|
|
930
|
+
viewLogs: "记录",
|
|
931
|
+
protectedTip: "内置任务受保护,禁止删除",
|
|
932
|
+
pauseConfirm: "确定暂停任务「{name}」?暂停后不再调度。",
|
|
933
|
+
panicTooltip: "连续失败 {n} 次已熔断;重新启用将清零连败并恢复调度",
|
|
934
|
+
nextRunTime: "下次执行",
|
|
935
|
+
lastRunTime: "上次执行",
|
|
936
|
+
runCount: "执行/失败",
|
|
937
|
+
status: { ready: "就绪", paused: "已暂停", completed: "已完成", panic: "已熔断" },
|
|
938
|
+
form: {
|
|
939
|
+
sectionBasic: "基本",
|
|
940
|
+
sectionTrigger: "触发",
|
|
941
|
+
sectionHandler: "载荷",
|
|
942
|
+
sectionAdvanced: "高级选项",
|
|
943
|
+
sectionAdvancedHint: "生效窗口、错过策略、并发、重试与告警;不展开也能保存",
|
|
944
|
+
startTime: "生效开始",
|
|
945
|
+
endTime: "生效结束",
|
|
946
|
+
windowPlaceholder: "留空=不限",
|
|
947
|
+
misfireStrategy: "错过策略",
|
|
948
|
+
misfireSkip: "跳过",
|
|
949
|
+
misfireFireOnceNow: "立即补跑一次",
|
|
950
|
+
concurrencyMode: "并发模式",
|
|
951
|
+
concurrencySerial: "串行跳过",
|
|
952
|
+
concurrencyParallel: "并行",
|
|
953
|
+
timeoutSeconds: "执行超时(秒)",
|
|
954
|
+
timeoutHint: "0 = 不限制",
|
|
955
|
+
retryCount: "失败重试次数",
|
|
956
|
+
retryIntervalSeconds: "重试间隔(秒)",
|
|
957
|
+
failAlertThreshold: "连败告警阈值",
|
|
958
|
+
failAlertHint: "0 = 不告警不熔断",
|
|
959
|
+
alertByNotice: "站内信告警",
|
|
960
|
+
alertEmails: "告警邮箱",
|
|
961
|
+
alertEmailsPlaceholder: "逗号分隔;留空回退全局配置"
|
|
962
|
+
},
|
|
963
|
+
trigger: {
|
|
964
|
+
kind: "触发方式",
|
|
965
|
+
cron: "Cron",
|
|
966
|
+
interval: "固定间隔",
|
|
967
|
+
oneShot: "一次性",
|
|
968
|
+
cronExpression: "Cron 表达式",
|
|
969
|
+
cronRequired: "请输入 cron 表达式",
|
|
970
|
+
intervalSeconds: "间隔秒数",
|
|
971
|
+
intervalRequired: "请输入间隔秒数(≥5)",
|
|
972
|
+
oneShotTime: "执行时刻",
|
|
973
|
+
oneShotRequired: "请选择执行时刻",
|
|
974
|
+
seconds: "秒",
|
|
975
|
+
everySeconds: "每 {n} 秒"
|
|
976
|
+
},
|
|
977
|
+
handler: {
|
|
978
|
+
kind: "载荷类型",
|
|
979
|
+
compiled: "编译类",
|
|
980
|
+
http: "HTTP",
|
|
981
|
+
sql: "SQL",
|
|
982
|
+
sqlDisabledHint: "SQL 载荷未启用:需后端开启 SmartAdmin:Jobs:Sql:Enabled",
|
|
983
|
+
name: "处理器",
|
|
984
|
+
namePlaceholder: "选择已注册的处理器",
|
|
985
|
+
nameRequired: "请选择处理器",
|
|
986
|
+
props: "属性包",
|
|
987
|
+
propKey: "键",
|
|
988
|
+
propValue: "值",
|
|
989
|
+
addProp: "添加一项",
|
|
990
|
+
httpUrl: "请求地址",
|
|
991
|
+
httpUrlRequired: "请输入请求地址",
|
|
992
|
+
httpMethod: "请求方法",
|
|
993
|
+
httpHeaders: "请求头",
|
|
994
|
+
headersMaskHint: "出于安全,已存请求头的值以 ******** 显示;不修改则原样保存生效",
|
|
995
|
+
httpBody: "请求体",
|
|
996
|
+
successStatuses: "成功状态码",
|
|
997
|
+
successStatusesPlaceholder: "如 200,201;留空 = 2xx 即成功",
|
|
998
|
+
sqlText: "SQL 语句",
|
|
999
|
+
sqlRequired: "请输入 SQL 语句"
|
|
1000
|
+
},
|
|
1001
|
+
log: {
|
|
1002
|
+
title: "执行记录",
|
|
1003
|
+
job: "任务",
|
|
1004
|
+
jobPlaceholder: "选择任务",
|
|
1005
|
+
fireMode: "触发来源",
|
|
1006
|
+
fireModeSchedule: "调度",
|
|
1007
|
+
fireModeManual: "手动",
|
|
1008
|
+
fireModeBackfill: "补跑",
|
|
1009
|
+
fireModeMisfireSkip: "错过跳过",
|
|
1010
|
+
scheduledTime: "计划时刻",
|
|
1011
|
+
startTime: "开始时间",
|
|
1012
|
+
elapsed: "耗时",
|
|
1013
|
+
runStatus: "状态",
|
|
1014
|
+
running: "运行中",
|
|
1015
|
+
success: "成功",
|
|
1016
|
+
failed: "失败",
|
|
1017
|
+
timeout: "超时",
|
|
1018
|
+
cancelled: "已取消",
|
|
1019
|
+
skipped: "已跳过",
|
|
1020
|
+
retryIndex: "重试次",
|
|
1021
|
+
node: "节点",
|
|
1022
|
+
kill: "终止",
|
|
1023
|
+
killConfirm: "确定终止任务「{name}」的这次执行?终止旗标写入后,目标节点最迟数秒内停止。",
|
|
1024
|
+
killed: "已请求终止",
|
|
1025
|
+
clear: "清空记录",
|
|
1026
|
+
clearTitle: "清空执行记录",
|
|
1027
|
+
clearAll: "全部记录",
|
|
1028
|
+
beforeDays: "{n} 天以前的记录",
|
|
1029
|
+
clearHint: "运行中的记录一律保留;此为硬删除,不可恢复。",
|
|
1030
|
+
cleared: "已清理 {n} 条记录",
|
|
1031
|
+
message: "处理器输出",
|
|
1032
|
+
error: "异常信息",
|
|
1033
|
+
attempts: "同一次触发的各次尝试",
|
|
1034
|
+
firstTry: "首次",
|
|
1035
|
+
retryN: "第 {n} 次重试"
|
|
1036
|
+
},
|
|
1037
|
+
monitor: {
|
|
1038
|
+
title: "任务监控",
|
|
1039
|
+
todaySuccess: "今日成功",
|
|
1040
|
+
todayFailed: "今日失败",
|
|
1041
|
+
running: "运行中",
|
|
1042
|
+
totalJobs: "任务总数",
|
|
1043
|
+
trendTitle: "近 14 日成败趋势",
|
|
1044
|
+
trendSuccess: "成功",
|
|
1045
|
+
trendFailed: "失败",
|
|
1046
|
+
upcomingTitle: "即将执行",
|
|
1047
|
+
upcomingJob: "任务",
|
|
1048
|
+
upcomingTime: "时刻",
|
|
1049
|
+
nodesTitle: "集群节点",
|
|
1050
|
+
nodeName: "节点",
|
|
1051
|
+
role: "角色",
|
|
1052
|
+
leader: "leader",
|
|
1053
|
+
standby: "standby",
|
|
1054
|
+
lastHeartbeat: "最后心跳",
|
|
1055
|
+
workerId: "WorkerId",
|
|
1056
|
+
pid: "PID",
|
|
1057
|
+
justNow: "刚刚",
|
|
1058
|
+
secondsAgo: "{n} 秒前",
|
|
1059
|
+
minutesAgo: "{n} 分钟前",
|
|
1060
|
+
hoursAgo: "{n} 小时前"
|
|
1061
|
+
},
|
|
1062
|
+
cron: {
|
|
1063
|
+
tabSecond: "秒",
|
|
1064
|
+
tabMinute: "分",
|
|
1065
|
+
tabHour: "时",
|
|
1066
|
+
tabDay: "日",
|
|
1067
|
+
tabMonth: "月",
|
|
1068
|
+
tabWeek: "周",
|
|
1069
|
+
tabExpression: "表达式",
|
|
1070
|
+
every: "每",
|
|
1071
|
+
any: "不指定(?)",
|
|
1072
|
+
range: "区间",
|
|
1073
|
+
to: "到",
|
|
1074
|
+
step: "步长",
|
|
1075
|
+
stepFrom: "从",
|
|
1076
|
+
stepEvery: "起,每",
|
|
1077
|
+
list: "指定值",
|
|
1078
|
+
lastDay: "月末(L)",
|
|
1079
|
+
lastDayHint: "0 = 月末当天,n = 月末前 n 天(L-n)",
|
|
1080
|
+
nearestWeekday: "最近工作日(nW)",
|
|
1081
|
+
nearestWeekdayHint: "距该日最近的工作日,不跨月",
|
|
1082
|
+
lastWeekday: "月末工作日(LW)",
|
|
1083
|
+
lastOfWeek: "最后一个周几(nL)",
|
|
1084
|
+
nth: "第 m 个周几(n#m)",
|
|
1085
|
+
nthPrefix: "第",
|
|
1086
|
+
nthInfix: "个",
|
|
1087
|
+
sun: "周日",
|
|
1088
|
+
mon: "周一",
|
|
1089
|
+
tue: "周二",
|
|
1090
|
+
wed: "周三",
|
|
1091
|
+
thu: "周四",
|
|
1092
|
+
fri: "周五",
|
|
1093
|
+
sat: "周六",
|
|
1094
|
+
expressionPlaceholder: "如 0 0 2 * * ?(秒 分 时 日 月 周)",
|
|
1095
|
+
expressionHint: "支持 5 段(自动补秒位)或 6 段;日与周不能同时受限,其一须为 * 或 ?",
|
|
1096
|
+
normalized: "归一化",
|
|
1097
|
+
nextRuns: "未来 {n} 次",
|
|
1098
|
+
noUpcoming: "已无未来执行时刻",
|
|
1099
|
+
everySecondWarning: "该表达式等效每秒执行,请确认这是有意为之"
|
|
1100
|
+
}
|
|
1101
|
+
},
|
|
1102
|
+
cache: {
|
|
1103
|
+
authTitle: "权限缓存",
|
|
1104
|
+
authDesc: "清除全部用户的权限码与数据范围缓存。直接改库或排障后,强制下次请求按最新授权重算。",
|
|
1105
|
+
authConfirm: "确定清除全部用户的权限/数据范围缓存?下次请求将重新计算授权。",
|
|
1106
|
+
dictTitle: "字典缓存",
|
|
1107
|
+
dictDesc: "清除全部字典类型的字典项缓存。直接改库后,强制下拉数据源按最新字典重建。",
|
|
1108
|
+
dictConfirm: "确定清除全部字典项缓存?",
|
|
1109
|
+
configTitle: "配置缓存",
|
|
1110
|
+
configDesc: "清除全部系统配置项的读穿透缓存。直接改库后,强制配置值按最新库表重读。",
|
|
1111
|
+
configConfirm: "确定清除全部系统配置缓存?",
|
|
1112
|
+
portalTitle: "门户菜单缓存",
|
|
1113
|
+
portalDesc: "递增门户代际,令所有用户的模块/菜单树缓存整体失效,下次进入重建。",
|
|
1114
|
+
portalConfirm: "确定重建门户菜单缓存?所有用户的菜单将在下次请求时重算。",
|
|
1115
|
+
execute: "执行",
|
|
1116
|
+
flushed: "已清除 {n} 项缓存",
|
|
1117
|
+
portalDone: "已重建门户菜单缓存",
|
|
1118
|
+
note: "仅提供定向失效,不浏览键、不读取值——缓存中含明文验证码/一次性令牌、键中内嵌手机号/IP。正常的授权变更已自动失效,此页用于直接改库等旁路场景的手动刷新。"
|
|
1119
|
+
},
|
|
1120
|
+
profile: {
|
|
1121
|
+
title: "个人资料",
|
|
1122
|
+
account: "账号",
|
|
1123
|
+
name: "姓名",
|
|
1124
|
+
org: "机构",
|
|
1125
|
+
position: "职位",
|
|
1126
|
+
nickname: "昵称",
|
|
1127
|
+
gender: "性别",
|
|
1128
|
+
phone: "手机号",
|
|
1129
|
+
email: "邮箱",
|
|
1130
|
+
avatar: "头像",
|
|
1131
|
+
avatarUploading: "上传中…",
|
|
1132
|
+
phoneInvalid: "手机号格式不正确",
|
|
1133
|
+
emailInvalid: "邮箱格式不正确",
|
|
1134
|
+
saved: "资料已更新"
|
|
1135
|
+
},
|
|
1136
|
+
personalSecurity: {
|
|
1137
|
+
title: "账号安全",
|
|
1138
|
+
// 全员可见:只说用户能做什么,不指向后台配置路径。
|
|
1139
|
+
hint: "在此绑定或管理身份验证器(TOTP),用于登录二次验证。",
|
|
1140
|
+
// 仅管理员可见(超管 / 能进系统配置):指向「安全策略」开关,普通用户无需也不应看到。
|
|
1141
|
+
adminHint: "若绑定失败或登录不要求二次验证,请到「系统配置 → 安全策略」确认已开启「启用动态口令」。",
|
|
1142
|
+
bindDesc: "使用账号与当前密码完成自助绑定;也可使用恢复码解除绑定后重新绑定。",
|
|
1143
|
+
setupAuthenticator: "设置身份验证器",
|
|
1144
|
+
useRecovery: "使用恢复码",
|
|
1145
|
+
note: "自愿绑定请从本页进入。若账号被要求启用二次验证且尚未绑定,登录账密通过后会弹出引导。"
|
|
1146
|
+
},
|
|
1147
|
+
changePassword: {
|
|
1148
|
+
title: "修改密码",
|
|
1149
|
+
oldPassword: "原密码",
|
|
1150
|
+
newPassword: "新密码",
|
|
1151
|
+
confirmPassword: "确认新密码",
|
|
1152
|
+
oldRequired: "请输入原密码",
|
|
1153
|
+
newRequired: "请输入新密码",
|
|
1154
|
+
confirmRequired: "请再次输入新密码",
|
|
1155
|
+
mismatch: "两次输入的新密码不一致",
|
|
1156
|
+
changed: "密码已修改,请重新登录",
|
|
1157
|
+
forcedHint: "首次登录或密码被重置,请先修改密码后再使用系统。",
|
|
1158
|
+
strength: { label: "密码强度", weak: "弱", fair: "中", strong: "强" },
|
|
1159
|
+
rules: {
|
|
1160
|
+
minLength: "至少 {n} 位",
|
|
1161
|
+
upper: "包含大写字母",
|
|
1162
|
+
lower: "包含小写字母",
|
|
1163
|
+
digit: "包含数字",
|
|
1164
|
+
special: "包含特殊字符",
|
|
1165
|
+
specialOptional: "包含特殊字符(可选,更安全)"
|
|
1166
|
+
}
|
|
1167
|
+
},
|
|
1168
|
+
// ── 后端错误码 msgKey → 文案 ──────────────────────────────
|
|
1169
|
+
error: {
|
|
1170
|
+
_fallback: "操作失败,请稍后重试",
|
|
1171
|
+
// 前端侧错误(不来自后端错误码):请求被超时闸掐断或主动取消
|
|
1172
|
+
network: {
|
|
1173
|
+
timeout: "请求超时,请检查网络后重试",
|
|
1174
|
+
aborted: "请求已取消"
|
|
1175
|
+
},
|
|
1176
|
+
auth: {
|
|
1177
|
+
passwordWrong: "账号或密码错误",
|
|
1178
|
+
captchaExpired: "验证码已过期",
|
|
1179
|
+
captchaWrong: "验证码错误",
|
|
1180
|
+
accountLocked: "账号已锁定,请稍后再试",
|
|
1181
|
+
accountDisabled: "账号已停用",
|
|
1182
|
+
tokenInvalid: "登录状态无效,请重新登录",
|
|
1183
|
+
refreshTokenInvalid: "登录已过期,请重新登录",
|
|
1184
|
+
tooManyRequests: "操作过于频繁,请稍后再试",
|
|
1185
|
+
smsCodeRequired: "请输入短信验证码",
|
|
1186
|
+
smsCodeWrong: "短信验证码错误",
|
|
1187
|
+
smsCodeExpired: "短信验证码错误或已失效,请重新获取",
|
|
1188
|
+
smsLoginDisabled: "短信验证码登录未启用",
|
|
1189
|
+
oauthProviderDisabled: "该第三方登录方式未启用或不存在",
|
|
1190
|
+
oauthStateInvalid: "登录会话已失效,请重新发起第三方登录",
|
|
1191
|
+
oauthExchangeFailed: "第三方登录换取身份失败,请重试",
|
|
1192
|
+
oauthAccountNotBound: "该第三方账号尚未绑定系统账号,请先登录本系统账号以完成绑定",
|
|
1193
|
+
oauthAlreadyBound: "该第三方账号已被绑定,或当前账号已绑定同一登录方式",
|
|
1194
|
+
totpRequired: "请输入动态口令完成二次验证",
|
|
1195
|
+
totpWrong: "动态口令错误",
|
|
1196
|
+
totpNotBound: "尚未绑定动态口令,请先完成绑定",
|
|
1197
|
+
bindInviteInvalid: "绑定无效或已过期,请重新开始设置",
|
|
1198
|
+
mfaBindInvalid: "绑定无效或已过期,请重新开始设置",
|
|
1199
|
+
recoveryCodeInvalid: "恢复码无效或已使用",
|
|
1200
|
+
csrfInvalid: "请求校验失败,请刷新页面后重试",
|
|
1201
|
+
reauthRequired: "此操作需要再次验证身份",
|
|
1202
|
+
mfaBindPasswordRequired: "绑定动态口令前请先验证当前密码",
|
|
1203
|
+
apiKeyInvalid: "API Key 缺失或无效"
|
|
1204
|
+
},
|
|
1205
|
+
perm: {
|
|
1206
|
+
denied: "无权限访问",
|
|
1207
|
+
demoReadOnly: "当前为演示环境,禁止修改操作",
|
|
1208
|
+
superAdminRequired: "该操作仅限超级管理员执行"
|
|
1209
|
+
},
|
|
1210
|
+
user: {
|
|
1211
|
+
notFound: "用户不存在",
|
|
1212
|
+
accountExists: "账号已存在",
|
|
1213
|
+
superAdminProtected: "超级管理员受保护,禁止此操作",
|
|
1214
|
+
passwordTooWeak: "新密码不满足密码复杂度要求",
|
|
1215
|
+
passwordReused: "新密码不能与当前或最近使用过的密码相同",
|
|
1216
|
+
outOfDataScope: "目标用户超出当前数据范围",
|
|
1217
|
+
avatarUrlInvalid: "头像地址不合法",
|
|
1218
|
+
cannotOperateSelf: "不能对自己执行此操作"
|
|
1219
|
+
},
|
|
1220
|
+
role: {
|
|
1221
|
+
notFound: "角色不存在",
|
|
1222
|
+
codeExists: "角色编码已存在",
|
|
1223
|
+
notDelegatable: "目标角色不可转授"
|
|
1224
|
+
},
|
|
1225
|
+
org: {
|
|
1226
|
+
notFound: "机构不存在",
|
|
1227
|
+
hasChildren: "存在子机构,不可删除",
|
|
1228
|
+
invalidParent: "上级机构无效",
|
|
1229
|
+
codeExists: "机构编码已存在",
|
|
1230
|
+
hasUsers: "机构下仍有用户,不可删除",
|
|
1231
|
+
outOfScope: "目标机构超出当前数据范围"
|
|
1232
|
+
},
|
|
1233
|
+
position: {
|
|
1234
|
+
notFound: "职位不存在",
|
|
1235
|
+
codeExists: "职位编码已存在",
|
|
1236
|
+
hasUsers: "该职位下仍有用户,不可删除"
|
|
1237
|
+
},
|
|
1238
|
+
module: {
|
|
1239
|
+
notFound: "应用不存在",
|
|
1240
|
+
codeExists: "应用编码已存在",
|
|
1241
|
+
protected: "内置应用受保护,禁止此操作",
|
|
1242
|
+
accessDenied: "无该应用访问权限",
|
|
1243
|
+
hasMenus: "应用下仍有挂靠菜单,请先迁移或删除后再删应用"
|
|
1244
|
+
},
|
|
1245
|
+
menu: {
|
|
1246
|
+
notFound: "菜单不存在",
|
|
1247
|
+
hasChildren: "存在子节点,不可删除",
|
|
1248
|
+
invalidParent: "上级菜单无效(不能指向自身或其子节点)"
|
|
1249
|
+
},
|
|
1250
|
+
session: { notFound: "会话不存在或已下线" },
|
|
1251
|
+
dict: {
|
|
1252
|
+
typeNotFound: "字典类型不存在",
|
|
1253
|
+
typeCodeExists: "字典类型编码已存在",
|
|
1254
|
+
itemNotFound: "字典项不存在",
|
|
1255
|
+
seedProtected: "种子数据受保护,不可删除",
|
|
1256
|
+
itemValueExists: "字典项值在该类型下已存在"
|
|
1257
|
+
},
|
|
1258
|
+
config: { notFound: "配置不存在", keyExists: "配置键已存在" },
|
|
1259
|
+
notice: {
|
|
1260
|
+
notFound: "通知不存在",
|
|
1261
|
+
receiverRequired: "定向发布必须指定至少一个接收对象",
|
|
1262
|
+
receiverNotFound: "接收对象不存在或已停用",
|
|
1263
|
+
actionInvalid: "动作列表不合法:文案不能为空,方法只能是 GET/POST,地址须是单个 / 开头的站内路径,最多 5 条"
|
|
1264
|
+
},
|
|
1265
|
+
file: {
|
|
1266
|
+
empty: "文件为空",
|
|
1267
|
+
tooLarge: "文件超出大小限制",
|
|
1268
|
+
extNotAllowed: "不支持的文件类型",
|
|
1269
|
+
notFound: "文件不存在",
|
|
1270
|
+
chunkMissing: "分片缺失,请重试上传",
|
|
1271
|
+
chunkHashMismatch: "文件校验失败,请重新上传"
|
|
1272
|
+
},
|
|
1273
|
+
excel: {
|
|
1274
|
+
providerMissing: "未安装 Excel 支持包,请安装 SmartAdmin.Excel 并调用 AddSmartAdminExcel()"
|
|
1275
|
+
},
|
|
1276
|
+
import: {
|
|
1277
|
+
fileEmpty: "导入文件为空",
|
|
1278
|
+
rowLimitExceeded: "导入行数超过上限",
|
|
1279
|
+
columnMissing: "必填列未映射",
|
|
1280
|
+
cellRequired: "该单元格为必填项",
|
|
1281
|
+
cellDictInvalid: "字典值无效",
|
|
1282
|
+
cellRefNotFound: "引用的数据不存在",
|
|
1283
|
+
cellFormatInvalid: "单元格格式不正确",
|
|
1284
|
+
duplicateInFile: "业务键在本文件内重复",
|
|
1285
|
+
duplicateInDb: "业务键在库中已存在",
|
|
1286
|
+
orgOutOfScope: "机构不在当前数据范围内"
|
|
1287
|
+
},
|
|
1288
|
+
export: {
|
|
1289
|
+
tooManyRows: "导出结果超过行数上限,请先收窄筛选条件",
|
|
1290
|
+
columnInvalid: "请求导出的列无效"
|
|
1291
|
+
},
|
|
1292
|
+
job: {
|
|
1293
|
+
notFound: "任务不存在",
|
|
1294
|
+
codeExists: "任务编码已存在",
|
|
1295
|
+
cronInvalid: "cron 表达式不合法",
|
|
1296
|
+
triggerInvalid: "触发配置不合法",
|
|
1297
|
+
handlerNotFound: "处理器未注册",
|
|
1298
|
+
alreadyRunning: "上次执行尚未结束",
|
|
1299
|
+
runNotAlive: "该执行记录不在运行中",
|
|
1300
|
+
sqlDisabled: "SQL 任务未启用",
|
|
1301
|
+
httpUrlBlocked: "目标地址被安全策略拒绝",
|
|
1302
|
+
statusConflict: "任务状态不允许该操作",
|
|
1303
|
+
propsInvalid: "任务参数缺失或不合法",
|
|
1304
|
+
logNotFound: "执行记录不存在",
|
|
1305
|
+
runLimitReached: "运行中任务数已达上限,请稍后再试",
|
|
1306
|
+
protected: "内置任务受保护,禁止删除"
|
|
1307
|
+
},
|
|
1308
|
+
recycle: {
|
|
1309
|
+
notFound: "回收站中未找到该记录",
|
|
1310
|
+
uniqueConflict: "恢复失败:编码/账号已被新记录占用",
|
|
1311
|
+
invalidType: "不支持的回收站类型"
|
|
1312
|
+
},
|
|
1313
|
+
request: {
|
|
1314
|
+
pageSizeExceeded: "每页条数超过上限 {max},请调小分页或使用导出"
|
|
1315
|
+
},
|
|
1316
|
+
system: { internal: "服务器内部错误" }
|
|
1317
|
+
},
|
|
1318
|
+
// 回收站
|
|
1319
|
+
recycle: {
|
|
1320
|
+
title: "回收站",
|
|
1321
|
+
name: "名称",
|
|
1322
|
+
code: "编码",
|
|
1323
|
+
deletedAt: "删除时间",
|
|
1324
|
+
restore: "恢复",
|
|
1325
|
+
purge: "彻底删除",
|
|
1326
|
+
restoreConfirm: "确定恢复「{name}」?",
|
|
1327
|
+
purgeConfirm: "确定彻底删除「{name}」?数据将无法恢复。",
|
|
1328
|
+
restored: "已恢复",
|
|
1329
|
+
purged: "已彻底删除",
|
|
1330
|
+
empty: "回收站为空",
|
|
1331
|
+
tabs: {
|
|
1332
|
+
user: "用户",
|
|
1333
|
+
role: "角色",
|
|
1334
|
+
org: "机构",
|
|
1335
|
+
position: "岗位",
|
|
1336
|
+
module: "模块",
|
|
1337
|
+
config: "配置",
|
|
1338
|
+
dict: "字典",
|
|
1339
|
+
menu: "菜单",
|
|
1340
|
+
job: "定时任务"
|
|
1341
|
+
}
|
|
1342
|
+
},
|
|
1343
|
+
// 用户导入导出:列标题 + 文件名(与 UserImportProfile / UserExportProfile 的列一一对应)
|
|
1344
|
+
userExport: {
|
|
1345
|
+
account: "登录账号",
|
|
1346
|
+
name: "姓名",
|
|
1347
|
+
nickname: "昵称",
|
|
1348
|
+
phone: "手机号",
|
|
1349
|
+
email: "邮箱",
|
|
1350
|
+
gender: "性别",
|
|
1351
|
+
orgName: "所属机构",
|
|
1352
|
+
positionName: "职位",
|
|
1353
|
+
directorName: "直属主管",
|
|
1354
|
+
enabled: "启用状态",
|
|
1355
|
+
superAdmin: "超级管理员",
|
|
1356
|
+
createTime: "创建时间",
|
|
1357
|
+
fileName: "用户导出.xlsx",
|
|
1358
|
+
importTemplateName: "用户导入模板.xlsx",
|
|
1359
|
+
errorReportName: "用户导入错误报告.xlsx"
|
|
1360
|
+
},
|
|
1361
|
+
logOp: {
|
|
1362
|
+
fileName: "操作日志导出.xlsx"
|
|
1363
|
+
}
|
|
1364
|
+
};
|
|
1365
|
+
export {
|
|
1366
|
+
e as default
|
|
1367
|
+
};
|
|
1368
|
+
//# sourceMappingURL=zh-CN.js.map
|