eoss-ui 0.5.81-beta10 → 0.5.81-beta12
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/lib/button-group.js +3 -1
- package/lib/button.js +3 -1
- package/lib/checkbox-group.js +3 -1
- package/lib/config/api.js +1 -0
- package/lib/data-table-form.js +3 -1
- package/lib/data-table.js +57 -30
- package/lib/date-picker.js +3 -1
- package/lib/dialog.js +9 -6
- package/lib/eoss-ui.common.js +491 -275
- package/lib/flow-group.js +6 -4
- package/lib/flow-list.js +3 -1
- package/lib/flow.js +3 -1
- package/lib/form.js +12 -5
- package/lib/handle-user.js +3 -1
- package/lib/handler.js +8 -3
- package/lib/icon.js +3 -1
- package/lib/index.js +1 -1
- package/lib/input-number.js +3 -1
- package/lib/input.js +3 -1
- package/lib/login.js +3 -1
- package/lib/main.js +371 -201
- package/lib/nav.js +3 -1
- package/lib/notify.js +3 -1
- package/lib/page.js +3 -1
- package/lib/pagination.js +3717 -3
- package/lib/player.js +3 -1
- package/lib/qr-code.js +3 -1
- package/lib/radio-group.js +3 -1
- package/lib/retrial-auth.js +3 -1
- package/lib/select-ganged.js +3 -1
- package/lib/select.js +3 -1
- package/lib/selector-panel.js +3 -1
- package/lib/selector.js +3 -1
- package/lib/sizer.js +3 -1
- package/lib/steps.js +3 -1
- package/lib/switch.js +3 -1
- package/lib/table-form.js +3 -1
- package/lib/tabs.js +3 -1
- package/lib/theme-chalk/data-table.css +1 -1
- package/lib/theme-chalk/index.css +1 -1
- package/lib/theme-chalk/main.css +1 -1
- package/lib/theme-chalk/pagination.css +1 -1
- package/lib/theme-chalk/simplicity.css +1 -1
- package/lib/tips.js +3 -1
- package/lib/tree-group.js +3 -1
- package/lib/tree.js +3 -1
- package/lib/upload.js +3 -1
- package/lib/wujie.js +3 -1
- package/lib/wxlogin.js +3 -1
- package/package.json +2 -2
- package/packages/data-table/src/main.vue +31 -14
- package/packages/data-table/src/sizer.vue +3 -0
- package/packages/dialog/src/main.vue +4 -3
- package/packages/flow-group/src/main.vue +1 -1
- package/packages/form/src/main.vue +7 -2
- package/packages/handler/src/main.vue +3 -3
- package/packages/main/src/default/index.vue +13 -12
- package/packages/main/src/public/online.vue +90 -0
- package/packages/main/src/simplicity/apps.vue +3 -3
- package/packages/main/src/simplicity/handler.vue +6 -2
- package/packages/main/src/simplicity/index.vue +47 -28
- package/packages/main/src/simplicity/sub-menu.vue +5 -1
- package/packages/pagination/src/main.vue +20 -1
- package/packages/theme-chalk/lib/data-table.css +1 -1
- package/packages/theme-chalk/lib/index.css +1 -1
- package/packages/theme-chalk/lib/main.css +1 -1
- package/packages/theme-chalk/lib/pagination.css +1 -1
- package/packages/theme-chalk/lib/simplicity.css +1 -1
- package/packages/theme-chalk/src/data-table.scss +61 -23
- package/packages/theme-chalk/src/pagination.scss +7 -0
- package/packages/theme-chalk/src/simplicity.scss +10 -0
- package/src/config/api.js +1 -0
- package/src/index.js +1 -1
|
@@ -12,6 +12,9 @@
|
|
|
12
12
|
<es-toolbar
|
|
13
13
|
v-if="showToolbar"
|
|
14
14
|
ref="toolbar"
|
|
15
|
+
:class="{
|
|
16
|
+
'es-table-toolbar-plus': mode == 'plus'
|
|
17
|
+
}"
|
|
15
18
|
v-bind="{
|
|
16
19
|
contents: toolbars,
|
|
17
20
|
showLabel: showLabel,
|
|
@@ -35,7 +38,10 @@
|
|
|
35
38
|
<div
|
|
36
39
|
style="styles"
|
|
37
40
|
class="es-data-table-content"
|
|
38
|
-
:class="
|
|
41
|
+
:class="{
|
|
42
|
+
'es-table-border-none': border == 'none',
|
|
43
|
+
'es-table-plus': mode == 'plus'
|
|
44
|
+
}"
|
|
39
45
|
ref="esTableContent"
|
|
40
46
|
v-if="show"
|
|
41
47
|
>
|
|
@@ -153,9 +159,11 @@
|
|
|
153
159
|
</div>
|
|
154
160
|
<es-pagination
|
|
155
161
|
v-else-if="page"
|
|
162
|
+
ref="pagination"
|
|
156
163
|
v-bind="config"
|
|
157
164
|
class="es-table-page"
|
|
158
|
-
:
|
|
165
|
+
:position="page.position"
|
|
166
|
+
:style="{ 'text-align': page.position }"
|
|
159
167
|
v-on="{
|
|
160
168
|
change: sizeChange,
|
|
161
169
|
current: currentChange,
|
|
@@ -166,7 +174,7 @@
|
|
|
166
174
|
<slot name="dialog"></slot>
|
|
167
175
|
<slot name="other"></slot>
|
|
168
176
|
</div>
|
|
169
|
-
<sizer ref="sizer" :data="theads"></sizer>
|
|
177
|
+
<sizer ref="sizer" :data="theads" :mode="mode"></sizer>
|
|
170
178
|
</component>
|
|
171
179
|
</template>
|
|
172
180
|
<script>
|
|
@@ -177,6 +185,8 @@ import sizer from './sizer.vue';
|
|
|
177
185
|
import util from 'eoss-ui/src/utils/util';
|
|
178
186
|
import bus from 'eoss-ui/src/utils/bus';
|
|
179
187
|
import qs from 'qs';
|
|
188
|
+
const dataTableMode =
|
|
189
|
+
util.win.top.dataTableMode || util.win.dataTableMode || 'default';
|
|
180
190
|
export default {
|
|
181
191
|
name: 'EsDataTable',
|
|
182
192
|
inheritAttrs: false,
|
|
@@ -202,6 +212,10 @@ export default {
|
|
|
202
212
|
}
|
|
203
213
|
},
|
|
204
214
|
props: {
|
|
215
|
+
mode: {
|
|
216
|
+
type: String,
|
|
217
|
+
default: dataTableMode
|
|
218
|
+
},
|
|
205
219
|
service: String,
|
|
206
220
|
loading: {
|
|
207
221
|
type: Boolean,
|
|
@@ -449,7 +463,11 @@ export default {
|
|
|
449
463
|
config: {
|
|
450
464
|
pageNum: 1,
|
|
451
465
|
pageSize: 20,
|
|
452
|
-
totalCount: 0
|
|
466
|
+
totalCount: 0,
|
|
467
|
+
layout:
|
|
468
|
+
this.mode == 'plus'
|
|
469
|
+
? 'total, sizes, prev, pager, next, jumper'
|
|
470
|
+
: undefined
|
|
453
471
|
},
|
|
454
472
|
searchWhere: {},
|
|
455
473
|
advanceWhere: {},
|
|
@@ -675,7 +693,7 @@ export default {
|
|
|
675
693
|
}
|
|
676
694
|
},
|
|
677
695
|
zoom: {
|
|
678
|
-
handler(
|
|
696
|
+
handler() {
|
|
679
697
|
if (
|
|
680
698
|
this.tableHeight != 'auto' &&
|
|
681
699
|
this.tableHeight !== false &&
|
|
@@ -707,7 +725,7 @@ export default {
|
|
|
707
725
|
},
|
|
708
726
|
param: {
|
|
709
727
|
deep: true,
|
|
710
|
-
handler(
|
|
728
|
+
handler() {
|
|
711
729
|
this.getTableData();
|
|
712
730
|
}
|
|
713
731
|
},
|
|
@@ -717,12 +735,6 @@ export default {
|
|
|
717
735
|
handler(val) {
|
|
718
736
|
if (typeof val === 'object') {
|
|
719
737
|
this.config = util.extend({}, this.config, val);
|
|
720
|
-
} else {
|
|
721
|
-
this.config = {
|
|
722
|
-
pageNum: 1,
|
|
723
|
-
pageSize: 20,
|
|
724
|
-
totalCount: 0
|
|
725
|
-
};
|
|
726
738
|
}
|
|
727
739
|
}
|
|
728
740
|
},
|
|
@@ -1008,6 +1020,7 @@ export default {
|
|
|
1008
1020
|
this.list = results.data || results.records || [];
|
|
1009
1021
|
this.config.totalCount =
|
|
1010
1022
|
results.count || results.total || results.totalCount;
|
|
1023
|
+
this.config.pageCount = results.pageCount;
|
|
1011
1024
|
this.getOptions(this.theadData);
|
|
1012
1025
|
}
|
|
1013
1026
|
} else {
|
|
@@ -1096,6 +1109,7 @@ export default {
|
|
|
1096
1109
|
}
|
|
1097
1110
|
this.config.totalCount =
|
|
1098
1111
|
results.count || results.total || results.totalCount;
|
|
1112
|
+
this.config.pageCount = results.pageCount;
|
|
1099
1113
|
this.checked &&
|
|
1100
1114
|
this.$nextTick(() => {
|
|
1101
1115
|
this.checkSelect(this.checked);
|
|
@@ -1539,8 +1553,11 @@ export default {
|
|
|
1539
1553
|
parseInt(util.getStyle(ele, 'margin-bottom'), 10);
|
|
1540
1554
|
}
|
|
1541
1555
|
}
|
|
1542
|
-
height -= this.showToolbar
|
|
1543
|
-
|
|
1556
|
+
height -= this.showToolbar
|
|
1557
|
+
? this.$refs.toolbar.$el.offsetHeight
|
|
1558
|
+
: 0;
|
|
1559
|
+
height -=
|
|
1560
|
+
this.page === false ? 0 : this.$refs.pagination.$el.offsetHeight;
|
|
1544
1561
|
height -= this.title ? this.$refs.title.offsetHeight : 0;
|
|
1545
1562
|
height -= parseInt(
|
|
1546
1563
|
util.getStyle(this.$refs.esTableContent, 'padding-top'),
|
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
row-key="id"
|
|
8
8
|
default-expand-all
|
|
9
9
|
height="500px"
|
|
10
|
+
:mode="mode"
|
|
10
11
|
:data="theads"
|
|
11
12
|
:thead="thead"
|
|
12
13
|
:tree-props="{ children: 'childHead' }"
|
|
@@ -26,6 +27,7 @@ import util from 'eoss-ui/src/utils/util';
|
|
|
26
27
|
export default {
|
|
27
28
|
name: 'Sizer',
|
|
28
29
|
props: {
|
|
30
|
+
mode: String,
|
|
29
31
|
data: Array
|
|
30
32
|
},
|
|
31
33
|
computed: {
|
|
@@ -89,6 +91,7 @@ export default {
|
|
|
89
91
|
},
|
|
90
92
|
mounted() {
|
|
91
93
|
this.newThead = util.extend(true, [], this.data);
|
|
94
|
+
console.log(this.mode, 90909);
|
|
92
95
|
},
|
|
93
96
|
methods: {
|
|
94
97
|
show() {
|
|
@@ -363,9 +363,10 @@ export default {
|
|
|
363
363
|
full: false,
|
|
364
364
|
method: 'router',
|
|
365
365
|
sizes: {
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
366
|
+
mini: { width: '800px', height: '400px' },
|
|
367
|
+
sm: { width: '960px', height: '500px' },
|
|
368
|
+
md: { width: '1060px', height: '600px' },
|
|
369
|
+
lg: { width: '1200px', height: '800px' },
|
|
369
370
|
full: { width: '100%', height: '100%' }
|
|
370
371
|
},
|
|
371
372
|
show: this.visible,
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
<template v-for="(items, indexs) in tabs">
|
|
12
12
|
<el-tab-pane
|
|
13
13
|
v-if="handleHide(items.hide)"
|
|
14
|
-
:key="indexs"
|
|
14
|
+
:key="items.id || indexs"
|
|
15
15
|
:immediate="items.label === '流程图' ? false : items.immediate"
|
|
16
16
|
:name="String(indexs)"
|
|
17
17
|
:class="{ 'es-flex-vertical': items.average }"
|
|
@@ -4223,7 +4223,8 @@ export default {
|
|
|
4223
4223
|
return {};
|
|
4224
4224
|
}
|
|
4225
4225
|
},
|
|
4226
|
-
active: Array
|
|
4226
|
+
active: Array,
|
|
4227
|
+
resetActive: Boolean
|
|
4227
4228
|
},
|
|
4228
4229
|
data() {
|
|
4229
4230
|
return {
|
|
@@ -4448,7 +4449,11 @@ export default {
|
|
|
4448
4449
|
}
|
|
4449
4450
|
});
|
|
4450
4451
|
if (!this.active || (this.active && !this.active.length)) {
|
|
4451
|
-
this.
|
|
4452
|
+
if (this.resetActive) {
|
|
4453
|
+
this.activeNames = names;
|
|
4454
|
+
} else if (this.activeNames.length == 0) {
|
|
4455
|
+
this.activeNames = names;
|
|
4456
|
+
}
|
|
4452
4457
|
}
|
|
4453
4458
|
this.content = contents;
|
|
4454
4459
|
if (this.content.length === 1) {
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
>当前<span
|
|
23
23
|
class="es-online-num"
|
|
24
24
|
:class="{ 'es-pointer': onlineList }"
|
|
25
|
-
@click="onlineList ? handleClick({ type: 'online' }) : ''"
|
|
25
|
+
@click.stop="onlineList ? handleClick({ type: 'online' }) : ''"
|
|
26
26
|
>{{ online }}</span
|
|
27
27
|
>人在线</span
|
|
28
28
|
>
|
|
@@ -92,7 +92,7 @@
|
|
|
92
92
|
class="es-handler-icon"
|
|
93
93
|
:title="item.title"
|
|
94
94
|
:class="item.icon"
|
|
95
|
-
@click="handleClick(item)"
|
|
95
|
+
@click.stop="handleClick(item)"
|
|
96
96
|
></div>
|
|
97
97
|
</el-badge>
|
|
98
98
|
<div
|
|
@@ -100,7 +100,7 @@
|
|
|
100
100
|
class="es-handler-icon"
|
|
101
101
|
:title="item.title"
|
|
102
102
|
:class="item.icon"
|
|
103
|
-
@click="handleClick(item)"
|
|
103
|
+
@click.stop="handleClick(item)"
|
|
104
104
|
></div>
|
|
105
105
|
</li>
|
|
106
106
|
</ul>
|
|
@@ -192,8 +192,11 @@
|
|
|
192
192
|
</es-dialog>
|
|
193
193
|
<notice :data="sysMsg" :winopen="winopen" @opened="handleOpened"></notice>
|
|
194
194
|
<es-dialog :title="dialog.title" :visible.sync="dialog.show" size="md">
|
|
195
|
+
<template v-if="dialog.title == '查看在线人员' && !dialog.src">
|
|
196
|
+
<online></online>
|
|
197
|
+
</template>
|
|
195
198
|
<iframe
|
|
196
|
-
v-if="dialog.show"
|
|
199
|
+
v-else-if="dialog.show"
|
|
197
200
|
width="100%"
|
|
198
201
|
height="100%"
|
|
199
202
|
frameborder="0"
|
|
@@ -207,6 +210,7 @@ import userinfo from './userinfo.vue';
|
|
|
207
210
|
import settings from './settings.vue';
|
|
208
211
|
import message from './message.vue';
|
|
209
212
|
import notice from './notice.vue';
|
|
213
|
+
import online from '../public/online.vue';
|
|
210
214
|
import {
|
|
211
215
|
//authCenter,
|
|
212
216
|
wss,
|
|
@@ -233,7 +237,8 @@ export default {
|
|
|
233
237
|
userinfo,
|
|
234
238
|
settings,
|
|
235
239
|
message,
|
|
236
|
-
notice
|
|
240
|
+
notice,
|
|
241
|
+
online
|
|
237
242
|
},
|
|
238
243
|
props: {
|
|
239
244
|
jobScrollbar: Boolean,
|
|
@@ -534,9 +539,7 @@ export default {
|
|
|
534
539
|
},
|
|
535
540
|
onlineUrl() {
|
|
536
541
|
if (this.onlineView) {
|
|
537
|
-
return typeof this.onlineView == 'string'
|
|
538
|
-
? this.onlineView
|
|
539
|
-
: '/main/sysuseronline/list.dhtml';
|
|
542
|
+
return typeof this.onlineView == 'string' ? this.onlineView : '';
|
|
540
543
|
}
|
|
541
544
|
return false;
|
|
542
545
|
}
|
|
@@ -1659,13 +1662,11 @@ export default {
|
|
|
1659
1662
|
this.showUserInfo = true;
|
|
1660
1663
|
break;
|
|
1661
1664
|
case 'online':
|
|
1662
|
-
|
|
1663
|
-
|
|
1664
|
-
|
|
1665
|
-
|
|
1666
|
-
|
|
1667
|
-
};
|
|
1668
|
-
}
|
|
1665
|
+
this.dialog = {
|
|
1666
|
+
title: '查看在线人员',
|
|
1667
|
+
show: true,
|
|
1668
|
+
src: this.onlineUrl
|
|
1669
|
+
};
|
|
1669
1670
|
break;
|
|
1670
1671
|
case 'notice':
|
|
1671
1672
|
this.showMsg = !this.showMsg;
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<es-data-table
|
|
3
|
+
numbers
|
|
4
|
+
:url="sysuseronline"
|
|
5
|
+
:thead="thead"
|
|
6
|
+
page
|
|
7
|
+
></es-data-table>
|
|
8
|
+
</template>
|
|
9
|
+
|
|
10
|
+
<script>
|
|
11
|
+
import { userOnline } from 'eoss-ui/src/config/api.js';
|
|
12
|
+
export default {
|
|
13
|
+
name: 'Online',
|
|
14
|
+
components: {},
|
|
15
|
+
props: {
|
|
16
|
+
sysuseronline: {
|
|
17
|
+
type: String,
|
|
18
|
+
default: userOnline
|
|
19
|
+
}
|
|
20
|
+
},
|
|
21
|
+
data() {
|
|
22
|
+
return {
|
|
23
|
+
thead: [
|
|
24
|
+
{
|
|
25
|
+
title: '单位',
|
|
26
|
+
field: 'orgName',
|
|
27
|
+
align: 'center',
|
|
28
|
+
minWidth: 120
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
title: '部门',
|
|
32
|
+
field: 'depName',
|
|
33
|
+
align: 'center',
|
|
34
|
+
minWidth: 120
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
title: '姓名',
|
|
38
|
+
field: 'userName',
|
|
39
|
+
align: 'center',
|
|
40
|
+
width: 120
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
title: '职务',
|
|
44
|
+
field: 'position',
|
|
45
|
+
align: 'center',
|
|
46
|
+
width: 120
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
title: '账号',
|
|
50
|
+
field: 'loginName',
|
|
51
|
+
align: 'center',
|
|
52
|
+
width: 120
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
title: '登录时间',
|
|
56
|
+
field: 'loginDate',
|
|
57
|
+
align: 'center',
|
|
58
|
+
width: 150
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
title: '登录次数',
|
|
62
|
+
field: 'freQuency',
|
|
63
|
+
align: 'center',
|
|
64
|
+
width: 110
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
title: '登录方式',
|
|
68
|
+
field: 'loginModel',
|
|
69
|
+
align: 'center',
|
|
70
|
+
width: 100,
|
|
71
|
+
render: (h, params) => {
|
|
72
|
+
let {
|
|
73
|
+
row: { loginModel }
|
|
74
|
+
} = params;
|
|
75
|
+
let types = ['普通登录', 'CA登录', '手机登录'];
|
|
76
|
+
return h('span', {}, [types[loginModel] || types[0]]);
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
]
|
|
80
|
+
};
|
|
81
|
+
},
|
|
82
|
+
computed: {},
|
|
83
|
+
watch: {},
|
|
84
|
+
created() {},
|
|
85
|
+
mounted() {},
|
|
86
|
+
methods: {}
|
|
87
|
+
};
|
|
88
|
+
</script>
|
|
89
|
+
|
|
90
|
+
<style lang="scss" scoped></style>
|
|
@@ -116,7 +116,7 @@
|
|
|
116
116
|
background
|
|
117
117
|
layout="total,prev, pager, next"
|
|
118
118
|
total-text="共 {total} 专项业务系统"
|
|
119
|
-
:page-size="
|
|
119
|
+
:page-size="bsSize"
|
|
120
120
|
:total="business.length"
|
|
121
121
|
@current-change="
|
|
122
122
|
(res) => {
|
|
@@ -169,8 +169,8 @@
|
|
|
169
169
|
layout="total,prev, pager, next"
|
|
170
170
|
total-text="共 {total} 系统设置"
|
|
171
171
|
hide-on-single-page
|
|
172
|
-
:page-size="
|
|
173
|
-
:total="
|
|
172
|
+
:page-size="sysSize"
|
|
173
|
+
:total="systems.length"
|
|
174
174
|
@current-change="
|
|
175
175
|
(res) => {
|
|
176
176
|
this.handleChange(res, 2);
|
|
@@ -6,7 +6,11 @@
|
|
|
6
6
|
</div>
|
|
7
7
|
<div class="es-simplicity-online">
|
|
8
8
|
当前
|
|
9
|
-
<span
|
|
9
|
+
<span
|
|
10
|
+
class="es-simplicity-online-num"
|
|
11
|
+
@click="isClick ? handleClick({ type: 'online' }) : ''"
|
|
12
|
+
:class="{ 'es-pointer': isClick }"
|
|
13
|
+
>
|
|
10
14
|
{{ online }}
|
|
11
15
|
</span>
|
|
12
16
|
人在线
|
|
@@ -63,7 +67,7 @@ export default {
|
|
|
63
67
|
default() {
|
|
64
68
|
return {
|
|
65
69
|
type: 'index',
|
|
66
|
-
|
|
70
|
+
link: doorIndex,
|
|
67
71
|
icon: 'es-icon-home',
|
|
68
72
|
title: '门户'
|
|
69
73
|
};
|
|
@@ -102,6 +102,7 @@
|
|
|
102
102
|
<div class="es-simplicity-main">
|
|
103
103
|
<!-- 菜单 -->
|
|
104
104
|
<sub-menu
|
|
105
|
+
:mode="mode"
|
|
105
106
|
:visible.sync="showMenu"
|
|
106
107
|
:closed.sync="fold"
|
|
107
108
|
:size="menuWidth"
|
|
@@ -291,8 +292,11 @@
|
|
|
291
292
|
|
|
292
293
|
<!-- 公用弹窗 -->
|
|
293
294
|
<es-dialog :title="dialog.title" :visible.sync="dialog.show" size="md">
|
|
295
|
+
<template v-if="dialog.title == '查看在线人员' && !dialog.src">
|
|
296
|
+
<online></online>
|
|
297
|
+
</template>
|
|
294
298
|
<iframe
|
|
295
|
-
v-if="dialog.show"
|
|
299
|
+
v-else-if="dialog.show"
|
|
296
300
|
width="100%"
|
|
297
301
|
height="100%"
|
|
298
302
|
frameborder="0"
|
|
@@ -305,6 +309,7 @@
|
|
|
305
309
|
</template>
|
|
306
310
|
|
|
307
311
|
<script>
|
|
312
|
+
const dataTableMode = util.win.dataTableMode || 'default';
|
|
308
313
|
import avatar from './avatar.vue';
|
|
309
314
|
import handler from './handler.vue';
|
|
310
315
|
import subMenu from './sub-menu.vue';
|
|
@@ -314,6 +319,7 @@ import message from './message.vue';
|
|
|
314
319
|
import notice from './notice.vue';
|
|
315
320
|
import settings from './settings.vue';
|
|
316
321
|
import routerPage from './router-page.vue';
|
|
322
|
+
import online from '../public/online.vue';
|
|
317
323
|
import {
|
|
318
324
|
wss,
|
|
319
325
|
logout,
|
|
@@ -386,9 +392,15 @@ export default {
|
|
|
386
392
|
message,
|
|
387
393
|
notice,
|
|
388
394
|
settings,
|
|
389
|
-
routerPage
|
|
395
|
+
routerPage,
|
|
396
|
+
online
|
|
390
397
|
},
|
|
391
398
|
props: {
|
|
399
|
+
//模式
|
|
400
|
+
mode: {
|
|
401
|
+
type: String,
|
|
402
|
+
default: dataTableMode
|
|
403
|
+
},
|
|
392
404
|
appCode: String,
|
|
393
405
|
//logo
|
|
394
406
|
logo: String,
|
|
@@ -600,9 +612,7 @@ export default {
|
|
|
600
612
|
//在线人数列表地址
|
|
601
613
|
onlineUrl() {
|
|
602
614
|
if (this.onlineView) {
|
|
603
|
-
return typeof this.onlineView == 'string'
|
|
604
|
-
? this.onlineView
|
|
605
|
-
: '/main/sysuseronline/list.dhtml';
|
|
615
|
+
return typeof this.onlineView == 'string' ? this.onlineView : '';
|
|
606
616
|
}
|
|
607
617
|
return false;
|
|
608
618
|
}
|
|
@@ -921,13 +931,6 @@ export default {
|
|
|
921
931
|
if (!this.appCode) {
|
|
922
932
|
this.tabs = [this.homePage];
|
|
923
933
|
this.activeName = '0';
|
|
924
|
-
// if (this.homePage.method == 'router') {
|
|
925
|
-
// let params = util.getParams({ url: this.homePage.url });
|
|
926
|
-
// this.$router.push({
|
|
927
|
-
// path: this.homePage.path,
|
|
928
|
-
// query: { ...this.$parent.params, ...params }
|
|
929
|
-
// });
|
|
930
|
-
// }
|
|
931
934
|
}
|
|
932
935
|
}
|
|
933
936
|
} else if (
|
|
@@ -943,13 +946,6 @@ export default {
|
|
|
943
946
|
let tab = this.setIframeType(obj);
|
|
944
947
|
this.tabs.push(tab);
|
|
945
948
|
this.activeName = tab.id;
|
|
946
|
-
// if (tab.method == 'router') {
|
|
947
|
-
// let params = util.getParams({ url: tab.url });
|
|
948
|
-
// this.$router.push({
|
|
949
|
-
// path: tab.path,
|
|
950
|
-
// query: { ...this.$parent.params, ...params }
|
|
951
|
-
// });
|
|
952
|
-
// }
|
|
953
949
|
}
|
|
954
950
|
}
|
|
955
951
|
}
|
|
@@ -975,6 +971,9 @@ export default {
|
|
|
975
971
|
**/
|
|
976
972
|
setIframeType(res) {
|
|
977
973
|
let { url } = res;
|
|
974
|
+
if (url) {
|
|
975
|
+
res.refresh = false;
|
|
976
|
+
}
|
|
978
977
|
let urls = url.split('?');
|
|
979
978
|
if (urls[0].indexOf('.js') > 1 && !isIE) {
|
|
980
979
|
res.method = 'wujie';
|
|
@@ -1019,7 +1018,9 @@ export default {
|
|
|
1019
1018
|
}
|
|
1020
1019
|
}
|
|
1021
1020
|
}
|
|
1022
|
-
res
|
|
1021
|
+
if (Object.prototype.hasOwnProperty.call(res, 'refresh')) {
|
|
1022
|
+
res.refresh = true;
|
|
1023
|
+
}
|
|
1023
1024
|
return res;
|
|
1024
1025
|
},
|
|
1025
1026
|
/**
|
|
@@ -1217,6 +1218,9 @@ export default {
|
|
|
1217
1218
|
* @date 2024年9月7日
|
|
1218
1219
|
**/
|
|
1219
1220
|
handlerClickApps(res) {
|
|
1221
|
+
if (res.permission === false) {
|
|
1222
|
+
return false;
|
|
1223
|
+
}
|
|
1220
1224
|
let i = util.indexOfObj(this.newApps, res, 'id');
|
|
1221
1225
|
if (i == -1) {
|
|
1222
1226
|
this.newApps.push(res);
|
|
@@ -1263,12 +1267,20 @@ export default {
|
|
|
1263
1267
|
let tab = this.setIframeType(obj);
|
|
1264
1268
|
this.tabs.push(tab);
|
|
1265
1269
|
this.activeName = tab.id;
|
|
1270
|
+
} else {
|
|
1271
|
+
if (obj.method == 'iframe') {
|
|
1272
|
+
obj.url = util.handlerUrl(obj.url);
|
|
1273
|
+
}
|
|
1266
1274
|
}
|
|
1267
1275
|
} else {
|
|
1268
1276
|
let tab = this.setIframeType(res);
|
|
1269
1277
|
this.tabs.push(tab);
|
|
1270
1278
|
this.activeName = tab.id;
|
|
1271
1279
|
}
|
|
1280
|
+
} else {
|
|
1281
|
+
if (res.method == 'iframe') {
|
|
1282
|
+
res.url = util.handlerUrl(res.url);
|
|
1283
|
+
}
|
|
1272
1284
|
}
|
|
1273
1285
|
}
|
|
1274
1286
|
}
|
|
@@ -1284,6 +1296,10 @@ export default {
|
|
|
1284
1296
|
if (i == -1) {
|
|
1285
1297
|
let tab = this.setIframeType(subMenus);
|
|
1286
1298
|
this.tabs.push(tab);
|
|
1299
|
+
} else {
|
|
1300
|
+
if (subMenus.method == 'iframe') {
|
|
1301
|
+
subMenus.url = util.handlerUrl(subMenus.url);
|
|
1302
|
+
}
|
|
1287
1303
|
}
|
|
1288
1304
|
}
|
|
1289
1305
|
}
|
|
@@ -1326,6 +1342,10 @@ export default {
|
|
|
1326
1342
|
if (i == -1) {
|
|
1327
1343
|
let tab = this.setIframeType(res);
|
|
1328
1344
|
this.tabs.push(tab);
|
|
1345
|
+
} else {
|
|
1346
|
+
if (res.method == 'iframe') {
|
|
1347
|
+
res.url = util.handlerUrl(res.url);
|
|
1348
|
+
}
|
|
1329
1349
|
}
|
|
1330
1350
|
},
|
|
1331
1351
|
|
|
@@ -1377,7 +1397,8 @@ export default {
|
|
|
1377
1397
|
* @date 2024年9月7日
|
|
1378
1398
|
**/
|
|
1379
1399
|
handleRefresh() {
|
|
1380
|
-
let
|
|
1400
|
+
let i = util.indexOfObj(this.tabs, this.activeName, 'id');
|
|
1401
|
+
let tab = this.tabs[i];
|
|
1381
1402
|
if (tab.method === 'iframe') {
|
|
1382
1403
|
tab.url = util.handlerUrl(tab.url);
|
|
1383
1404
|
}
|
|
@@ -1475,13 +1496,11 @@ export default {
|
|
|
1475
1496
|
case 'online':
|
|
1476
1497
|
this.showMsg = false;
|
|
1477
1498
|
this.showSet = false;
|
|
1478
|
-
|
|
1479
|
-
|
|
1480
|
-
|
|
1481
|
-
|
|
1482
|
-
|
|
1483
|
-
};
|
|
1484
|
-
}
|
|
1499
|
+
this.dialog = {
|
|
1500
|
+
title: '查看在线人员',
|
|
1501
|
+
show: true,
|
|
1502
|
+
src: this.onlineUrl
|
|
1503
|
+
};
|
|
1485
1504
|
break;
|
|
1486
1505
|
case 'notice':
|
|
1487
1506
|
this.showMsg = !this.showMsg;
|
|
@@ -11,7 +11,10 @@
|
|
|
11
11
|
:wrapperClosable="false"
|
|
12
12
|
:visible.sync="show"
|
|
13
13
|
>
|
|
14
|
-
<div
|
|
14
|
+
<div
|
|
15
|
+
class="es-simplicity-menus"
|
|
16
|
+
:class="{ 'es-simplicity-menus-plus': mode == 'plus' }"
|
|
17
|
+
>
|
|
15
18
|
<div class="es-simplicity-menus-box" :style="{ width: width + 'px' }">
|
|
16
19
|
<div class="es-simplicity-menus-title">
|
|
17
20
|
<span class="es-simplicity-menus-title-text" v-if="!fold">{{
|
|
@@ -97,6 +100,7 @@ export default {
|
|
|
97
100
|
name: 'SubMenu',
|
|
98
101
|
components: { MenuList },
|
|
99
102
|
props: {
|
|
103
|
+
mode: String,
|
|
100
104
|
title: String,
|
|
101
105
|
active: String,
|
|
102
106
|
closed: Boolean,
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<el-pagination
|
|
3
3
|
class="es-pagination"
|
|
4
|
+
:class="{ 'es-pagination-complete': isComplete && position != 'center' }"
|
|
4
5
|
v-bind="$attrs"
|
|
5
6
|
:current-page="pageNum"
|
|
6
7
|
:page-size="pageSize"
|
|
@@ -18,10 +19,28 @@
|
|
|
18
19
|
</el-pagination>
|
|
19
20
|
</template>
|
|
20
21
|
<script>
|
|
22
|
+
import util from 'eoss-ui/src/utils/util';
|
|
23
|
+
const paginationLayout =
|
|
24
|
+
util.win.top.tableLayout ||
|
|
25
|
+
util.win.tableLayout ||
|
|
26
|
+
'prev, pager, next, sizes, total';
|
|
21
27
|
export default {
|
|
22
28
|
name: 'EsPagination',
|
|
23
29
|
inheritAttrs: false,
|
|
30
|
+
computed: {
|
|
31
|
+
isComplete() {
|
|
32
|
+
return (
|
|
33
|
+
this.layout.indexOf('total') > -1 &&
|
|
34
|
+
this.layout.indexOf('sizes') > -1 &&
|
|
35
|
+
this.layout.indexOf('prev') > -1 &&
|
|
36
|
+
this.layout.indexOf('pager') > -1 &&
|
|
37
|
+
this.layout.indexOf('next') > -1 &&
|
|
38
|
+
this.layout.indexOf('jumper') > -1
|
|
39
|
+
);
|
|
40
|
+
}
|
|
41
|
+
},
|
|
24
42
|
props: {
|
|
43
|
+
position: String,
|
|
25
44
|
// 当前页码
|
|
26
45
|
pageNum: {
|
|
27
46
|
type: Number,
|
|
@@ -46,7 +65,7 @@ export default {
|
|
|
46
65
|
// 自定义排版
|
|
47
66
|
layout: {
|
|
48
67
|
type: String,
|
|
49
|
-
default:
|
|
68
|
+
default: paginationLayout
|
|
50
69
|
},
|
|
51
70
|
// 只有一页时是否隐藏
|
|
52
71
|
hideOnSinglePage: {
|