eoss-ui 0.7.27 → 0.7.29
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 +35 -16
- package/lib/button.js +35 -16
- package/lib/calogin.js +268 -249
- package/lib/checkbox-group.js +35 -16
- package/lib/data-table-form.js +35 -16
- package/lib/data-table.js +47 -24
- package/lib/date-picker.js +35 -16
- package/lib/dialog.js +35 -16
- package/lib/eoss-ui.common.js +1777 -1427
- package/lib/flow-group.js +38 -19
- package/lib/flow-list.js +116 -97
- package/lib/flow.js +478 -411
- package/lib/form.js +35 -16
- package/lib/handle-user.js +35 -16
- package/lib/handler.js +35 -16
- package/lib/icon.js +35 -16
- package/lib/index.js +1 -1
- package/lib/input-number.js +35 -16
- package/lib/input.js +35 -16
- package/lib/login.js +256 -126
- package/lib/main.js +742 -554
- package/lib/menu.js +0 -1
- package/lib/nav.js +35 -16
- package/lib/page.js +35 -16
- package/lib/pagination.js +35 -16
- package/lib/player.js +35 -16
- package/lib/qr-code.js +48 -29
- package/lib/radio-group.js +35 -16
- package/lib/retrial-auth.js +35 -16
- package/lib/select-ganged.js +35 -16
- package/lib/select.js +35 -16
- package/lib/selector-panel.js +35 -16
- package/lib/selector.js +35 -16
- package/lib/sizer.js +35 -16
- package/lib/steps.js +35 -16
- package/lib/switch.js +35 -16
- package/lib/table-form.js +35 -16
- package/lib/tabs.js +35 -16
- package/lib/tips.js +35 -16
- package/lib/tree-group.js +35 -16
- package/lib/tree.js +35 -16
- package/lib/upload.js +35 -16
- package/lib/utils/util.js +31 -12
- package/lib/wujie.js +35 -16
- package/lib/wxlogin.js +35 -16
- package/package.json +160 -160
- package/packages/.DS_Store +0 -0
- package/packages/button/index.js +5 -5
- package/packages/button/src/main.vue +418 -418
- package/packages/button-group/index.js +5 -5
- package/packages/button-group/src/main.vue +346 -346
- package/packages/calendar/index.js +5 -5
- package/packages/calogin/.DS_Store +0 -0
- package/packages/calogin/index.js +5 -5
- package/packages/calogin/src/main.vue +412 -412
- package/packages/calogin/src/plugin.js +915 -915
- package/packages/card/index.js +5 -5
- package/packages/card/src/main.vue +156 -156
- package/packages/cascader/index.js +5 -5
- package/packages/cascader/src/main.vue +168 -168
- package/packages/checkbox-group/index.js +5 -5
- package/packages/checkbox-group/src/main.vue +333 -333
- package/packages/clients/index.js +5 -5
- package/packages/clients/src/main.vue +151 -151
- package/packages/data-table/index.js +5 -5
- package/packages/data-table/src/children.vue +39 -39
- package/packages/data-table/src/column.vue +992 -988
- package/packages/data-table/src/main.vue +1831 -1831
- package/packages/data-table/src/sizer.vue +195 -195
- package/packages/data-table-form/index.js +5 -5
- package/packages/data-table-form/src/checkbox.vue +101 -101
- package/packages/data-table-form/src/colgroup.vue +17 -17
- package/packages/data-table-form/src/main.vue +181 -181
- package/packages/data-table-form/src/radio.vue +65 -65
- package/packages/data-table-form/src/table.vue +233 -233
- package/packages/data-table-form/src/tbody.vue +336 -336
- package/packages/data-table-form/src/thead.vue +68 -68
- package/packages/date-picker/.DS_Store +0 -0
- package/packages/date-picker/index.js +5 -5
- package/packages/date-picker/src/.DS_Store +0 -0
- package/packages/date-picker/src/main.vue +236 -236
- package/packages/dialog/index.js +5 -5
- package/packages/enable-drag/index.js +5 -5
- package/packages/enterprise/index.js +5 -5
- package/packages/enterprise/src/main.vue +66 -66
- package/packages/error-page/index.js +5 -5
- package/packages/error-page/src/main.vue +44 -44
- package/packages/flow/.DS_Store +0 -0
- package/packages/flow/index.js +5 -5
- package/packages/flow/src/.DS_Store +0 -0
- package/packages/flow/src/component/Circulate.vue +413 -413
- package/packages/flow/src/component/CommonOpinions.vue +373 -373
- package/packages/flow/src/component/CustomPreset.vue +322 -322
- package/packages/flow/src/component/FileList.vue +97 -97
- package/packages/flow/src/component/FreeCirculation.vue +240 -240
- package/packages/flow/src/component/Preset.vue +255 -255
- package/packages/flow/src/component/SendMsg.vue +242 -242
- package/packages/flow/src/component/TimeLimit.vue +190 -190
- package/packages/flow/src/component/taskUnionExamine.vue +755 -755
- package/packages/flow/src/form.vue +121 -121
- package/packages/flow/src/freeStartFlow.vue +2847 -2847
- package/packages/flow/src/main.vue +3855 -3854
- package/packages/flow/src/processForm.vue +1365 -1363
- package/packages/flow/src/processReject.vue +309 -309
- package/packages/flow/src/reset.vue +941 -941
- package/packages/flow/src/startTaskRead.vue +691 -691
- package/packages/flow/src/supervise.vue +159 -159
- package/packages/flow/src/table.vue +58 -58
- package/packages/flow-group/index.js +5 -5
- package/packages/flow-group/src/main.vue +717 -717
- package/packages/flow-list/.DS_Store +0 -0
- package/packages/flow-list/index.js +5 -5
- package/packages/flow-list/src/main.vue +1787 -1787
- package/packages/form/.DS_Store +0 -0
- package/packages/form/index.js +5 -5
- package/packages/form/src/main.vue +3901 -3901
- package/packages/form/src/table.vue +1512 -1512
- package/packages/handle-user/index.js +5 -5
- package/packages/handle-user/src/main.vue +137 -137
- package/packages/handler/index.js +5 -5
- package/packages/handler/src/main.vue +496 -496
- package/packages/icon/index.js +5 -5
- package/packages/icon/src/main.vue +104 -104
- package/packages/icons/index.js +5 -5
- package/packages/icons/src/main.vue +81 -81
- package/packages/input/index.js +5 -5
- package/packages/input/src/main.vue +356 -356
- package/packages/input-number/index.js +5 -5
- package/packages/input-number/src/main.vue +106 -106
- package/packages/label/index.js +5 -5
- package/packages/label/src/main.vue +457 -457
- package/packages/layout/index.js +5 -5
- package/packages/layout/src/item.vue +152 -152
- package/packages/layout/src/main.vue +31 -31
- package/packages/login/.DS_Store +0 -0
- package/packages/login/index.js +5 -5
- package/packages/login/src/main.vue +2068 -2020
- package/packages/login/src/resetPassword.vue +557 -557
- package/packages/main/.DS_Store +0 -0
- package/packages/main/index.js +5 -5
- package/packages/main/src/.DS_Store +0 -0
- package/packages/main/src/default/index.vue +2 -2
- package/packages/main/src/default/message.vue +249 -249
- package/packages/main/src/default/notice.vue +157 -157
- package/packages/main/src/default/userinfo.vue +502 -502
- package/packages/main/src/main.vue +165 -69
- package/packages/main/src/public/online.vue +89 -89
- package/packages/main/src/public/search.vue +464 -464
- package/packages/main/src/public/settings.vue +221 -221
- package/packages/main/src/simplicity/apps.vue +388 -388
- package/packages/main/src/simplicity/avatar.vue +82 -82
- package/packages/main/src/simplicity/handler.vue +144 -263
- package/packages/main/src/simplicity/index.vue +2253 -2135
- package/packages/main/src/simplicity/lists.vue +84 -84
- package/packages/main/src/simplicity/menu-list.vue +135 -135
- package/packages/main/src/simplicity/message.vue +259 -259
- package/packages/main/src/simplicity/notice.vue +190 -190
- package/packages/main/src/simplicity/router-page.vue +45 -45
- package/packages/main/src/simplicity/sub-menu.vue +266 -264
- package/packages/main/src/simplicity/user.vue +259 -259
- package/packages/main/src/simplicity/userinfo.vue +398 -398
- package/packages/menu/.DS_Store +0 -0
- package/packages/menu/index.js +5 -5
- package/packages/menu/src/main.vue +595 -596
- package/packages/nav/index.js +5 -5
- package/packages/nav/src/main.vue +351 -351
- package/packages/notify/index.js +5 -5
- package/packages/notify/src/main.vue +538 -538
- package/packages/page/index.js +5 -5
- package/packages/page/src/main.vue +167 -167
- package/packages/pagination/index.js +5 -5
- package/packages/pagination/src/main.vue +96 -96
- package/packages/player/index.js +5 -5
- package/packages/player/src/main.vue +194 -194
- package/packages/qr-code/index.js +5 -5
- package/packages/qr-code/src/main.vue +170 -170
- package/packages/radio-group/index.js +6 -6
- package/packages/radio-group/src/main.vue +319 -319
- package/packages/retrial-auth/index.js +5 -5
- package/packages/retrial-auth/src/main.vue +280 -280
- package/packages/select/.DS_Store +0 -0
- package/packages/select/index.js +5 -5
- package/packages/select/src/main.vue +782 -782
- package/packages/select-ganged/index.js +5 -5
- package/packages/select-ganged/src/main.vue +724 -724
- package/packages/selector/.DS_Store +0 -0
- package/packages/selector/index.js +5 -5
- package/packages/selector/src/main.vue +761 -761
- package/packages/selector-panel/.DS_Store +0 -0
- package/packages/selector-panel/index.js +5 -5
- package/packages/selector-panel/src/main.vue +1027 -1027
- package/packages/selector-panel/src/selection.vue +170 -170
- package/packages/selector-panel/src/tree.vue +129 -129
- package/packages/sizer/index.js +5 -5
- package/packages/sizer/src/main.vue +254 -254
- package/packages/steps/index.js +5 -5
- package/packages/steps/src/main.vue +181 -181
- package/packages/switch/index.js +5 -5
- package/packages/switch/src/main.vue +170 -170
- package/packages/table-form/index.js +5 -5
- package/packages/tabs/index.js +5 -5
- package/packages/tabs/src/main.vue +788 -788
- package/packages/tabs-panel/index.js +5 -5
- package/packages/tabs-panel/src/main.vue +29 -29
- package/packages/theme-chalk/src/.DS_Store +0 -0
- package/packages/theme-chalk/src/base.scss +261 -261
- package/packages/theme-chalk/src/button-group.scss +176 -176
- package/packages/theme-chalk/src/button.scss +24 -24
- package/packages/theme-chalk/src/calendar.scss +113 -113
- package/packages/theme-chalk/src/card.scss +99 -99
- package/packages/theme-chalk/src/checkbox-group.scss +8 -8
- package/packages/theme-chalk/src/clients.scss +87 -87
- package/packages/theme-chalk/src/data-table-form.scss +67 -67
- package/packages/theme-chalk/src/data-table.scss +293 -293
- package/packages/theme-chalk/src/date-picker.scss +7 -7
- package/packages/theme-chalk/src/dialog.scss +77 -77
- package/packages/theme-chalk/src/enable-drag.scss +181 -181
- package/packages/theme-chalk/src/enterprise.scss +5 -5
- package/packages/theme-chalk/src/error-page.scss +18 -18
- package/packages/theme-chalk/src/flow-group.scss +110 -110
- package/packages/theme-chalk/src/flow-list.scss +39 -39
- package/packages/theme-chalk/src/flow.scss +351 -351
- package/packages/theme-chalk/src/form.scss +501 -501
- package/packages/theme-chalk/src/handle-user.scss +40 -40
- package/packages/theme-chalk/src/handler.scss +148 -148
- package/packages/theme-chalk/src/icon.scss +1817 -1817
- package/packages/theme-chalk/src/icons.scss +99 -99
- package/packages/theme-chalk/src/input.scss +9 -9
- package/packages/theme-chalk/src/label.scss +24 -24
- package/packages/theme-chalk/src/layout.scss +46 -46
- package/packages/theme-chalk/src/login.scss +987 -987
- package/packages/theme-chalk/src/main.scss +663 -663
- package/packages/theme-chalk/src/menu.scss +224 -224
- package/packages/theme-chalk/src/mixins/color.scss +117 -117
- package/packages/theme-chalk/src/nav.scss +111 -111
- package/packages/theme-chalk/src/page.scss +3 -3
- package/packages/theme-chalk/src/pagination.scss +29 -29
- package/packages/theme-chalk/src/player.scss +9 -9
- package/packages/theme-chalk/src/qr-code.scss +17 -17
- package/packages/theme-chalk/src/radio-group.scss +9 -9
- package/packages/theme-chalk/src/retrial-auth.scss +38 -38
- package/packages/theme-chalk/src/select-ganged.scss +8 -8
- package/packages/theme-chalk/src/select.scss +8 -8
- package/packages/theme-chalk/src/selector-panel.scss +204 -204
- package/packages/theme-chalk/src/selector.scss +92 -92
- package/packages/theme-chalk/src/simplicity.scss +1370 -1370
- package/packages/theme-chalk/src/sizer.scss +36 -36
- package/packages/theme-chalk/src/steps.scss +88 -88
- package/packages/theme-chalk/src/switch.scss +3 -3
- package/packages/theme-chalk/src/table-form.scss +1 -1
- package/packages/theme-chalk/src/tabs.scss +87 -87
- package/packages/theme-chalk/src/tips.scss +7 -7
- package/packages/theme-chalk/src/toolbar.scss +179 -179
- package/packages/theme-chalk/src/tree-group.scss +72 -72
- package/packages/theme-chalk/src/tree.scss +165 -165
- package/packages/theme-chalk/src/upload.scss +172 -172
- package/packages/theme-chalk/src/wxlogin.scss +3 -3
- package/packages/tips/index.js +5 -5
- package/packages/tips/src/main.vue +141 -141
- package/packages/toolbar/index.js +5 -5
- package/packages/toolbar/src/main.vue +430 -430
- package/packages/tree/index.js +5 -5
- package/packages/tree-group/index.js +5 -5
- package/packages/upload/.DS_Store +0 -0
- package/packages/upload/index.js +5 -5
- package/packages/upload/src/main.vue +1343 -1343
- package/packages/upload/src/picture.js +15 -15
- package/packages/wujie/index.js +5 -5
- package/packages/wujie/src/main.vue +145 -145
- package/packages/wxlogin/index.js +5 -5
- package/packages/wxlogin/src/main.vue +128 -128
- package/src/.DS_Store +0 -0
- package/src/config/api.js +315 -315
- package/src/config/image.js +2 -2
- package/src/index.js +163 -163
- package/src/utils/.DS_Store +0 -0
- package/src/utils/bus.js +3 -3
- package/src/utils/date-util.js +312 -312
- package/src/utils/http.js +50 -50
- package/src/utils/rules.js +18 -18
- package/src/utils/store.js +21 -21
- package/src/utils/util.js +31 -12
- package/src/utils/webSocket.js +107 -107
|
@@ -25,24 +25,33 @@
|
|
|
25
25
|
<!-- 公用弹窗 -->
|
|
26
26
|
<es-dialog
|
|
27
27
|
v-for="(item, index) in dialogs"
|
|
28
|
-
:visible.sync="
|
|
29
|
-
:key="item.id || item.name || index"
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
attrs: ['visible', 'url']
|
|
35
|
-
})
|
|
36
|
-
"
|
|
28
|
+
:visible.sync="item.visible"
|
|
29
|
+
:key="item.appCode || item.id || item.name || index"
|
|
30
|
+
:title="item.name"
|
|
31
|
+
:width="item.width"
|
|
32
|
+
:height="item.height"
|
|
33
|
+
:size="item.size"
|
|
37
34
|
@close="handleClosed(item, index)"
|
|
38
35
|
>
|
|
39
|
-
<
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
36
|
+
<template v-if="item.visible">
|
|
37
|
+
<es-wujie
|
|
38
|
+
v-if="item.openModel === 'wujie' && !isIE"
|
|
39
|
+
:host="host"
|
|
40
|
+
:show="true"
|
|
41
|
+
:name="item.appCode"
|
|
42
|
+
:url="item.url"
|
|
43
|
+
:props="item"
|
|
44
|
+
></es-wujie>
|
|
45
|
+
<iframe
|
|
46
|
+
v-else
|
|
47
|
+
width="100%"
|
|
48
|
+
height="100%"
|
|
49
|
+
frameborder="0"
|
|
50
|
+
:id="item.appCode || item.id"
|
|
51
|
+
:src="item.url"
|
|
52
|
+
@load="(event) => handleIframeLoad(event.target, item)"
|
|
53
|
+
></iframe>
|
|
54
|
+
</template>
|
|
46
55
|
</es-dialog>
|
|
47
56
|
<!-- 公用弹窗 end -->
|
|
48
57
|
</div>
|
|
@@ -53,6 +62,7 @@ import Simplicity from './simplicity/index.vue';
|
|
|
53
62
|
import MainDefault from './default/index.vue';
|
|
54
63
|
import util from 'eoss-ui/src/utils/util';
|
|
55
64
|
import WujieVue from 'wujie-vue2';
|
|
65
|
+
import { size } from 'lodash';
|
|
56
66
|
export default {
|
|
57
67
|
name: 'EsMain',
|
|
58
68
|
inheritAttrs: false,
|
|
@@ -102,7 +112,8 @@ export default {
|
|
|
102
112
|
visibles: [],
|
|
103
113
|
isLogin: false,
|
|
104
114
|
layoutType: this.type,
|
|
105
|
-
layout: this.scene
|
|
115
|
+
layout: this.scene,
|
|
116
|
+
isIE: /MSIE|Trident/.test(navigator.userAgent)
|
|
106
117
|
};
|
|
107
118
|
},
|
|
108
119
|
created() {
|
|
@@ -142,6 +153,8 @@ export default {
|
|
|
142
153
|
if (bus) {
|
|
143
154
|
bus.$on('reLogin', this.handleReLogin);
|
|
144
155
|
bus.$on('refresh', this.$refs.main.handleRefresh);
|
|
156
|
+
bus.$on('windowOpen', this.winOpen);
|
|
157
|
+
bus.$on('windowClose', this.winClose);
|
|
145
158
|
bus.$on('jumpMenu', this.$refs.main.jumpMenu);
|
|
146
159
|
bus.$on('emit', (method, args) => {
|
|
147
160
|
// 主应用发送事件
|
|
@@ -149,65 +162,21 @@ export default {
|
|
|
149
162
|
});
|
|
150
163
|
}
|
|
151
164
|
util.win.reLogin = this.handleReLogin;
|
|
152
|
-
util.win.windowOpen = this.
|
|
165
|
+
util.win.windowOpen = this.winOpen;
|
|
166
|
+
util.win.windowClose = this.winClose;
|
|
153
167
|
util.win.refresh = this.$refs.main.handleRefresh;
|
|
154
168
|
util.win.jumpMenu = this.$refs.main.jumpMenu;
|
|
155
169
|
WujieVue.bus.$on('reLogin', this.handleReLogin);
|
|
156
170
|
WujieVue.bus.$on('refresh', this.$refs.main.handleRefresh);
|
|
157
171
|
WujieVue.bus.$on('jumpMenu', this.$refs.main.jumpMenu);
|
|
172
|
+
WujieVue.bus.$on('windowOpen', this.$refs.main.winOpen);
|
|
173
|
+
WujieVue.bus.$on('windowClose', this.$refs.main.winClose);
|
|
158
174
|
WujieVue.bus.$on('emit', (method, args) => {
|
|
159
175
|
// 主应用发送事件
|
|
160
176
|
WujieVue.bus.$emit(method, args);
|
|
161
177
|
});
|
|
162
178
|
|
|
163
|
-
window.addEventListener('message',
|
|
164
|
-
const { method, args } = e.data;
|
|
165
|
-
switch (method) {
|
|
166
|
-
case 'reLogin':
|
|
167
|
-
this.handleReLogin(args);
|
|
168
|
-
break;
|
|
169
|
-
case 'refresh':
|
|
170
|
-
this.$refs.main.handleRefresh(args);
|
|
171
|
-
break;
|
|
172
|
-
case 'jumpMenu':
|
|
173
|
-
Array.isArray(args)
|
|
174
|
-
? this.$refs.main.jumpMenu(...args)
|
|
175
|
-
: this.$refs.main.jumpMenu(args);
|
|
176
|
-
break;
|
|
177
|
-
case 'emit':
|
|
178
|
-
const { origin, ...data } = args;
|
|
179
|
-
let iframes = document.getElementsByTagName('iframe');
|
|
180
|
-
iframes = iframes.filter((item) => {
|
|
181
|
-
return origin
|
|
182
|
-
? item.src.indexOf(origin) > -1
|
|
183
|
-
: item.src.indexOf(e.origin) == -1;
|
|
184
|
-
});
|
|
185
|
-
for (let i = 0; i < iframes.length; i++) {
|
|
186
|
-
iframes[i] &&
|
|
187
|
-
iframes[i].contentWindow.postMessage(
|
|
188
|
-
data,
|
|
189
|
-
origin ? origin : '*'
|
|
190
|
-
);
|
|
191
|
-
}
|
|
192
|
-
break;
|
|
193
|
-
case 'openDialog':
|
|
194
|
-
this.dialogs.push(args);
|
|
195
|
-
let index = this.visibles.length;
|
|
196
|
-
this.visibles.push(false);
|
|
197
|
-
this.$nextTick(() => {
|
|
198
|
-
this.$set(this.visibles, index, true);
|
|
199
|
-
});
|
|
200
|
-
break;
|
|
201
|
-
case 'closeDialog':
|
|
202
|
-
for (let i = 0; i < this.dialogs.length; i++) {
|
|
203
|
-
let item = this.dialogs[i];
|
|
204
|
-
if (item.url == args.url) {
|
|
205
|
-
this.$set(this.visibles, i, false);
|
|
206
|
-
}
|
|
207
|
-
}
|
|
208
|
-
break;
|
|
209
|
-
}
|
|
210
|
-
});
|
|
179
|
+
window.addEventListener('message', this.handleMessage);
|
|
211
180
|
});
|
|
212
181
|
} else {
|
|
213
182
|
const loginPage =
|
|
@@ -373,11 +342,16 @@ export default {
|
|
|
373
342
|
}
|
|
374
343
|
},
|
|
375
344
|
/**
|
|
376
|
-
* @desc
|
|
345
|
+
* @desc:打开dialog页面
|
|
377
346
|
* @author huangbo
|
|
378
347
|
* @date 2024年9月7日
|
|
379
348
|
**/
|
|
380
|
-
|
|
349
|
+
winOpen({ url, name, width, height, appCode, id, size }) {
|
|
350
|
+
if (!appCode && !id) {
|
|
351
|
+
console.error('参数错误,缺少appCode或者id');
|
|
352
|
+
return;
|
|
353
|
+
}
|
|
354
|
+
const openModel = util.getStorage('openModel');
|
|
381
355
|
let src = url;
|
|
382
356
|
if (!util.startWith(url, ['http', '/'], true)) {
|
|
383
357
|
let pathname = window.location.pathname;
|
|
@@ -388,6 +362,25 @@ export default {
|
|
|
388
362
|
}
|
|
389
363
|
src = pathname + url.replace('./', '/');
|
|
390
364
|
}
|
|
365
|
+
if (openModel && openModel == 'dialog') {
|
|
366
|
+
let dialog = {
|
|
367
|
+
id,
|
|
368
|
+
url: src,
|
|
369
|
+
name,
|
|
370
|
+
width,
|
|
371
|
+
height,
|
|
372
|
+
appCode,
|
|
373
|
+
visible: false,
|
|
374
|
+
size
|
|
375
|
+
};
|
|
376
|
+
let n = this.dialogs.push(dialog);
|
|
377
|
+
this.$nextTick(() => {
|
|
378
|
+
this.$set(dialog, 'index', n - 1);
|
|
379
|
+
this.$set(dialog, 'visible', true);
|
|
380
|
+
});
|
|
381
|
+
return dialog;
|
|
382
|
+
}
|
|
383
|
+
|
|
391
384
|
if (name) {
|
|
392
385
|
let w = 0;
|
|
393
386
|
let h = 0;
|
|
@@ -407,6 +400,109 @@ export default {
|
|
|
407
400
|
return util.win.open(src);
|
|
408
401
|
}
|
|
409
402
|
},
|
|
403
|
+
|
|
404
|
+
/**
|
|
405
|
+
* @desc:关闭dialog页面
|
|
406
|
+
* @author huangbo
|
|
407
|
+
* @date 2024年9月7日
|
|
408
|
+
**/
|
|
409
|
+
winClose({ url, appCode, id }) {
|
|
410
|
+
if (!appCode && !id) {
|
|
411
|
+
console.error('参数错误,缺少appCode或者id');
|
|
412
|
+
return;
|
|
413
|
+
}
|
|
414
|
+
let dialog = this.dialogs.find(
|
|
415
|
+
(item) => item.url == url || item.appCode == appCode || item.id == id
|
|
416
|
+
);
|
|
417
|
+
if (dialog) {
|
|
418
|
+
this.$set(dialog, 'visible', false);
|
|
419
|
+
this.dialogs.splice(dialog.index, 1);
|
|
420
|
+
}
|
|
421
|
+
},
|
|
422
|
+
|
|
423
|
+
/**
|
|
424
|
+
* @desc:postMessage消息处理
|
|
425
|
+
* @author huangbo
|
|
426
|
+
* @date 2024年9月7日
|
|
427
|
+
**/
|
|
428
|
+
handleMessage(e) {
|
|
429
|
+
const { method, args } = e.data;
|
|
430
|
+
const { index, refresh, jumpMenu } = args;
|
|
431
|
+
switch (method) {
|
|
432
|
+
case 'reLogin':
|
|
433
|
+
this.handleReLogin(args);
|
|
434
|
+
break;
|
|
435
|
+
case 'refresh':
|
|
436
|
+
this.$refs.main.handleRefresh(args);
|
|
437
|
+
break;
|
|
438
|
+
case 'jumpMenu':
|
|
439
|
+
Array.isArray(args)
|
|
440
|
+
? this.$refs.main.jumpMenu(...args)
|
|
441
|
+
: this.$refs.main.jumpMenu(args);
|
|
442
|
+
break;
|
|
443
|
+
case 'emit':
|
|
444
|
+
const { origin, appCode, id, ...data } = args;
|
|
445
|
+
let iframe = document.getElementById(appCode || id);
|
|
446
|
+
iframe.contentWindow.postMessage(data, origin ? origin : '*');
|
|
447
|
+
break;
|
|
448
|
+
case 'openDialog': //打开弹窗
|
|
449
|
+
if (!args.appCode && !args.id) {
|
|
450
|
+
console.error('参数错误,缺少appCode或者id');
|
|
451
|
+
return;
|
|
452
|
+
}
|
|
453
|
+
args.index = this.dialogs.length;
|
|
454
|
+
args.visible = false;
|
|
455
|
+
this.dialogs.push(args);
|
|
456
|
+
this.$nextTick(() => {
|
|
457
|
+
this.$set(args, 'visible', true);
|
|
458
|
+
});
|
|
459
|
+
break;
|
|
460
|
+
case 'closeDialog': //关闭弹窗
|
|
461
|
+
this.$set(this.dialogs[index], 'visible', false);
|
|
462
|
+
this.dialogs.splice(index, 1);
|
|
463
|
+
refresh && this.$refs.main.handleRefresh(refresh);
|
|
464
|
+
jumpMenu &&
|
|
465
|
+
(Array.isArray(jumpMenu)
|
|
466
|
+
? this.$refs.main.jumpMenu(...jumpMenu)
|
|
467
|
+
: this.$refs.main.jumpMenu(jumpMenu));
|
|
468
|
+
break;
|
|
469
|
+
case 'windowOpen': //打开弹窗
|
|
470
|
+
if (!args.appCode && !args.id) {
|
|
471
|
+
console.error('参数错误,缺少appCode或者id');
|
|
472
|
+
return;
|
|
473
|
+
}
|
|
474
|
+
args.index = this.dialogs.length;
|
|
475
|
+
args.visible = false;
|
|
476
|
+
this.dialogs.push(args);
|
|
477
|
+
this.$nextTick(() => {
|
|
478
|
+
this.$set(args, 'visible', true);
|
|
479
|
+
});
|
|
480
|
+
break;
|
|
481
|
+
case 'windowClose': //关闭弹窗
|
|
482
|
+
this.$set(this.dialogs[index], 'visible', false);
|
|
483
|
+
this.dialogs.splice(index, 1);
|
|
484
|
+
refresh && this.$refs.main.handleRefresh(refresh);
|
|
485
|
+
jumpMenu &&
|
|
486
|
+
(Array.isArray(jumpMenu)
|
|
487
|
+
? this.$refs.main.jumpMenu(...jumpMenu)
|
|
488
|
+
: this.$refs.main.jumpMenu(jumpMenu));
|
|
489
|
+
break;
|
|
490
|
+
}
|
|
491
|
+
},
|
|
492
|
+
|
|
493
|
+
/**
|
|
494
|
+
* @desc:dialog页面加载完成后通讯
|
|
495
|
+
* @author huangbo
|
|
496
|
+
* @date 2024年9月7日
|
|
497
|
+
**/
|
|
498
|
+
handleIframeLoad(iframe, data) {
|
|
499
|
+
iframe = iframe
|
|
500
|
+
? iframe
|
|
501
|
+
: document.getElementById(data.appCode || data.id);
|
|
502
|
+
const origin = new URL(iframe.src).origin;
|
|
503
|
+
iframe.contentWindow.postMessage(data, origin);
|
|
504
|
+
},
|
|
505
|
+
|
|
410
506
|
/**
|
|
411
507
|
* @desc:排除属性
|
|
412
508
|
* @author huangbo
|
|
@@ -422,7 +518,6 @@ export default {
|
|
|
422
518
|
**/
|
|
423
519
|
handleClosed(res, index) {
|
|
424
520
|
this.dialogs.splice(index, 1);
|
|
425
|
-
this.visibles.splice(index, 1);
|
|
426
521
|
},
|
|
427
522
|
/**
|
|
428
523
|
* @desc:主应用向子应用发送事件
|
|
@@ -449,6 +544,7 @@ export default {
|
|
|
449
544
|
}
|
|
450
545
|
},
|
|
451
546
|
beforeDestroy() {
|
|
547
|
+
window.removeEventListener('message', this.handleMessage);
|
|
452
548
|
WujieVue.bus.$off('reLogin');
|
|
453
549
|
WujieVue.bus.$off('refresh');
|
|
454
550
|
WujieVue.bus.$off('jumpMenu');
|
|
@@ -1,89 +1,89 @@
|
|
|
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
|
-
minWidth: 120
|
|
28
|
-
},
|
|
29
|
-
{
|
|
30
|
-
title: '部门',
|
|
31
|
-
field: 'depName',
|
|
32
|
-
align: 'center',
|
|
33
|
-
minWidth: 120
|
|
34
|
-
},
|
|
35
|
-
{
|
|
36
|
-
title: '姓名',
|
|
37
|
-
field: 'userName',
|
|
38
|
-
align: 'center',
|
|
39
|
-
width: 120
|
|
40
|
-
},
|
|
41
|
-
{
|
|
42
|
-
title: '职务',
|
|
43
|
-
field: 'position',
|
|
44
|
-
align: 'center',
|
|
45
|
-
width: 120
|
|
46
|
-
},
|
|
47
|
-
{
|
|
48
|
-
title: '账号',
|
|
49
|
-
field: 'loginName',
|
|
50
|
-
align: 'center',
|
|
51
|
-
width: 120
|
|
52
|
-
},
|
|
53
|
-
{
|
|
54
|
-
title: '登录时间',
|
|
55
|
-
field: 'loginDate',
|
|
56
|
-
align: 'center',
|
|
57
|
-
width: 156
|
|
58
|
-
},
|
|
59
|
-
{
|
|
60
|
-
title: '登录次数',
|
|
61
|
-
field: 'freQuency',
|
|
62
|
-
align: 'center',
|
|
63
|
-
width: 100
|
|
64
|
-
},
|
|
65
|
-
{
|
|
66
|
-
title: '登录方式',
|
|
67
|
-
field: 'loginModel',
|
|
68
|
-
align: 'center',
|
|
69
|
-
width: 100,
|
|
70
|
-
render: (h, params) => {
|
|
71
|
-
let {
|
|
72
|
-
row: { loginModel }
|
|
73
|
-
} = params;
|
|
74
|
-
let types = ['普通登录', 'CA登录', '手机登录'];
|
|
75
|
-
return h('span', {}, [types[loginModel] || types[0]]);
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
]
|
|
79
|
-
};
|
|
80
|
-
},
|
|
81
|
-
computed: {},
|
|
82
|
-
watch: {},
|
|
83
|
-
created() {},
|
|
84
|
-
mounted() {},
|
|
85
|
-
methods: {}
|
|
86
|
-
};
|
|
87
|
-
</script>
|
|
88
|
-
|
|
89
|
-
<style lang="scss" scoped></style>
|
|
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
|
+
minWidth: 120
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
title: '部门',
|
|
31
|
+
field: 'depName',
|
|
32
|
+
align: 'center',
|
|
33
|
+
minWidth: 120
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
title: '姓名',
|
|
37
|
+
field: 'userName',
|
|
38
|
+
align: 'center',
|
|
39
|
+
width: 120
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
title: '职务',
|
|
43
|
+
field: 'position',
|
|
44
|
+
align: 'center',
|
|
45
|
+
width: 120
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
title: '账号',
|
|
49
|
+
field: 'loginName',
|
|
50
|
+
align: 'center',
|
|
51
|
+
width: 120
|
|
52
|
+
},
|
|
53
|
+
{
|
|
54
|
+
title: '登录时间',
|
|
55
|
+
field: 'loginDate',
|
|
56
|
+
align: 'center',
|
|
57
|
+
width: 156
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
title: '登录次数',
|
|
61
|
+
field: 'freQuency',
|
|
62
|
+
align: 'center',
|
|
63
|
+
width: 100
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
title: '登录方式',
|
|
67
|
+
field: 'loginModel',
|
|
68
|
+
align: 'center',
|
|
69
|
+
width: 100,
|
|
70
|
+
render: (h, params) => {
|
|
71
|
+
let {
|
|
72
|
+
row: { loginModel }
|
|
73
|
+
} = params;
|
|
74
|
+
let types = ['普通登录', 'CA登录', '手机登录'];
|
|
75
|
+
return h('span', {}, [types[loginModel] || types[0]]);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
]
|
|
79
|
+
};
|
|
80
|
+
},
|
|
81
|
+
computed: {},
|
|
82
|
+
watch: {},
|
|
83
|
+
created() {},
|
|
84
|
+
mounted() {},
|
|
85
|
+
methods: {}
|
|
86
|
+
};
|
|
87
|
+
</script>
|
|
88
|
+
|
|
89
|
+
<style lang="scss" scoped></style>
|