Browse Source

全部菜单+显示菜单+api新增刷新问题处理+logo

master
安虹睿 2 years ago
parent
commit
48f9dcd905
  1. 6
      Code/Fe/src/components/addEditFromApiPop/index.vue
  2. 5
      Code/Fe/src/layout/components/Sidebar/Logo.vue
  3. 20
      Code/Fe/src/router/index.js
  4. 17
      Code/Fe/src/store/modules/permission.js
  5. 1
      Code/Fe/src/views/demo/demo_api_handle.vue
  6. 60
      Code/Fe/src/views/menuAll/index.vue

6
Code/Fe/src/components/addEditFromApiPop/index.vue

@ -145,13 +145,11 @@
<script> <script>
import { ApiTypePost, ApiTypePut } from "@/api/wms-api" import { ApiTypePost, ApiTypePut } from "@/api/wms-api"
import { LoadingMixins } from "@/mixins/LoadingMixins"; import { LoadingMixins } from "@/mixins/LoadingMixins";
import { tableMixins } from "@/mixins/TableMixins"
import currenTableFlex from "@/components/currenTableFlex" import currenTableFlex from "@/components/currenTableFlex"
import * as allUrlOption from '@/utils/baseData/urlOption' import * as allUrlOption from '@/utils/baseData/urlOption'
import { timeAgo } from "@/filters";
export default { export default {
name:"addEditFromApiPop", name:"addEditFromApiPop",
mixins:[ LoadingMixins,tableMixins ], mixins:[ LoadingMixins ],
components: { currenTableFlex }, components: { currenTableFlex },
props: { props: {
// //
@ -315,7 +313,7 @@ export default {
this.close() this.close()
if(this.active == '1')this.oldSkipCount = 1; if(this.active == '1')this.oldSkipCount = 1;
this.show = false this.show = false
this.paging() this.$emit("exitAfterHandle")
this.$nextTick(()=>{ this.$nextTick(()=>{
this.active = 0 this.active = 0
}) })

5
Code/Fe/src/layout/components/Sidebar/Logo.vue

@ -25,8 +25,9 @@ export default {
}, },
data() { data() {
return { return {
title: '一汽富维东阳', title: 'QAD&WMS',
logo: logo // logo: logo
logo: null
} }
} }
} }

20
Code/Fe/src/router/index.js

@ -78,7 +78,25 @@ export let constantRoutes = [
// affix: true // affix: true
} }
}] }]
}, },
{
path: '/',
component: Layout,
redirect: '/menuAll',
hidden: true,
children: [{
path: 'menuAll',
component: () => import('@/views/menuAll/index'),
name: 'menuAll',
meta: {
keepAlive : true,
title: 'menuAll',
icon: 'svg_dashboard',
outerFirst:true
// affix: true
}
}]
},
] ]
/** /**

17
Code/Fe/src/store/modules/permission.js

@ -88,11 +88,13 @@ const mutations = {
* @param data 后端返回的菜单数据 * @param data 后端返回的菜单数据
*/ */
export function generaMenu(routes, data, first) { export function generaMenu(routes, data, first) {
// 不显示的菜单配置隐藏
let _noShowMenus = localStorage.getItem('menuHiddenConfig').split(',')
data.forEach(item => { data.forEach(item => {
let _item = { let _item = {
path: '/'+item.name, path: '/'+item.name,
component: loadView(item.name), component: loadView(item.name),
// hidden: item.status === 0, // 状态为0的隐藏 hidden: _noShowMenus.indexOf(item.name) >= 0, // 状态为0的隐藏
name: item.name, name: item.name,
// meta: item.meta // meta: item.meta
meta: { meta: {
@ -180,11 +182,6 @@ const actions = {
} }
// 存储所有的表名 // 存储所有的表名
commit('SET_TABLESNAME', _menuList) commit('SET_TABLESNAME', _menuList)
// todo-new:接口获取 接口没有走配置文件
let _noShowMenus = null//不显示的菜单
_noShowMenus = localStorage.getItem('menuHiddenConfig').split(',')
// 去掉不显示的菜单后全部显示的菜单
let _showMenus = _noShowMenus && _noShowMenus.length > 0 ? _menuList.filter(item1 => !_noShowMenus.some(item2 => item2 === item1)) : _menuList
// 数据模拟,todo-new:接口获取 // 数据模拟,todo-new:接口获取
let _treeMenusAll = null//树形菜单 let _treeMenusAll = null//树形菜单
// _treeMenusAll = [ // _treeMenusAll = [
@ -237,13 +234,13 @@ const actions = {
let _initTreeMenus = [] let _initTreeMenus = []
if(_treeMenusAll && _treeMenusAll.length > 0){ if(_treeMenusAll && _treeMenusAll.length > 0){
_initTreeMenus = initTreeMenusHandle(_treeMenusAll,_showMenus,true) _initTreeMenus = initTreeMenusHandle(_treeMenusAll,_menuList,true)
}else{ }else{
let _data = [] let _data = []
for(let i in _showMenus){ for(let i in _menuList){
_data.push({name:_showMenus[i]}) _data.push({name:_menuList[i]})
} }
_initTreeMenus = initTreeMenusHandle(_data,_showMenus,true) _initTreeMenus = initTreeMenusHandle(_data,_menuList,true)
} }
// 最后查重+层级查重后的菜单 // 最后查重+层级查重后的菜单
let _initEndMenus = generaMenu(asyncRoutes, _initTreeMenus,true) let _initEndMenus = generaMenu(asyncRoutes, _initTreeMenus,true)

1
Code/Fe/src/views/demo/demo_api_handle.vue

@ -62,6 +62,7 @@
:handleType="addEditApiType" :handleType="addEditApiType"
:editRowData="editFromApiRowData" :editRowData="editFromApiRowData"
@closePop="closeAddEditApiPop" @closePop="closeAddEditApiPop"
@exitAfterHandle="paging"
></addEditFromApiPop> ></addEditFromApiPop>
</div> </div>
</template> </template>

60
Code/Fe/src/views/menuAll/index.vue

@ -0,0 +1,60 @@
<template>
<div class="dashboardPage">
<el-tree
:data="navList"
:props="defaultProps"
@node-click="goPage"
></el-tree>
</div>
</template>
<script>
import { mapGetters } from 'vuex'
export default {
name: 'Dashboard',
data() {
return {
navList:[],
defaultProps: {
children: 'children',
label: 'title'
}
}
},
computed: {
...mapGetters([
'permission_routes'
])
},
mounted(){
this.initData(this.permission_routes)
},
methods:{
initData(data){
data.forEach(item => {
if(item.path !== '/' && item.meta) {
let _item = {
title:item.meta.title,
name:item.name,
path:item.path,
children:item.children
}
this.navList.push(_item)
}
if(item.children){
this.initData(item.children)
}
})
},
goPage(item){
this.$router.push({name: item.name})
},
}
}
</script>
<style lang="scss" scoped>
.dashboardPage{
padding:30px 10px;
background: #fff;
}
</style>
Loading…
Cancel
Save