diff --git a/backend/src/main/java/io/dataease/auth/service/impl/DynamicMenuServiceImpl.java b/backend/src/main/java/io/dataease/auth/service/impl/DynamicMenuServiceImpl.java index 029c8e7aaf..bb33a2cc6c 100644 --- a/backend/src/main/java/io/dataease/auth/service/impl/DynamicMenuServiceImpl.java +++ b/backend/src/main/java/io/dataease/auth/service/impl/DynamicMenuServiceImpl.java @@ -7,6 +7,7 @@ import io.dataease.base.domain.SysMenu; import io.dataease.base.domain.SysMenuExample; import io.dataease.base.mapper.SysMenuMapper; import io.dataease.base.mapper.ext.ExtPluginSysMenuMapper; +import io.dataease.base.mapper.ext.ExtSysMenuMapper; import io.dataease.plugins.common.dto.PluginSysMenu; import io.dataease.plugins.util.PluginUtils; import org.apache.commons.collections4.CollectionUtils; @@ -30,12 +31,16 @@ public class DynamicMenuServiceImpl implements DynamicMenuService { @Resource private ExtPluginSysMenuMapper extPluginSysMenuMapper; + @Resource + private ExtSysMenuMapper extSysMenuMapper; + @Override public List load(String userId) { - SysMenuExample sysMenuExample = new SysMenuExample(); - sysMenuExample.createCriteria().andTypeLessThanOrEqualTo(1); - sysMenuExample.setOrderByClause(" menu_sort "); - List sysMenus = sysMenuMapper.selectByExample(sysMenuExample); +// SysMenuExample sysMenuExample = new SysMenuExample(); +// sysMenuExample.createCriteria().andTypeLessThanOrEqualTo(1); +// sysMenuExample.setOrderByClause(" menu_sort "); +// List sysMenus = sysMenuMapper.selectByExample(sysMenuExample); + List sysMenus = extSysMenuMapper.querySysMenu(); List dynamicMenuDtos = sysMenus.stream().map(this::convert).collect(Collectors.toList()); //增加插件中的菜单 List pluginSysMenus = PluginUtils.pluginMenus(); diff --git a/backend/src/main/java/io/dataease/base/mapper/ext/ExtSysMenuMapper.java b/backend/src/main/java/io/dataease/base/mapper/ext/ExtSysMenuMapper.java index 147e44e607..3620bab9e8 100644 --- a/backend/src/main/java/io/dataease/base/mapper/ext/ExtSysMenuMapper.java +++ b/backend/src/main/java/io/dataease/base/mapper/ext/ExtSysMenuMapper.java @@ -1,5 +1,6 @@ package io.dataease.base.mapper.ext; +import io.dataease.base.domain.SysMenu; import io.dataease.base.mapper.ext.query.GridExample; import io.dataease.controller.sys.request.SimpleTreeNode; @@ -10,4 +11,6 @@ public interface ExtSysMenuMapper { List allNodes(); List nodesByExample(GridExample example); + + List querySysMenu(); } diff --git a/backend/src/main/java/io/dataease/base/mapper/ext/ExtSysMenuMapper.xml b/backend/src/main/java/io/dataease/base/mapper/ext/ExtSysMenuMapper.xml index 56e79e0b8a..1d65075622 100644 --- a/backend/src/main/java/io/dataease/base/mapper/ext/ExtSysMenuMapper.xml +++ b/backend/src/main/java/io/dataease/base/mapper/ext/ExtSysMenuMapper.xml @@ -7,6 +7,8 @@ + + @@ -19,4 +21,27 @@ + + diff --git a/backend/src/main/resources/db/migration/V31__1.7.sql b/backend/src/main/resources/db/migration/V31__1.7.sql index a2289fdb73..1828fc902c 100644 --- a/backend/src/main/resources/db/migration/V31__1.7.sql +++ b/backend/src/main/resources/db/migration/V31__1.7.sql @@ -1 +1,2 @@ INSERT INTO `sys_menu` (`menu_id`, `pid`, `sub_count`, `type`, `title`, `name`, `component`, `menu_sort`, `icon`, `path`, `i_frame`, `cache`, `hidden`, `permission`, `create_by`, `update_by`, `create_time`, `update_time`) VALUES (61, 0, 0, 1, '首页', 'wizard', 'wizard/index', 0, '', '/wizard', b'1', b'0', b'0', NULL, NULL, NULL, NULL, 1614915491036); +INSERT INTO `system_parameter` (`param_key`, `param_value`, `type`, `sort`) VALUES ('ui.openHomePage', 'true', 'boolean', 13); diff --git a/frontend/src/components/canvas/components/Editor/EditBar.vue b/frontend/src/components/canvas/components/Editor/EditBar.vue index c10fc98aac..86938d1bf5 100644 --- a/frontend/src/components/canvas/components/Editor/EditBar.vue +++ b/frontend/src/components/canvas/components/Editor/EditBar.vue @@ -207,6 +207,9 @@ export default { }, linkJumpSet() { this.$emit('linkJumpSet') + }, + goFile() { + this.$refs.files.click() } } } diff --git a/frontend/src/lang/en.js b/frontend/src/lang/en.js index 1ff806555e..48b8e448d2 100644 --- a/frontend/src/lang/en.js +++ b/frontend/src/lang/en.js @@ -461,7 +461,8 @@ export default { sysParams: { display: 'Display Setting', ldap: 'LDAP Setting', - oidc: 'OIDC Setting' + oidc: 'OIDC Setting', + theme: 'Theme Setting' }, license: { i18n_no_license_record: 'No License Record', @@ -1511,7 +1512,9 @@ export default { themeLight: 'Light', themeDark: 'Dark', - themeCustom: 'Custom' + themeCustom: 'Custom', + openHomePage: 'Show Home Page' + }, auth: { authConfig: 'Auth Config', @@ -1763,7 +1766,8 @@ export default { cweek: 'This Week', cmonth: 'This Month', cquarter: 'This Quarter', - cyear: 'This Year' + cyear: 'This Year', + openHomePage: 'Show Home Page' }, dynamic_year: { fix: 'Fixed Year', diff --git a/frontend/src/lang/tw.js b/frontend/src/lang/tw.js index 65d61cd2c0..26f97cffc9 100644 --- a/frontend/src/lang/tw.js +++ b/frontend/src/lang/tw.js @@ -461,7 +461,8 @@ export default { sysParams: { display: '顯示設置', ldap: 'LDAP設置', - oidc: 'OIDC設置' + oidc: 'OIDC設置', + theme: '主题设置' }, license: { i18n_no_license_record: '沒有 License 記錄', @@ -1521,7 +1522,8 @@ export default { themeLight: '淺色', themeDark: '深色', - themeCustom: '自定義' + themeCustom: '自定義', + openHomePage: '显示首页' }, auth: { diff --git a/frontend/src/lang/zh.js b/frontend/src/lang/zh.js index 7b3081d7f1..818867e519 100644 --- a/frontend/src/lang/zh.js +++ b/frontend/src/lang/zh.js @@ -1530,7 +1530,8 @@ export default { themeLight: '浅色', themeDark: '深色', - themeCustom: '自定义' + themeCustom: '自定义', + openHomePage: '显示首页' }, auth: { diff --git a/frontend/src/layout/index.vue b/frontend/src/layout/index.vue index 7cf600c321..6b74d3ca00 100644 --- a/frontend/src/layout/index.vue +++ b/frontend/src/layout/index.vue @@ -114,6 +114,8 @@ export default { @import "~@/styles/variables.scss"; .app-wrapper { + min-width: 1000px!important; + min-height: 600px!important; @include clearfix; position: relative; height: 100%; diff --git a/frontend/src/permission.js b/frontend/src/permission.js index 04a8df7b17..c1d473f23b 100644 --- a/frontend/src/permission.js +++ b/frontend/src/permission.js @@ -16,6 +16,7 @@ import { import { isMobile } from '@/utils/index' +import Layout from '@/layout/index' // import bus from './utils/bus' NProgress.configure({ @@ -97,6 +98,23 @@ export const loadMenus = (next, to) => { const datas = res.data const filterDatas = filterRouter(datas) const asyncRouter = filterAsyncRouter(filterDatas) + // 如果包含首页 则默认页面是 首页 否则默认页面是仪表板页面 + if (JSON.stringify(datas).indexOf('wizard') > -1) { + asyncRouter.push({ + path: '/', + component: Layout, + redirect: '/wizard/index', + hidden: true + }) + } else { + asyncRouter.push({ + path: '/', + component: Layout, + redirect: '/panel/index', + hidden: true + }) + } + asyncRouter.push({ path: '*', redirect: '/404', diff --git a/frontend/src/router/index.js b/frontend/src/router/index.js index 867b26b88b..066503b320 100644 --- a/frontend/src/router/index.js +++ b/frontend/src/router/index.js @@ -91,12 +91,6 @@ export const constantRoutes = [ path: '/previewFullScreen', component: () => import('@/components/canvas/components/Editor/PreviewFullScreen'), hidden: true - }, - { - path: '/', - component: Layout, - redirect: '/wizard/index', - hidden: true } // {