sidebar.vue
5.28 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
<script>
var store = require('../../../vuex/store');
var MT = require('../../../vuex/mutation-types');
module.exports = {
store: store,
data: function () {
return {
// 数据传输
menuList: {},
// 显示的菜单的信息
showObj: {
oneGuid: '',// 一级显示的
twoGuid: ''// 二级显示的
},
// index
index: 1
};
},
methods: {
// 获得当前用户信息
getOnlineUser: function () {
var self = this;
if (self.$store.state.user.curMenuRole != null && self.$store.state.user.curMenuRole.oneMenus != null) {
self.getRoleMenu();
} else {
Ajax.get('/online').then(function (resp) {
self.$store.dispatch(MT.SET_ONLINE_USER, resp.data);
self.getRoleMenu();
});
}
},
// 获得菜单的数据权限
getRoleMenu: function () {
var self = this;
self.$set('menuList', self.$store.state.user.curMenuRole);
// 刚登录的时候,默认把第一个大菜单展开
if (self.menuList != null && self.menuList.oneMenus != null) {
for (var key in self.menuList.oneMenus) {
// 一级菜单
self.showObj.oneGuid = self.menuList.oneMenus[key].guid;
// 一级菜单下的第1个二级菜单
self.showObj.twoGuid = self.getFirtMenu(self.showObj.oneGuid);
break;
}
}
},
// 点击一级菜单
clickOne: function (oneGuid) {
var self = this;
if (oneGuid == self.showObj.oneGuid) {
self.showObj.oneGuid = "";
self.showObj.twoGuid = "";
} else {
self.showObj.oneGuid = oneGuid;
self.showObj.twoGuid = self.getFirtMenu(oneGuid);
}
},
// 点击二级菜单
clickTow: function (towGuid, url) {
var self = this;
self.showObj.twoGuid = towGuid;
console.log('ddd')
self.getEtokens();
if (towGuid == '74fb9234008b4cefb2437203bbfb21c3') {
self.getEtokens();
}
self.$store.dispatch(MT.SET_PROCESS, url);
},
// invoice:function(towGuid){
// var self = this;
// self.showObj.twoGuid = towGuid;
// self.getEtokens();
// },
// 获得当前用户信息
getEtokens: function () {
var self = this;
Ajax.post('/user/getUserEitoken').then(function (resp) {
if (resp.data.errorCode == 0) {
window.open('http://test.csylcloud.com:8086/#/jump?access_token=' + resp.data.data, '_self')
} else {
layer.msg('未设置发票管理权限');
}
});
},
// 获得某个一级菜单下第一个对象的guid
getFirtMenu: function (oneGuid) {
var self = this;
var twoGuid = "";
if (self.menuList.twoMenus[oneGuid] != null) {
for (var key in self.menuList.twoMenus[oneGuid]) {
// 一级菜单
twoGuid = self.menuList.twoMenus[oneGuid][key].guid;
break;
}
}
return twoGuid;
}
},
created: function () {
// 获得菜单的权限
this.getOnlineUser();
}
};
</script>
<template>
<!--供应商信息是否完整: v-if="$store.state.user.showMenu=='Y'" -->
<div class="menu-list menu-list-sub" style="min-height: 500px;background: 0;"
v-if="$store.state.user.showMenu=='Y'">
<ul class="has-sub" style="background-color: #fff;">
<!--循环的代码段-->
<li :class='one.guid==showObj.oneGuid?"active":""' v-for="one in menuList.oneMenus">
<!--一级菜单:相当于点击该组的第一个菜单-->
<a class="menu-tit" v-on:click="clickOne(one.guid)">{{one.name}}</a>
<!--二级菜单:子菜单-->
<ul>
<li v-for="two in menuList.twoMenus[one.guid]">
<!--<a :class="two.guid==showObj.twoGuid?'active':''" v-on:click="invoice(two.guid)" v-if=" two.guid == '74fb9234008b4cefb2437203bbfb21c3'"-->
<!--style='padding:8px 4px;'>{{two.name}}</a>-->
<a :class="two.guid==showObj.twoGuid?'active':''"
v-on:click="clickTow(two.guid,two.syscalldescribe1)"
v-link="two.syscalldescribe1">{{two.name}}</a>
</li>
</ul>
</li>
</ul>
</div>
</template>