From 9ab109b9ee96e7ff2bf2b935a044aee5842a3ddc Mon Sep 17 00:00:00 2001 From: doum <doum> Date: 星期日, 28 九月 2025 10:08:09 +0800 Subject: [PATCH] 最新版本541200007 --- server/system_service/src/main/java/com/doumee/biz/system/impl/SystemMenuBizImpl.java | 20 ++++++++++++++++++++ server/system_service/src/main/java/com/doumee/dao/system/vo/SystemMenuNodeVO.java | 2 ++ server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Category.java | 1 + admin/src/main.js | 28 ++++++++++++++++++++++++---- admin/src/store/index.js | 3 ++- 5 files changed, 49 insertions(+), 5 deletions(-) diff --git a/admin/src/main.js b/admin/src/main.js index 83b2a5e..a98f12b 100644 --- a/admin/src/main.js +++ b/admin/src/main.js @@ -45,10 +45,16 @@ return } await this.initRoutes() + }, + async topMenuCurrent () { + if (this.topMenuCurrent == null) { + return + } + await this.chagneRoutes() } }, methods: { - ...mapMutations(['switchCollapseMenu', 'setHomePage', 'setTopMenuCurrent', 'setTopMenuCurrent']), + ...mapMutations(['switchCollapseMenu', 'setHomePage', 'setTopMenuCurrent', 'setTopMenuCurrent','cleartagsview']), // 鍒濆鍖栨湰鍦伴厤缃� initLocalConfig () { // 鑿滃崟鐘舵�侀厤缃� @@ -79,9 +85,13 @@ }) storeTopMenus.push.apply(storeTopMenus, topList) var topCurrent = null + var tlist =[] topList.forEach(item => { - if (item.linkType === 0 && topCurrent == null) { - topCurrent = item + if (item.linkType === 0 ) { + if (topCurrent == null) { + topCurrent = item + } + tlist.push(...item.children) } }) this.setTopMenuCurrent(topCurrent) @@ -96,7 +106,7 @@ console.log('menus', this.menuData.list) storeMenus.push.apply(storeMenus, this.menuData.list) // 娣诲姞璺敱 - this.__addRouters(storeMenus) + this.__addRouters(tlist) // 404 router.addRoute({ path: '*', @@ -120,6 +130,16 @@ this.loading = false }) }, + async chagneRoutes () { + // 閲嶇疆鑿滃崟 + this.cleartagsview('/index') + console.log('menus', this.menuData.list) + // 娣诲姞璺敱 + // this.__addRouters(this.menuData.list) + if(this.topMenuCurrent.homeUrl){ + await this.$router.push({path: this.topMenuCurrent.homeUrl, query: {}}) + } + }, // 鏂板缓璺敱 __addRouters (routes, parents = []) { if (routes == null || routes.length === 0) { diff --git a/admin/src/store/index.js b/admin/src/store/index.js index f76eee9..eae17b4 100644 --- a/admin/src/store/index.js +++ b/admin/src/store/index.js @@ -1,5 +1,6 @@ import Vue from 'vue' import Vuex from 'vuex' +import router from '../router' Vue.use(Vuex) const state = { @@ -73,7 +74,7 @@ }, // 閲嶇疆鑿滃崟 resetMenus: (state) => { - state.topMenuId=null; + state.topMenuId=null state.menuData.list = [] }, // tags diff --git a/server/system_service/src/main/java/com/doumee/biz/system/impl/SystemMenuBizImpl.java b/server/system_service/src/main/java/com/doumee/biz/system/impl/SystemMenuBizImpl.java index edf8379..9cb6752 100644 --- a/server/system_service/src/main/java/com/doumee/biz/system/impl/SystemMenuBizImpl.java +++ b/server/system_service/src/main/java/com/doumee/biz/system/impl/SystemMenuBizImpl.java @@ -139,6 +139,7 @@ nodeVO.setType(menu.getType()); nodeVO.setLinkType(menu.getLinkType()); nodeVO.setIcon(menu.getIcon()); +// nodeVO.setHomeUrl("/index");//榛樿宸ヤ綔鍙� nodeVO.setChildren(new ArrayList<>()); rootNodes.add(nodeVO); } @@ -146,10 +147,29 @@ menus.removeIf(menu -> menu.getParentId() == null); for (SystemMenuNodeVO child : rootNodes) { this.fillChildren(child, menus); + SystemMenuNodeVO homeMenus = getHomeUrlByChild(child); + if(homeMenus!=null && homeMenus.getUrl() != null){ + child.setHomeUrl(homeMenus.getUrl()); + } } return rootNodes; } + private SystemMenuNodeVO getHomeUrlByChild( SystemMenuNodeVO child) { + if(child.getChildren()==null || child.getChildren().size() ==0){ + return null; + } + for(SystemMenuNodeVO tt : child.getChildren()){ + if(tt.getChildren()==null || tt.getChildren().size() ==0){ + return tt; + }else{ + SystemMenuNodeVO ttt = getHomeUrlByChild(tt); + return ttt; + } + } + return null; + } + @Override public void deleteById(Integer id) { List<Integer> ids = systemMenuService.findChildren(id); diff --git a/server/system_service/src/main/java/com/doumee/dao/system/vo/SystemMenuNodeVO.java b/server/system_service/src/main/java/com/doumee/dao/system/vo/SystemMenuNodeVO.java index 9532faf..6eeb48a 100644 --- a/server/system_service/src/main/java/com/doumee/dao/system/vo/SystemMenuNodeVO.java +++ b/server/system_service/src/main/java/com/doumee/dao/system/vo/SystemMenuNodeVO.java @@ -33,6 +33,8 @@ @ApiModelProperty(value = "鑿滃崟鍦板潃") private String url; + @ApiModelProperty(value = "绗竴涓粯璁ら〉鍦板潃") + private String homeUrl; @ApiModelProperty(value = "瀛愯彍鍗�") private List<SystemMenuNodeVO> children; diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Category.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Category.java index f007330..1710745 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Category.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Category.java @@ -93,6 +93,7 @@ @ExcelColumn(name="缁勫悎鍚嶇О",index = 3,width = 20) private String groupName; @ApiModelProperty(value = "瀹屾暣鍥剧墖鍦板潃 ") + @TableField(exist = false) private String imgurlFull; @ApiModelProperty(value = "瀛愰泦鍒嗙被") -- Gitblit v1.9.3