eoss-ui 0.4.21 → 0.4.23
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 +34 -34
- package/lib/button.js +37 -37
- package/lib/cascader.js +2 -2
- package/lib/checkbox-group.js +34 -34
- package/lib/config/api.js +1 -1
- package/lib/data-table-form.js +34 -34
- package/lib/data-table.js +48 -40
- package/lib/date-picker.js +36 -36
- package/lib/dialog.js +42 -39
- package/lib/eoss-ui.common.js +2284 -422
- package/lib/flow-group.js +42 -36
- package/lib/flow-list.js +35 -35
- package/lib/flow.js +120 -112
- package/lib/form.js +1082 -167
- package/lib/handle-user.js +34 -34
- package/lib/handler.js +34 -34
- package/lib/icon.js +436 -0
- package/lib/index.js +1 -1
- package/lib/input-number.js +36 -36
- package/lib/input.js +36 -36
- package/lib/label.js +2 -2
- package/lib/login.js +34 -34
- package/lib/main.js +584 -129
- package/lib/mainComp.js +54 -53
- package/lib/menu.js +2 -2
- package/lib/nav.js +36 -36
- package/lib/notify.js +36 -36
- package/lib/page.js +36 -36
- package/lib/pagination.js +2 -2
- package/lib/player.js +38 -38
- package/lib/qr-code.js +43 -43
- package/lib/radio-group.js +36 -36
- package/lib/select-ganged.js +36 -36
- package/lib/select.js +48 -46
- package/lib/selector-panel.js +34 -34
- package/lib/selector.js +36 -36
- package/lib/sizer.js +36 -36
- package/lib/steps.js +36 -36
- package/lib/switch.js +36 -36
- package/lib/table-form.js +295 -48
- package/lib/tabs-panel.js +2 -2
- package/lib/tabs.js +43 -39
- package/lib/theme-chalk/es-icon.css +1 -0
- package/lib/tips.js +36 -36
- package/lib/toolbar.js +2 -2
- package/lib/tree-group.js +36 -36
- package/lib/tree.js +36 -36
- package/lib/upload.js +37 -37
- package/lib/wujie.js +36 -36
- package/lib/wxlogin.js +36 -36
- package/package.json +1 -1
- package/packages/button/src/main.vue +7 -7
- package/packages/data-table/src/main.vue +9 -1
- package/packages/dialog/src/main.vue +3 -0
- package/packages/flow/src/component/taskUnionExamine.vue +3 -3
- package/packages/flow/src/main.vue +48 -17
- package/packages/flow/src/startTaskRead.vue +21 -24
- package/packages/flow-group/src/main.vue +5 -0
- package/packages/form/src/main.vue +209 -0
- package/packages/form/src/table.vue +150 -97
- package/packages/icon/index.js +5 -0
- package/packages/icon/src/main.vue +83 -0
- package/packages/main/src/async-component/index.vue +85 -0
- package/packages/main/src/main.vue +181 -12
- package/packages/mainComp/src/main.vue +1 -1
- package/packages/select/src/main.vue +7 -4
- package/packages/tabs/src/main.vue +1 -0
- package/packages/theme-chalk/lib/es-icon.css +1 -0
- package/packages/theme-chalk/src/es-icon.scss +99 -0
- package/src/config/api.js +1 -1
- package/src/index.js +4 -1
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div class="es-icon" :class="{ 'es-icon-readonly': readonly }">
|
|
3
|
+
<el-input
|
|
4
|
+
v-if="!readonly"
|
|
5
|
+
v-bind="$attrs"
|
|
6
|
+
v-on="$listeners"
|
|
7
|
+
:placeholder="placeholder"
|
|
8
|
+
readonly
|
|
9
|
+
v-model="model"
|
|
10
|
+
>
|
|
11
|
+
<i class="es-iconfont" :class="model" slot="prepend" v-if="model"></i>
|
|
12
|
+
<el-button slot="suffix" type="primary" size="small" @click="handleClick"
|
|
13
|
+
>选择</el-button
|
|
14
|
+
>
|
|
15
|
+
</el-input>
|
|
16
|
+
<i class="es-iconfont" :class="model" slot="prepend" v-else></i>
|
|
17
|
+
<es-dialog title="选择图标" :visible.sync="visible">
|
|
18
|
+
<el-scrollbar class="es-scrollbar" ref="scrollbar">
|
|
19
|
+
<ul class="es-icon-list">
|
|
20
|
+
<li
|
|
21
|
+
v-for="name in $icon"
|
|
22
|
+
:key="name"
|
|
23
|
+
@click.stop="handleSelect(name)"
|
|
24
|
+
>
|
|
25
|
+
<span>
|
|
26
|
+
<i :class="'es-icon-' + name"></i>
|
|
27
|
+
<span class="icon-name">{{ 'es-icon-' + name }}</span>
|
|
28
|
+
</span>
|
|
29
|
+
</li>
|
|
30
|
+
</ul>
|
|
31
|
+
</el-scrollbar>
|
|
32
|
+
</es-dialog>
|
|
33
|
+
</div>
|
|
34
|
+
</template>
|
|
35
|
+
<script>
|
|
36
|
+
//import util from 'eoss-ui/src/utils/util';
|
|
37
|
+
export default {
|
|
38
|
+
name: 'EsIcon',
|
|
39
|
+
inheritAttrs: false,
|
|
40
|
+
props: {
|
|
41
|
+
value: String,
|
|
42
|
+
placeholder: {
|
|
43
|
+
type: String,
|
|
44
|
+
default: '请选择图标'
|
|
45
|
+
},
|
|
46
|
+
readonly: Boolean
|
|
47
|
+
},
|
|
48
|
+
computed: {
|
|
49
|
+
model: {
|
|
50
|
+
get() {
|
|
51
|
+
return this.value ? this.value : this.icon;
|
|
52
|
+
},
|
|
53
|
+
set(val) {
|
|
54
|
+
return val;
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
},
|
|
58
|
+
watch: {
|
|
59
|
+
model(val) {
|
|
60
|
+
this.$emit('change', val);
|
|
61
|
+
}
|
|
62
|
+
},
|
|
63
|
+
data() {
|
|
64
|
+
return {
|
|
65
|
+
icon: null,
|
|
66
|
+
visible: false
|
|
67
|
+
};
|
|
68
|
+
},
|
|
69
|
+
created() {
|
|
70
|
+
//this.loadsub(this.param);
|
|
71
|
+
},
|
|
72
|
+
methods: {
|
|
73
|
+
handleClick() {
|
|
74
|
+
this.visible = true;
|
|
75
|
+
},
|
|
76
|
+
handleSelect(name) {
|
|
77
|
+
this.$emit('input', `es-icon-${name}`);
|
|
78
|
+
this.icon = `es-icon-${name}`;
|
|
79
|
+
this.visible = false;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
};
|
|
83
|
+
</script>
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
* @Description: 异步加载网络UMD组件
|
|
3
|
+
* @Version: 1.0
|
|
4
|
+
* @Autor: zhaodongming
|
|
5
|
+
* @Date: 2022-12-01 16:32:36
|
|
6
|
+
* @LastEditors: zhaodongming
|
|
7
|
+
* @LastEditTime: 2023-01-18 11:49:54
|
|
8
|
+
-->
|
|
9
|
+
<template>
|
|
10
|
+
<component :is="comp" v-bind="$attrs" v-on="$listeners"></component>
|
|
11
|
+
</template>
|
|
12
|
+
|
|
13
|
+
<script>
|
|
14
|
+
import { importScript } from 'runtime-import';
|
|
15
|
+
import util from 'eoss-ui/src/utils/util'
|
|
16
|
+
export default {
|
|
17
|
+
name: 'AsyncComponent',
|
|
18
|
+
inheritAttrs: true,
|
|
19
|
+
props: {
|
|
20
|
+
componentRenderUrl: {
|
|
21
|
+
type: [String, Object],
|
|
22
|
+
default: ''
|
|
23
|
+
}
|
|
24
|
+
},
|
|
25
|
+
data() {
|
|
26
|
+
return {
|
|
27
|
+
comp: 'div'
|
|
28
|
+
};
|
|
29
|
+
},
|
|
30
|
+
watch: {
|
|
31
|
+
componentRenderUrl: {
|
|
32
|
+
immediate: true,
|
|
33
|
+
handler: function(newVal) {
|
|
34
|
+
this.handleImport(newVal);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
},
|
|
38
|
+
methods: {
|
|
39
|
+
async handleImport(url = '') {
|
|
40
|
+
try {
|
|
41
|
+
// 如果不是url,当作倒入组件名处理
|
|
42
|
+
if (
|
|
43
|
+
url.indexOf &&
|
|
44
|
+
(url.indexOf('http:') != -1 ||
|
|
45
|
+
url.indexOf('https:') != -1 ||
|
|
46
|
+
url.indexOf('/dev-api') != -1)
|
|
47
|
+
) {
|
|
48
|
+
// 获取缓存中的组件
|
|
49
|
+
const catchComponent = util.win[url];
|
|
50
|
+
if (catchComponent) {
|
|
51
|
+
// 渲染缓存中的组件
|
|
52
|
+
this.comp = catchComponent;
|
|
53
|
+
// 回传props内容
|
|
54
|
+
this.$emit('handleGetProps', this.comp.props);
|
|
55
|
+
} else {
|
|
56
|
+
// 加载远端umd格式组件内容
|
|
57
|
+
const comp = await importScript(url);
|
|
58
|
+
// 渲染远端组件并缓存到磁盘
|
|
59
|
+
if (!comp) {
|
|
60
|
+
this.$message.error('不是合规组件,请检查组件上传环境和语法');
|
|
61
|
+
return;
|
|
62
|
+
}
|
|
63
|
+
this.comp = comp;
|
|
64
|
+
util.win[url] = comp;
|
|
65
|
+
// 回传props内容
|
|
66
|
+
this.$emit('handleGetProps', this.comp.props);
|
|
67
|
+
}
|
|
68
|
+
} else {
|
|
69
|
+
// 如果不是url则当作文本片段处理
|
|
70
|
+
this.comp = url;
|
|
71
|
+
// 回传props内容
|
|
72
|
+
// this.$emit('handleGetProps', this.comp.props);
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
// }
|
|
76
|
+
// debugger;
|
|
77
|
+
} catch (err) {
|
|
78
|
+
console.error(err);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
};
|
|
83
|
+
</script>
|
|
84
|
+
|
|
85
|
+
<style lang="scss" scoped></style>
|
|
@@ -5,10 +5,17 @@
|
|
|
5
5
|
class="es-main-header"
|
|
6
6
|
:style="{ backgroundImage: headerImg ? 'url(' + headerImg + ')' : '' }"
|
|
7
7
|
>
|
|
8
|
+
<AsyncComponent
|
|
9
|
+
v-if="themeJSON.logo.comp"
|
|
10
|
+
:style="!themeJSON.topNav.comp ? 'width:100%' : ''"
|
|
11
|
+
:key="themeJSON.logo.comp"
|
|
12
|
+
v-bind="themeJSON.logo.data"
|
|
13
|
+
:componentRenderUrl="themeJSON.logo.comp"
|
|
14
|
+
/>
|
|
8
15
|
<img
|
|
9
16
|
class="es-main-logo"
|
|
10
17
|
:src="logoUrl"
|
|
11
|
-
v-if="modal !== 'topside' && logoUrl"
|
|
18
|
+
v-if="modal !== 'topside' && logoUrl && showDefault"
|
|
12
19
|
/>
|
|
13
20
|
<div class="es-main-top-nav">
|
|
14
21
|
<es-menu
|
|
@@ -27,7 +34,28 @@
|
|
|
27
34
|
"
|
|
28
35
|
></es-menu>
|
|
29
36
|
</div>
|
|
37
|
+
<AsyncComponent
|
|
38
|
+
v-if="themeJSON.topNav.comp"
|
|
39
|
+
:style="!themeJSON.logo.comp ? 'width:100%' : ''"
|
|
40
|
+
:hide="hide"
|
|
41
|
+
:subSystem="subsystem"
|
|
42
|
+
:online="online"
|
|
43
|
+
:application="application"
|
|
44
|
+
:storage="storage"
|
|
45
|
+
:notice="notice"
|
|
46
|
+
:data="handleData"
|
|
47
|
+
:key="themeJSON.topNav.comp"
|
|
48
|
+
v-bind="themeJSON.topNav.data"
|
|
49
|
+
:componentRenderUrl="themeJSON.topNav.comp"
|
|
50
|
+
@select="
|
|
51
|
+
(res) => {
|
|
52
|
+
handleSelect(res, 'sys');
|
|
53
|
+
}
|
|
54
|
+
"
|
|
55
|
+
@click="handleClick"
|
|
56
|
+
/>
|
|
30
57
|
<es-handler
|
|
58
|
+
v-if="showDefault"
|
|
31
59
|
:userModel="userModel"
|
|
32
60
|
:hide="hide"
|
|
33
61
|
:subSystem="subsystem"
|
|
@@ -55,8 +83,33 @@
|
|
|
55
83
|
@click="handleClick"
|
|
56
84
|
></es-handle-user>
|
|
57
85
|
</div>
|
|
86
|
+
<AsyncComponent
|
|
87
|
+
v-if="themeJSON.leftNav.comp"
|
|
88
|
+
:biserial="biserial"
|
|
89
|
+
:newTitle="showNavTitle ? title : false"
|
|
90
|
+
:default-active="active"
|
|
91
|
+
:menu-tips="menuTips"
|
|
92
|
+
:scene="scene"
|
|
93
|
+
:key="themeJSON.leftNav.comp"
|
|
94
|
+
v-bind="themeJSON.leftNav.data"
|
|
95
|
+
:componentRenderUrl="themeJSON.leftNav.comp"
|
|
96
|
+
:newMenu="menu"
|
|
97
|
+
:application="application"
|
|
98
|
+
:menuUrl="menuUrl"
|
|
99
|
+
@trigger="
|
|
100
|
+
(res) => {
|
|
101
|
+
handleSelect(res, 'sub');
|
|
102
|
+
}
|
|
103
|
+
"
|
|
104
|
+
@select="
|
|
105
|
+
(res) => {
|
|
106
|
+
handleSelect(res, 'menu');
|
|
107
|
+
}
|
|
108
|
+
"
|
|
109
|
+
@success="menuSuccess"
|
|
110
|
+
/>
|
|
58
111
|
<es-nav
|
|
59
|
-
v-if="showMenu"
|
|
112
|
+
v-if="showMenu && showDefault"
|
|
60
113
|
:data="menu"
|
|
61
114
|
:default-active="active"
|
|
62
115
|
:width="navWidth"
|
|
@@ -124,6 +177,19 @@
|
|
|
124
177
|
/></keep-alive>
|
|
125
178
|
</template>
|
|
126
179
|
</div>
|
|
180
|
+
<AsyncComponent
|
|
181
|
+
style="
|
|
182
|
+
position: absolute;
|
|
183
|
+
height: 60px;
|
|
184
|
+
bottom: 0;
|
|
185
|
+
left: 0;
|
|
186
|
+
right: 0;
|
|
187
|
+
"
|
|
188
|
+
v-if="themeJSON.copyright.comp"
|
|
189
|
+
:key="themeJSON.copyright.comp"
|
|
190
|
+
v-bind="themeJSON.copyright.data"
|
|
191
|
+
:componentRenderUrl="themeJSON.copyright.comp"
|
|
192
|
+
/>
|
|
127
193
|
<message
|
|
128
194
|
v-if="showMsg"
|
|
129
195
|
ref="message"
|
|
@@ -174,11 +240,13 @@ import userinfo from './userinfo.vue';
|
|
|
174
240
|
import settings from './settings.vue';
|
|
175
241
|
import message from './message.vue';
|
|
176
242
|
import notice from './notice.vue';
|
|
243
|
+
import AsyncComponent from './async-component/index.vue';
|
|
177
244
|
import {
|
|
178
245
|
mainConfig,
|
|
179
246
|
updateUserCustomInfo,
|
|
180
247
|
getComplexApplications,
|
|
181
248
|
getComplexApplicationsNew,
|
|
249
|
+
mainDetail,
|
|
182
250
|
wss,
|
|
183
251
|
topic
|
|
184
252
|
} from 'eoss-ui/src/config/api.js';
|
|
@@ -195,6 +263,7 @@ export default {
|
|
|
195
263
|
userinfo,
|
|
196
264
|
settings,
|
|
197
265
|
message,
|
|
266
|
+
AsyncComponent,
|
|
198
267
|
notice
|
|
199
268
|
},
|
|
200
269
|
props: {
|
|
@@ -298,6 +367,10 @@ export default {
|
|
|
298
367
|
remote: {
|
|
299
368
|
type: Boolean,
|
|
300
369
|
default: true
|
|
370
|
+
},
|
|
371
|
+
isCustomMain: {
|
|
372
|
+
type: Boolean,
|
|
373
|
+
default: false
|
|
301
374
|
}
|
|
302
375
|
},
|
|
303
376
|
computed: {
|
|
@@ -426,6 +499,13 @@ export default {
|
|
|
426
499
|
},
|
|
427
500
|
data() {
|
|
428
501
|
return {
|
|
502
|
+
showDefault: false,
|
|
503
|
+
themeJSON: {
|
|
504
|
+
logo: { comp: '', data: {} },
|
|
505
|
+
topNav: { comp: '', data: {} },
|
|
506
|
+
leftNav: { comp: '', data: {} },
|
|
507
|
+
copyright: { comp: '', data: {} }
|
|
508
|
+
},
|
|
429
509
|
pageLoading: false,
|
|
430
510
|
client: null,
|
|
431
511
|
websocket: null,
|
|
@@ -492,6 +572,8 @@ export default {
|
|
|
492
572
|
//是否展示侧边导航
|
|
493
573
|
showMenu: true,
|
|
494
574
|
props: {},
|
|
575
|
+
menuType: '',
|
|
576
|
+
customMenu: [],
|
|
495
577
|
//是否首次加载
|
|
496
578
|
isDefault: true,
|
|
497
579
|
reset: true,
|
|
@@ -529,6 +611,60 @@ export default {
|
|
|
529
611
|
util.win.windowOpen = this.openPage;
|
|
530
612
|
},
|
|
531
613
|
methods: {
|
|
614
|
+
menuSuccess(res) {
|
|
615
|
+
// this.menus
|
|
616
|
+
this.menuType = 'custom';
|
|
617
|
+
this.customMenu = res;
|
|
618
|
+
this.setMenu(res);
|
|
619
|
+
},
|
|
620
|
+
//获取主题模板JSON
|
|
621
|
+
getMainDetail(id) {
|
|
622
|
+
let params = {
|
|
623
|
+
url: mainDetail,
|
|
624
|
+
params: { id }
|
|
625
|
+
};
|
|
626
|
+
util
|
|
627
|
+
.ajax(params)
|
|
628
|
+
.then((res) => {
|
|
629
|
+
let _that = this;
|
|
630
|
+
if (!res.results) {
|
|
631
|
+
_that.showDefault = true;
|
|
632
|
+
}
|
|
633
|
+
if (res.rCode == 0) {
|
|
634
|
+
if (res.results && JSON.parse(res.results.layout)) {
|
|
635
|
+
// 初始化布局器
|
|
636
|
+
_that.themeJSON = JSON.parse(res.results.layout);
|
|
637
|
+
let count = 0;
|
|
638
|
+
for (let key in _that.themeJSON) {
|
|
639
|
+
if (_that.themeJSON[key].comp) {
|
|
640
|
+
count++;
|
|
641
|
+
}
|
|
642
|
+
}
|
|
643
|
+
if (count == 0) {
|
|
644
|
+
_that.showDefault = true;
|
|
645
|
+
}
|
|
646
|
+
let theme = JSON.parse(res.results.theme);
|
|
647
|
+
|
|
648
|
+
util.updateTheme(theme.primaryColor);
|
|
649
|
+
_that.handleColorToPage(theme.globalThalk);
|
|
650
|
+
}
|
|
651
|
+
} else {
|
|
652
|
+
_that.$message.error('主题加载发生错误');
|
|
653
|
+
throw res.msg || '系统错误,请联系管理员!';
|
|
654
|
+
}
|
|
655
|
+
if (_that.showDefault && _that.data === undefined) {
|
|
656
|
+
_that.getMenu();
|
|
657
|
+
} else if (_that.showDefault) {
|
|
658
|
+
_that.menus = JSON.parse(JSON.stringify(_that.data));
|
|
659
|
+
_that.setMenu(_that.data);
|
|
660
|
+
}
|
|
661
|
+
})
|
|
662
|
+
.catch((err) => {
|
|
663
|
+
if (err.message && err.message !== 'canceled') {
|
|
664
|
+
this.$message.error(err.message);
|
|
665
|
+
}
|
|
666
|
+
});
|
|
667
|
+
},
|
|
532
668
|
renderMenu() {
|
|
533
669
|
if (this.data !== undefined && this.data.length) {
|
|
534
670
|
this.menus = JSON.parse(JSON.stringify(this.data));
|
|
@@ -657,6 +793,14 @@ export default {
|
|
|
657
793
|
store.set(i, results[i]);
|
|
658
794
|
}
|
|
659
795
|
this.userModel = results.userModel;
|
|
796
|
+
let mainFrameLayout = results.mainFrameLayout;
|
|
797
|
+
if (results.userStyle.layout && this.isCustomMain) {
|
|
798
|
+
this.getMainDetail(results.userStyle.layout);
|
|
799
|
+
} else if (this.isCustomMain) {
|
|
800
|
+
this.getMainDetail(mainFrameLayout);
|
|
801
|
+
} else {
|
|
802
|
+
this.showDefault = true;
|
|
803
|
+
}
|
|
660
804
|
},
|
|
661
805
|
//获取用户配置及信息
|
|
662
806
|
getConfig() {
|
|
@@ -824,10 +968,19 @@ export default {
|
|
|
824
968
|
}
|
|
825
969
|
if (this.modal === 'subsystem' || this.modal === 'topside') {
|
|
826
970
|
if (this.modal === 'subsystem') {
|
|
827
|
-
this.
|
|
971
|
+
if (this.menuType === 'custom') {
|
|
972
|
+
this.subsystem = this.customMenu;
|
|
973
|
+
} else {
|
|
974
|
+
this.subsystem = res;
|
|
975
|
+
}
|
|
828
976
|
} else if (this.modal === 'topside') {
|
|
829
|
-
this.
|
|
830
|
-
|
|
977
|
+
if (this.menuType === 'custom') {
|
|
978
|
+
this.navs = this.customMenu;
|
|
979
|
+
this.topActive = res[0].id;
|
|
980
|
+
} else {
|
|
981
|
+
this.navs = res;
|
|
982
|
+
this.topActive = res[0].id;
|
|
983
|
+
}
|
|
831
984
|
}
|
|
832
985
|
if (this.application) {
|
|
833
986
|
for (let i = 0; i < res.length; i++) {
|
|
@@ -845,8 +998,13 @@ export default {
|
|
|
845
998
|
this.active = this.getFirst(this.menu[0]);
|
|
846
999
|
}
|
|
847
1000
|
} else if (this.modal === 'topnav') {
|
|
848
|
-
this.
|
|
849
|
-
|
|
1001
|
+
if (this.menuType === 'custom') {
|
|
1002
|
+
this.navs = this.customMenu;
|
|
1003
|
+
this.topActive = this.getFirst(res[0]);
|
|
1004
|
+
} else {
|
|
1005
|
+
this.navs = res;
|
|
1006
|
+
this.topActive = this.getFirst(res[0]);
|
|
1007
|
+
}
|
|
850
1008
|
} else {
|
|
851
1009
|
this.menu = res;
|
|
852
1010
|
if (!this.isDefault) {
|
|
@@ -956,16 +1114,26 @@ export default {
|
|
|
956
1114
|
this.modal === 'topSide'
|
|
957
1115
|
) {
|
|
958
1116
|
if (this.modal === 'subsystem' || this.modal === 'subSystem') {
|
|
959
|
-
this.
|
|
960
|
-
|
|
1117
|
+
if (this.menuType === 'custom') {
|
|
1118
|
+
this.subsystem = this.customMenu;
|
|
1119
|
+
this.sysId = active[0];
|
|
1120
|
+
} else {
|
|
1121
|
+
this.subsystem = res;
|
|
1122
|
+
this.sysId = active[0];
|
|
1123
|
+
}
|
|
961
1124
|
} else if (
|
|
962
1125
|
this.modal === 'topnav' ||
|
|
963
1126
|
this.modal === 'topNav' ||
|
|
964
1127
|
this.modal === 'topside' ||
|
|
965
1128
|
this.modal === 'topSide'
|
|
966
1129
|
) {
|
|
967
|
-
this.
|
|
968
|
-
|
|
1130
|
+
if (this.menuType === 'custom') {
|
|
1131
|
+
this.navs = this.customMenu;
|
|
1132
|
+
this.topActive = active[0];
|
|
1133
|
+
} else {
|
|
1134
|
+
this.navs = res;
|
|
1135
|
+
this.topActive = active[0];
|
|
1136
|
+
}
|
|
969
1137
|
}
|
|
970
1138
|
if (this.tabs.length || this.isTabs) {
|
|
971
1139
|
this.tabsId = active[active.length - 1];
|
|
@@ -1173,7 +1341,7 @@ export default {
|
|
|
1173
1341
|
if (this.homePage) {
|
|
1174
1342
|
this.handleJump(this.homePage);
|
|
1175
1343
|
}
|
|
1176
|
-
this.active =
|
|
1344
|
+
this.active = [];
|
|
1177
1345
|
this.defaultActive = [];
|
|
1178
1346
|
this.tabs = [];
|
|
1179
1347
|
this.setMenu(this.menus);
|
|
@@ -1215,6 +1383,7 @@ export default {
|
|
|
1215
1383
|
},
|
|
1216
1384
|
//跳转页面
|
|
1217
1385
|
handleJump(page, type, res) {
|
|
1386
|
+
console.log(page);
|
|
1218
1387
|
if (util.win.location.hash === page) {
|
|
1219
1388
|
this.refresh = true;
|
|
1220
1389
|
return;
|
|
@@ -290,8 +290,9 @@ export default {
|
|
|
290
290
|
},
|
|
291
291
|
getData(sysCode, param, reload) {
|
|
292
292
|
if (
|
|
293
|
-
!
|
|
294
|
-
(!this.
|
|
293
|
+
!reload &&
|
|
294
|
+
(!this.ajax ||
|
|
295
|
+
(!this.isNoParamRequest && Object.keys(this.param).length == 0))
|
|
295
296
|
) {
|
|
296
297
|
return false;
|
|
297
298
|
}
|
|
@@ -328,6 +329,8 @@ export default {
|
|
|
328
329
|
if (sysCode) {
|
|
329
330
|
store.set(sysCode, JSON.parse(JSON.stringify(this.options)));
|
|
330
331
|
}
|
|
332
|
+
} else {
|
|
333
|
+
this.$message.error(res.msg);
|
|
331
334
|
}
|
|
332
335
|
})
|
|
333
336
|
.catch((err) => {
|
|
@@ -472,8 +475,8 @@ export default {
|
|
|
472
475
|
}
|
|
473
476
|
return '';
|
|
474
477
|
},
|
|
475
|
-
reload(
|
|
476
|
-
this.getData(
|
|
478
|
+
reload() {
|
|
479
|
+
this.getData(...arguments);
|
|
477
480
|
},
|
|
478
481
|
handleExpand(data, node) {
|
|
479
482
|
if (this.onExpand) {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.es-icon{display:inline-block}.es-icon.es-icon-readonly{-webkit-appearance:none;background-color:#fff;background-image:none;border-radius:3px;border:1px solid #d9d9d9;-webkit-box-sizing:border-box;box-sizing:border-box;color:rgba(0,0,0,.75);display:inline-block;font-size:inherit;height:40px;line-height:40px;outline:0;padding:0 15px;-webkit-transition:border-color .2s cubic-bezier(.645,.045,.355,1);transition:border-color .2s cubic-bezier(.645,.045,.355,1);width:100%;position:relative}.es-icon .el-input-group__prepend{width:auto;line-height:38px;position:absolute;z-index:3;left:2px;top:2px;right:62px;bottom:2px;border:0;background-color:#fff;padding:0 12px}.es-icon .es-iconfont{color:#606266;font-size:20px}.es-icon .el-input__inner{border-radius:3px!important;color:transparent;padding-right:60px}.es-icon .el-input__suffix{height:auto;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.es-icon-list{clear:both;overflow:hidden;list-style:none;padding:0!important;border:1px solid #eaeefb;border-radius:4px}.es-icon-list li{float:left;width:148px;text-align:center;height:120px;line-height:120px;color:#666;font-size:13px;border-right:1px solid #eee;border-bottom:1px solid #eee;margin-right:-1px;margin-bottom:-1px;-webkit-box-sizing:border-box;box-sizing:border-box}.es-icon-list li span{display:inline-block;line-height:normal;vertical-align:middle;font-family:'Helvetica Neue',Helvetica,'PingFang SC','Hiragino Sans GB','Microsoft YaHei',SimSun,sans-serif;color:#99a9bf;-webkit-transition:color .15s linear;transition:color .15s linear}.es-icon-list li i{display:block;font-size:32px;margin-bottom:15px;color:#606266;-webkit-transition:color .15s linear;transition:color .15s linear}.es-icon-list li .icon-name{display:inline-block;padding:0 3px;height:1em}.es-icon-list li:hover i,.es-icon-list li:hover span{color:#5cb6ff}
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
.es-icon {
|
|
2
|
+
display: inline-block;
|
|
3
|
+
&.es-icon-readonly {
|
|
4
|
+
-webkit-appearance: none;
|
|
5
|
+
background-color: #fff;
|
|
6
|
+
background-image: none;
|
|
7
|
+
border-radius: 3px;
|
|
8
|
+
border: 1px solid #d9d9d9;
|
|
9
|
+
-webkit-box-sizing: border-box;
|
|
10
|
+
box-sizing: border-box;
|
|
11
|
+
color: rgba(0, 0, 0, 0.75);
|
|
12
|
+
display: inline-block;
|
|
13
|
+
font-size: inherit;
|
|
14
|
+
height: 40px;
|
|
15
|
+
line-height: 40px;
|
|
16
|
+
outline: 0;
|
|
17
|
+
padding: 0 15px;
|
|
18
|
+
-webkit-transition: border-color 0.2s cubic-bezier(0.645, 0.045, 0.355, 1);
|
|
19
|
+
transition: border-color 0.2s cubic-bezier(0.645, 0.045, 0.355, 1);
|
|
20
|
+
width: 100%;
|
|
21
|
+
position: relative;
|
|
22
|
+
}
|
|
23
|
+
.el-input-group__prepend {
|
|
24
|
+
width: auto;
|
|
25
|
+
line-height: 38px;
|
|
26
|
+
position: absolute;
|
|
27
|
+
z-index: 3;
|
|
28
|
+
left: 2px;
|
|
29
|
+
top: 2px;
|
|
30
|
+
right: 62px;
|
|
31
|
+
bottom: 2px;
|
|
32
|
+
border: 0;
|
|
33
|
+
background-color: #fff;
|
|
34
|
+
padding: 0 12px;
|
|
35
|
+
}
|
|
36
|
+
.es-iconfont {
|
|
37
|
+
color: #606266;
|
|
38
|
+
font-size: 20px;
|
|
39
|
+
}
|
|
40
|
+
.el-input__inner {
|
|
41
|
+
border-radius: 3px !important;
|
|
42
|
+
color: transparent;
|
|
43
|
+
padding-right: 60px;
|
|
44
|
+
}
|
|
45
|
+
.el-input__suffix {
|
|
46
|
+
height: auto;
|
|
47
|
+
top: 50%;
|
|
48
|
+
transform: translateY(-50%);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
.es-icon-list {
|
|
52
|
+
clear: both;
|
|
53
|
+
overflow: hidden;
|
|
54
|
+
list-style: none;
|
|
55
|
+
padding: 0 !important;
|
|
56
|
+
border: 1px solid #eaeefb;
|
|
57
|
+
border-radius: 4px;
|
|
58
|
+
li {
|
|
59
|
+
float: left;
|
|
60
|
+
width: 148px;
|
|
61
|
+
text-align: center;
|
|
62
|
+
height: 120px;
|
|
63
|
+
line-height: 120px;
|
|
64
|
+
color: #666;
|
|
65
|
+
font-size: 13px;
|
|
66
|
+
border-right: 1px solid #eee;
|
|
67
|
+
border-bottom: 1px solid #eee;
|
|
68
|
+
margin-right: -1px;
|
|
69
|
+
margin-bottom: -1px;
|
|
70
|
+
box-sizing: border-box;
|
|
71
|
+
span {
|
|
72
|
+
display: inline-block;
|
|
73
|
+
line-height: normal;
|
|
74
|
+
vertical-align: middle;
|
|
75
|
+
font-family: 'Helvetica Neue', Helvetica, 'PingFang SC',
|
|
76
|
+
'Hiragino Sans GB', 'Microsoft YaHei', SimSun, sans-serif;
|
|
77
|
+
color: #99a9bf;
|
|
78
|
+
transition: color 0.15s linear;
|
|
79
|
+
}
|
|
80
|
+
i {
|
|
81
|
+
display: block;
|
|
82
|
+
font-size: 32px;
|
|
83
|
+
margin-bottom: 15px;
|
|
84
|
+
color: #606266;
|
|
85
|
+
transition: color 0.15s linear;
|
|
86
|
+
}
|
|
87
|
+
.icon-name {
|
|
88
|
+
display: inline-block;
|
|
89
|
+
padding: 0 3px;
|
|
90
|
+
height: 1em;
|
|
91
|
+
}
|
|
92
|
+
&:hover {
|
|
93
|
+
i,
|
|
94
|
+
span {
|
|
95
|
+
color: #5cb6ff;
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
}
|
package/src/config/api.js
CHANGED
|
@@ -196,7 +196,7 @@ export const taskUnionSeal = '/bpm/task/taskHandle/taskUnionSeal.dhtml';
|
|
|
196
196
|
// 报送两办
|
|
197
197
|
export const toTwoOfficesDispatch = '/bpm/bpmBackend/toTwoOfficesDispatch';
|
|
198
198
|
// 报送两办提交
|
|
199
|
-
export const twoOfficesDispatch = 'task/taskHandle/twoOfficesDispatch.dhtml';
|
|
199
|
+
export const twoOfficesDispatch = '/bpm/task/taskHandle/twoOfficesDispatch.dhtml';
|
|
200
200
|
|
|
201
201
|
// notifySend 消息发送
|
|
202
202
|
export const sendList = '/notify2/notifySendRecord/listJson';
|
package/src/index.js
CHANGED
|
@@ -18,6 +18,7 @@ import FlowGroup from '../packages/flow-group/index.js';
|
|
|
18
18
|
import FlowList from '../packages/flow-list/index.js';
|
|
19
19
|
import HandleUser from '../packages/handle-user/index.js';
|
|
20
20
|
import Handler from '../packages/handler/index.js';
|
|
21
|
+
import Icon from '../packages/icon/index.js';
|
|
21
22
|
import Input from '../packages/input/index.js';
|
|
22
23
|
import InputNumber from '../packages/input-number/index.js';
|
|
23
24
|
import Label from '../packages/label/index.js';
|
|
@@ -69,6 +70,7 @@ const components = [
|
|
|
69
70
|
FlowList,
|
|
70
71
|
HandleUser,
|
|
71
72
|
Handler,
|
|
73
|
+
Icon,
|
|
72
74
|
Input,
|
|
73
75
|
InputNumber,
|
|
74
76
|
Label,
|
|
@@ -113,7 +115,7 @@ if (typeof window !== 'undefined' && window.Vue) {
|
|
|
113
115
|
}
|
|
114
116
|
|
|
115
117
|
export default {
|
|
116
|
-
version: '0.4.
|
|
118
|
+
version: '0.4.23',
|
|
117
119
|
install,
|
|
118
120
|
Button,
|
|
119
121
|
ButtonGroup,
|
|
@@ -133,6 +135,7 @@ export default {
|
|
|
133
135
|
FlowList,
|
|
134
136
|
HandleUser,
|
|
135
137
|
Handler,
|
|
138
|
+
Icon,
|
|
136
139
|
Input,
|
|
137
140
|
InputNumber,
|
|
138
141
|
Label,
|