n20-common-lib 2.9.13 → 2.9.14
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/nstc-g6/components/NstcCharts/NstcCharts.vue +16 -8
- package/package.json +8 -5
- package/src/assets/css/approve-card.scss +1 -1
- package/src/assets/css/date-quarter.scss +8 -0
- package/src/assets/css/expandable-pane.scss +7 -0
- package/src/assets/css/file-upload-table.scss +2 -3
- package/src/assets/css/font-icon.scss +3 -1
- package/src/assets/css/message.scss +6 -6
- package/src/assets/css/normalize.scss +4 -1
- package/src/assets/css/table.scss +16 -11
- package/src/assets/iconFont/SIMSUN.ttf +0 -0
- package/src/assets/iconFont/font.css +4 -0
- package/src/components/AIButton/index.vue +101 -0
- package/src/components/AdvancedFilter/formItemRender.vue +7 -4
- package/src/components/AdvancedFilter/index.vue +6 -7
- package/src/components/Anchor/index.vue +1 -0
- package/src/components/ApprovalButtons/index.vue +404 -82
- package/src/components/ApprovalButtons/indexApp.vue +1102 -0
- package/src/components/ApprovalButtons/selectSpr.vue +128 -0
- package/src/components/ApprovalButtons/setCarboncopyProp.vue +1 -1
- package/src/components/ApprovalButtons/setRejectToProp.vue +45 -5
- package/src/components/ApprovalButtons/showAppOpi.vue +265 -8
- package/src/components/ApprovalButtons/showOtherAttrNew.vue +161 -0
- package/src/components/ApprovalCard/index.vue +190 -44
- package/src/components/ApprovalCard/indexApp.vue +592 -0
- package/src/components/ApprovalRecord/approvalImgPro/child.vue +1 -1
- package/src/components/ApprovalRecord/approvalImgPro/index.vue +42 -5
- package/src/components/ApprovalRecord/index.vue +23 -6
- package/src/components/ApprovalRecord/indexApp.vue +79 -0
- package/src/components/AttachmentPass/index.vue +286 -0
- package/src/components/Button/button-group.vue +3 -1
- package/src/components/CascaderArea/index.vue +5 -6
- package/src/components/DatePicker/por.vue +31 -1
- package/src/components/DateSelect/quarterDatePicker.vue +23 -1
- package/src/components/Descriptions/index.vue +7 -3
- package/src/components/Dialog/index.vue +4 -0
- package/src/components/Diff/index.vue +4 -2
- package/src/components/DynamicField/DynamicField.vue +29 -6
- package/src/components/DynamicField/DynamicFieldMixin.js +13 -5
- package/src/components/DynamicField/DynamicFieldOptions.vue +135 -62
- package/src/components/DynamicField/DynamicTable.vue +11 -1
- package/src/components/DynamicField/contentPop.vue +110 -0
- package/src/components/DynamicField/tableList.vue +5 -1
- package/src/components/DynamicField/tableView.vue +143 -0
- package/src/components/ECharts/index.vue +15 -9
- package/src/components/Expandable/main.vue +17 -2
- package/src/components/FileImport/index.vue +4 -5
- package/src/components/FileUploadTable/FileUploadTableV3.vue +937 -0
- package/src/components/FileUploadTable/aiCheckDialog.vue +139 -0
- package/src/components/FileUploadTable/index.vue +251 -33
- package/src/components/FileUploadTable/jytg.svg +6 -0
- package/src/components/FileUploadTable/wsc.svg +3 -0
- package/src/components/FileUploadTable/ysc.svg +3 -0
- package/src/components/HandlingAdvice/index.vue +191 -0
- package/src/components/InputAccount/index.vue +105 -0
- package/src/components/InputNumber/index.vue +16 -4
- package/src/components/InputNumber/numberRange.vue +14 -0
- package/src/components/InputSearch/index.vue +8 -0
- package/src/components/Layout/HeaderWrap/changePwd.vue +50 -23
- package/src/components/Layout/HeaderWrap/index.vue +2 -2
- package/src/components/Layout/HeaderWrap/indexN.vue +296 -119
- package/src/components/Layout/SubContent/index.vue +45 -14
- package/src/components/Layout/indexN.vue +26 -5
- package/src/components/LoginTemporary/form.vue +126 -34
- package/src/components/LoginTemporary/index.vue +14 -3
- package/src/components/LoginTemporary/indexN.vue +35 -13
- package/src/components/Preview/index.vue +199 -0
- package/src/components/SelectDatePickerPro/customDatePicker.vue +7 -0
- package/src/components/SelectDatePickerPro/halfYearPicker.vue +165 -0
- package/src/components/SelectDatePickerPro/index.vue +44 -4
- package/src/components/SelectDatePickerPro/quarterDatePicker.vue +32 -10
- package/src/components/SelectTree/index.vue +10 -4
- package/src/components/SelectTree/pro.vue +3 -0
- package/src/components/ShowColumn/index copy 2.vue +545 -0
- package/src/components/ShowColumn/index copy.vue +566 -0
- package/src/components/ShowColumn/index.vue +11 -7
- package/src/components/Statis/statisItem.vue +8 -7
- package/src/components/Table/filters.js +13 -0
- package/src/components/Table/index.vue +4 -4
- package/src/components/TablePro/filterContent.vue +18 -8
- package/src/components/TablePro/index.js +41 -1
- package/src/components/TablePro/index.vue +117 -6
- package/src/components/TableProOperateColumn/OperateBtns.vue +11 -53
- package/src/components/TableProOperateColumn/OperateBtns_copy.vue +141 -0
- package/src/components/TableProOperateColumn/childrenOperateBtn.vue +108 -0
- package/src/components/TableProOperateColumn/index.vue +3 -6
- package/src/components/TableSetSize/index.vue +1 -1
- package/src/components/Tree/index.vue +21 -5
- package/src/components/Upload/index.vue +25 -10
- package/src/components/Upload/uploadMsg.vue +30 -25
- package/src/components/operatingStatus/index.vue +3 -4
- package/src/directives/VTitle/index.js +15 -5
- package/src/directives/watermark/index.js +140 -56
- package/src/i18n.json +146 -18
- package/src/index.js +31 -3
- package/src/plugins/Sign/CaMap.js +47 -8
- package/src/plugins/Sign/Itrus/index.js +1 -1
- package/src/plugins/Sign/Itrus/sign_3720.js +2 -1
- package/src/plugins/Sign/NetSM3/index.js +20 -11
- package/src/plugins/Sign/NetV3/index.js +163 -22
- package/src/plugins/Sign/SkfSign/index.js +55 -52
- package/src/plugins/Sign/bjca/index.js +229 -9
- package/src/plugins/Sign/hnca/index.js +5064 -0
- package/src/plugins/Sign/index.js +155 -103
- package/src/plugins/Sign/kySign/base64.js +160 -0
- package/src/plugins/Sign/kySign/hex.js +92 -0
- package/src/plugins/Sign/kySign/index.js +186 -0
- package/src/plugins/Sign/kySign/skf.js +937 -0
- package/src/plugins/Sign/kySign/test.html +463 -0
- package/src/plugins/Sign/sdca/index.js +73 -0
- package/src/plugins/Sign/sign.js +72 -52
- package/src/plugins/Sign/signV3/InfosecNetSignCNGAgent.min.js +1 -0
- package/src/plugins/Sign/signV3/sign.js +187 -0
- package/src/plugins/Sign/sign_back.js +172 -0
- package/src/utils/accountFormat.js +7 -0
- package/src/utils/asyncGetRelaNos.js +79 -46
- package/src/utils/axios.js +3 -5
- package/src/utils/i18n/index.js +1 -1
- package/src/utils/importGlobal.js +23 -12
- package/style/fonts/SIMSUN.5e0c362c.ttf +0 -0
- package/style/index.css +2 -2
- package/theme/blue.css +2 -2
- package/theme/cctcRed.css +2 -2
- package/theme/fonts/SIMSUN.5e0c362c.ttf +0 -0
- package/theme/green.css +2 -2
- package/theme/lightBlue.css +2 -2
- package/theme/orange.css +2 -2
- package/theme/purple.css +2 -2
- package/theme/red.css +2 -2
- package/theme/yellow.css +2 -2
|
@@ -5,7 +5,9 @@
|
|
|
5
5
|
:class="show && 'header-wrap-show'"
|
|
6
6
|
:style="{
|
|
7
7
|
'--header-color': headerColor,
|
|
8
|
-
background: `${headerBgUrl ? 'url(' + headerBgUrl + ') ' : ''} ${
|
|
8
|
+
background: `${headerBgUrl ? 'url(' + headerBgUrl + ') ' : ''} ${
|
|
9
|
+
headerBgColor ? headerBgColor : ''
|
|
10
|
+
}`
|
|
9
11
|
}"
|
|
10
12
|
>
|
|
11
13
|
<img
|
|
@@ -19,15 +21,17 @@
|
|
|
19
21
|
/>
|
|
20
22
|
<!-- <el-divider class="header-wrap-logo-hr" direction="vertical" /> -->
|
|
21
23
|
<div class="m-l-m"></div>
|
|
22
|
-
<h3 :class="['header-title ', showNavigation ? 'm-r-s' : 'm-r-auto']">
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
24
|
+
<h3 :class="['header-title ', showNavigation ? 'm-r-s' : 'm-r-auto']">
|
|
25
|
+
{{ headerTitle | $lc }}
|
|
26
|
+
</h3>
|
|
27
|
+
<div
|
|
28
|
+
v-if="showNavigation"
|
|
29
|
+
class="m-r-auto p-a-ss pointer header_change_system_box"
|
|
30
|
+
@click="handleChangeSystem"
|
|
31
|
+
>
|
|
32
|
+
<i class="n20-icon-caidan color-primary"></i>
|
|
27
33
|
<span class="m-l-ss f-s-b color-primary">{{ $lc('导航') }}</span>
|
|
28
|
-
<
|
|
29
|
-
<use xlink:href="#n20-icon-lujing"></use>
|
|
30
|
-
</svg>
|
|
34
|
+
<i class="n20-icon-xiangxia1 color-primary" style="font-size: 14px"></i>
|
|
31
35
|
</div>
|
|
32
36
|
|
|
33
37
|
<span v-if="byLabel && !inBack" class="header-uif-by">{{ byLabel }}</span>
|
|
@@ -35,25 +39,40 @@
|
|
|
35
39
|
<slot name="header-ectad">
|
|
36
40
|
<span v-if="ectad" class="f-s-s">
|
|
37
41
|
<span class="m-r-ss">
|
|
38
|
-
{{ '用户' | $lc }}:
|
|
42
|
+
{{ '用户' | $lc }}:
|
|
43
|
+
<span class="color-666">{{ userInfo.userName }}</span>
|
|
39
44
|
</span>
|
|
40
45
|
<span class="m-r-ss b-center">
|
|
41
46
|
{{ '角色' | $lc }}:
|
|
42
|
-
<span
|
|
43
|
-
rolesList.map((el) => el.name)
|
|
44
|
-
|
|
47
|
+
<span
|
|
48
|
+
v-title:br="rolesList.map((el) => el.name)"
|
|
49
|
+
class="text-ellipsis color-666"
|
|
50
|
+
style="max-width: 150px"
|
|
51
|
+
>{{ rolesList.map((el) => el.name).join(',') }}</span
|
|
52
|
+
>
|
|
45
53
|
</span>
|
|
46
54
|
<span>
|
|
47
|
-
{{ '单位' | $lc }}:
|
|
55
|
+
{{ '单位' | $lc }}:
|
|
56
|
+
<span class="color-666">{{ userInfo.companyName }}</span>
|
|
48
57
|
</span>
|
|
49
58
|
</span>
|
|
50
59
|
</slot>
|
|
51
60
|
<operatingStatus v-if="operationStatus" />
|
|
52
|
-
<el-button
|
|
53
|
-
|
|
54
|
-
|
|
61
|
+
<el-button
|
|
62
|
+
v-if="inBack"
|
|
63
|
+
class="header-hdyy f-s-s"
|
|
64
|
+
plain
|
|
65
|
+
round
|
|
66
|
+
size="mini"
|
|
67
|
+
@click="toSystem"
|
|
68
|
+
>{{ '回到应用' | $lc }}</el-button
|
|
69
|
+
>
|
|
55
70
|
<!-- YSCW-end -->
|
|
56
|
-
<el-dropdown
|
|
71
|
+
<el-dropdown
|
|
72
|
+
v-if="!hideLang && langMap && langMap.length > 1"
|
|
73
|
+
class="m-l-lg"
|
|
74
|
+
@command="setLang"
|
|
75
|
+
>
|
|
57
76
|
<i
|
|
58
77
|
v-if="['th', 'vi'].includes(langVal)"
|
|
59
78
|
style="font-size: 20px"
|
|
@@ -74,26 +93,42 @@
|
|
|
74
93
|
|
|
75
94
|
<el-dropdown-menu slot="dropdown">
|
|
76
95
|
<el-dropdown-item v-if="langMap.includes('zh-cn')" command="zh-cn"
|
|
77
|
-
><i class="iconfont icon-zhongwen f-s-icon"></i
|
|
96
|
+
><i class="iconfont icon-zhongwen f-s-icon"></i
|
|
97
|
+
>{{ '简体中文' | $lc }}</el-dropdown-item
|
|
78
98
|
>
|
|
79
99
|
<el-dropdown-item v-if="langMap.includes('zh-hk')" command="zh-hk"
|
|
80
|
-
><i class="iconfont icon-fanti f-s-icon"></i
|
|
100
|
+
><i class="iconfont icon-fanti f-s-icon"></i
|
|
101
|
+
>{{ '繁体中文' | $lc }}</el-dropdown-item
|
|
81
102
|
>
|
|
82
103
|
<el-dropdown-item v-if="langMap.includes('en')" command="en"
|
|
83
|
-
><i class="iconfont icon-yuyanqiehuan f-s-icon"></i
|
|
104
|
+
><i class="iconfont icon-yuyanqiehuan f-s-icon"></i
|
|
105
|
+
>{{ '英文' | $lc }}</el-dropdown-item
|
|
84
106
|
>
|
|
85
107
|
<el-dropdown-item v-if="langMap.includes('th')" command="th"
|
|
86
|
-
><i class="n20-icon-yuyanqiehuan f-s-icon"></i
|
|
108
|
+
><i class="n20-icon-yuyanqiehuan f-s-icon"></i
|
|
109
|
+
>{{ '泰文' | $lc }}</el-dropdown-item
|
|
87
110
|
>
|
|
88
111
|
<el-dropdown-item v-if="langMap.includes('vi')" command="vi"
|
|
89
|
-
><i class="n20-icon-a-yuenanyuyanqiehuan_huaban1 f-s-icon"></i
|
|
112
|
+
><i class="n20-icon-a-yuenanyuyanqiehuan_huaban1 f-s-icon"></i
|
|
113
|
+
>{{ '越南语' | $lc }}</el-dropdown-item
|
|
90
114
|
>
|
|
91
115
|
</el-dropdown-menu>
|
|
92
116
|
</el-dropdown>
|
|
93
117
|
|
|
94
|
-
<el-badge
|
|
95
|
-
|
|
96
|
-
|
|
118
|
+
<el-badge
|
|
119
|
+
:hidden="noticeNum + afficheNum === 0"
|
|
120
|
+
:value="noticeNum + afficheNum"
|
|
121
|
+
>
|
|
122
|
+
<span
|
|
123
|
+
v-if="!noticeDrw"
|
|
124
|
+
v-popover:noticePop
|
|
125
|
+
class="news-btn iconfont icon-xiaoxi header-color"
|
|
126
|
+
></span>
|
|
127
|
+
<span
|
|
128
|
+
v-else
|
|
129
|
+
class="news-btn iconfont icon-xiaoxi header-color"
|
|
130
|
+
@click="customOpt.noticeDrawer"
|
|
131
|
+
></span>
|
|
97
132
|
</el-badge>
|
|
98
133
|
|
|
99
134
|
<el-dropdown
|
|
@@ -106,15 +141,23 @@
|
|
|
106
141
|
@visible-change="setUserVisible"
|
|
107
142
|
>
|
|
108
143
|
<div class="flex-box">
|
|
109
|
-
<img
|
|
144
|
+
<img
|
|
145
|
+
v-popover:by_popover
|
|
146
|
+
class="user-info-btn header-color"
|
|
147
|
+
:src="headerUserUrl"
|
|
148
|
+
/>
|
|
110
149
|
<div
|
|
111
150
|
v-title:br="rolesList.map((el) => el.name).join(',')"
|
|
112
|
-
:style="{
|
|
151
|
+
:style="{
|
|
152
|
+
width: (userInfo?.companyName?.length * 0.86 || 4) + 'em',
|
|
153
|
+
overflow: 'hidden'
|
|
154
|
+
}"
|
|
113
155
|
class="pointer flex-column flex-c"
|
|
114
156
|
@click="handleUser"
|
|
115
157
|
>
|
|
116
158
|
<div class="font-size-small text-ellipsis">
|
|
117
|
-
{{ userNo }}{{ rolesList.length ? '/' : ''
|
|
159
|
+
{{ userNo }}{{ rolesList.length ? '/' : ''
|
|
160
|
+
}}{{ rolesList.map((el) => el.name).join('/') }}
|
|
118
161
|
</div>
|
|
119
162
|
<div class="companyClass">{{ userInfo.companyName }}</div>
|
|
120
163
|
</div>
|
|
@@ -126,7 +169,14 @@
|
|
|
126
169
|
:class="{ 'user-info-drop_height': !inBack }"
|
|
127
170
|
class="user-info-drop-menu-new"
|
|
128
171
|
>
|
|
129
|
-
<div
|
|
172
|
+
<div
|
|
173
|
+
class="uif-user-w"
|
|
174
|
+
:style="{
|
|
175
|
+
backgroundImage: headerUserInfoBg
|
|
176
|
+
? `url(${headerUserInfoBg})`
|
|
177
|
+
: undefined
|
|
178
|
+
}"
|
|
179
|
+
>
|
|
130
180
|
<div class="uif-img-w">
|
|
131
181
|
<img class="_img" :src="headerUserUrl" />
|
|
132
182
|
<upload
|
|
@@ -143,16 +193,27 @@
|
|
|
143
193
|
><span v-if="userInfo.userName">({{ userInfo.userName }})</span>
|
|
144
194
|
</div>
|
|
145
195
|
<div class="uif-gs text-ellipsis">{{ userInfo.companyName }}</div>
|
|
146
|
-
<div class="uif-js text-ellipsis">
|
|
196
|
+
<div class="uif-js text-ellipsis">
|
|
197
|
+
{{ rolesList.map((el) => el.name).join('/') }}
|
|
198
|
+
</div>
|
|
147
199
|
<div class="uif-by">
|
|
148
200
|
<template v-if="!byEV">
|
|
149
201
|
<span>{{ byLabel }}</span>
|
|
150
202
|
<span class="_edit el-icon-edit" @click="byEShow"></span>
|
|
151
203
|
</template>
|
|
152
|
-
<el-input
|
|
204
|
+
<el-input
|
|
205
|
+
v-else
|
|
206
|
+
v-model="byLabel"
|
|
207
|
+
size="mini"
|
|
208
|
+
style="width: 92%"
|
|
209
|
+
@blur="editByLabel"
|
|
210
|
+
/>
|
|
153
211
|
</div>
|
|
154
212
|
</div>
|
|
155
|
-
<el-dropdown-item
|
|
213
|
+
<el-dropdown-item
|
|
214
|
+
v-if="customOpt.updateCert"
|
|
215
|
+
command="updateCertificate"
|
|
216
|
+
>
|
|
156
217
|
<div class="flex-box flex-v">
|
|
157
218
|
<span>{{ '更新证书' | $lc }}</span>
|
|
158
219
|
<i class="el-icon-caret-right m-l-auto m-r-0"></i>
|
|
@@ -164,7 +225,10 @@
|
|
|
164
225
|
<i class="el-icon-caret-right m-l-auto m-r-0"></i>
|
|
165
226
|
</div>
|
|
166
227
|
</el-dropdown-item>
|
|
167
|
-
<el-dropdown-item
|
|
228
|
+
<el-dropdown-item
|
|
229
|
+
v-if="customOpt.personalInfo"
|
|
230
|
+
command="changeUserInfo"
|
|
231
|
+
>
|
|
168
232
|
<div class="flex-box flex-v">
|
|
169
233
|
<span>{{ '修改人员信息' | $lc }} </span>
|
|
170
234
|
<i class="el-icon-caret-right m-l-auto m-r-0"></i>
|
|
@@ -203,7 +267,13 @@
|
|
|
203
267
|
</div>
|
|
204
268
|
</el-dropdown-item>
|
|
205
269
|
<el-dropdown-item _command="systemSet">
|
|
206
|
-
<el-dropdown
|
|
270
|
+
<el-dropdown
|
|
271
|
+
trigger="hover"
|
|
272
|
+
size="medium"
|
|
273
|
+
placement="left-start"
|
|
274
|
+
style="width: 100%"
|
|
275
|
+
@command="setUserFn"
|
|
276
|
+
>
|
|
207
277
|
<div class="flex-box flex-v" @click.stop>
|
|
208
278
|
<span>{{ '系统设置' | $lc }}</span>
|
|
209
279
|
<i class="el-icon-caret-right m-l-auto m-r-0"></i>
|
|
@@ -237,14 +307,25 @@
|
|
|
237
307
|
</div>
|
|
238
308
|
</el-dropdown-item>
|
|
239
309
|
<!-- 系统切换 -->
|
|
240
|
-
<el-dropdown-item
|
|
241
|
-
|
|
310
|
+
<el-dropdown-item
|
|
311
|
+
v-if="systemChange && systemList && systemList.length"
|
|
312
|
+
>
|
|
313
|
+
<el-dropdown
|
|
314
|
+
trigger="hover"
|
|
315
|
+
size="medium"
|
|
316
|
+
placement="left-start"
|
|
317
|
+
style="width: 100%"
|
|
318
|
+
>
|
|
242
319
|
<div class="flex-box flex-v">
|
|
243
320
|
<span>{{ '系统切换' | $lc }}</span>
|
|
244
321
|
<i class="el-icon-caret-right m-l-auto m-r-0"></i>
|
|
245
322
|
</div>
|
|
246
323
|
<el-dropdown-menu slot="dropdown">
|
|
247
|
-
<el-dropdown-item
|
|
324
|
+
<el-dropdown-item
|
|
325
|
+
v-for="(item, i) in systemList"
|
|
326
|
+
:key="i"
|
|
327
|
+
@click.native="clickSystemChange(item)"
|
|
328
|
+
>
|
|
248
329
|
<span>{{ item.NAME }}</span>
|
|
249
330
|
</el-dropdown-item>
|
|
250
331
|
</el-dropdown-menu>
|
|
@@ -257,11 +338,18 @@
|
|
|
257
338
|
<i class="el-icon-caret-right m-l-auto m-r-0"></i>
|
|
258
339
|
</div>
|
|
259
340
|
</el-dropdown-item>
|
|
260
|
-
<div class="uif-ydn p-r-m">
|
|
341
|
+
<div class="uif-ydn p-r-m">
|
|
342
|
+
{{ '已登录' | $lc }}:{{ durationTime }}
|
|
343
|
+
</div>
|
|
261
344
|
</el-dropdown-menu>
|
|
262
345
|
</el-dropdown>
|
|
263
346
|
|
|
264
|
-
<dialogWrap
|
|
347
|
+
<dialogWrap
|
|
348
|
+
:title="'主题设置' | $lc"
|
|
349
|
+
:visible.sync="themeV"
|
|
350
|
+
append-to-body
|
|
351
|
+
width="432px"
|
|
352
|
+
>
|
|
265
353
|
<div style="min-height: 114px">
|
|
266
354
|
<span
|
|
267
355
|
v-for="item in themeList"
|
|
@@ -284,10 +372,25 @@
|
|
|
284
372
|
<changePwd :visible.sync="cpwdV" />
|
|
285
373
|
</dialogWrap>
|
|
286
374
|
<!-- 消息/通知 -->
|
|
287
|
-
<el-popover
|
|
288
|
-
|
|
375
|
+
<el-popover
|
|
376
|
+
v-if="!noticeDrw"
|
|
377
|
+
ref="noticePop"
|
|
378
|
+
trigger="click"
|
|
379
|
+
width="400"
|
|
380
|
+
@after-enter="$refs.noticeContent.show()"
|
|
381
|
+
>
|
|
382
|
+
<noticePop
|
|
383
|
+
ref="noticeContent"
|
|
384
|
+
:notice-num="noticeNum"
|
|
385
|
+
:affiche-num="afficheNum"
|
|
386
|
+
/>
|
|
289
387
|
</el-popover>
|
|
290
|
-
<el-dialog
|
|
388
|
+
<el-dialog
|
|
389
|
+
:visible.sync="scV"
|
|
390
|
+
:title="'身份切换' | $lc"
|
|
391
|
+
append-to-body
|
|
392
|
+
width="600px"
|
|
393
|
+
>
|
|
291
394
|
<switchUser :visible.sync="scV" :user-no="userNo" />
|
|
292
395
|
</el-dialog>
|
|
293
396
|
</div>
|
|
@@ -315,7 +418,8 @@ dayjs.extend(duration)
|
|
|
315
418
|
|
|
316
419
|
import { siteTree2menus } from '../../LoginTemporary/utils'
|
|
317
420
|
|
|
318
|
-
const prefix =
|
|
421
|
+
const prefix =
|
|
422
|
+
window.__INJECTED_PUBLIC_PATH_BY_QIANKUN__ || process.env.BASE_URL || '/'
|
|
319
423
|
const SYSTEM_LIST = [
|
|
320
424
|
{
|
|
321
425
|
NO: 'CSZHYW',
|
|
@@ -396,6 +500,14 @@ const SYSTEM_LIST = [
|
|
|
396
500
|
LOGIN_MODE: [],
|
|
397
501
|
LOGIN_FORGET_MODE: [],
|
|
398
502
|
OPEN: false
|
|
503
|
+
},
|
|
504
|
+
{
|
|
505
|
+
NO: 'YFW',
|
|
506
|
+
NAME: $lc('云服务平台'),
|
|
507
|
+
ICON: undefined,
|
|
508
|
+
LOGIN_MODE: [],
|
|
509
|
+
LOGIN_FORGET_MODE: [],
|
|
510
|
+
OPEN: false
|
|
399
511
|
}
|
|
400
512
|
]
|
|
401
513
|
|
|
@@ -485,48 +597,65 @@ export default {
|
|
|
485
597
|
}
|
|
486
598
|
},
|
|
487
599
|
created() {
|
|
488
|
-
getJsonc('/server-config.jsonc').then(
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
600
|
+
getJsonc('/server-config.jsonc').then(
|
|
601
|
+
({ _layoutData = {}, loginSetting, langConf = {} }) => {
|
|
602
|
+
let _loginSetting = loginSetting || _layoutData.loginSetting
|
|
603
|
+
this.headerLogoUrl = realUrl(_layoutData.headerLogoUrl)
|
|
604
|
+
this.headerLogoWidth = _layoutData.headerLogoWidth
|
|
605
|
+
this.headerLogoHeight = _layoutData.headerLogoHeight
|
|
606
|
+
this.headerTitle = _layoutData.headerTitle
|
|
607
|
+
this.headerColor = _layoutData.headerColor
|
|
608
|
+
this.headerBgUrl = realUrl(_layoutData.headerBgUrl)
|
|
609
|
+
this.headerBgColor = _layoutData.headerBgColor
|
|
610
|
+
this.hideHelpDoc = _layoutData.hideHelpDoc
|
|
611
|
+
this.hideLang = (_layoutData.hideLang || langConf.hideLang) ?? false
|
|
612
|
+
this.langMap = _layoutData.lang ||
|
|
613
|
+
langConf.lang || ['zh-cn', 'zh-hk', 'en']
|
|
614
|
+
this.hideDowApp = _layoutData.hideDowApp
|
|
615
|
+
this.hideTheme = _layoutData.hideTheme
|
|
616
|
+
this.showNavigation = _layoutData.showNavigation
|
|
617
|
+
this.systemChange = _layoutData.systemChange
|
|
618
|
+
if (this.langMap?.lang?.length > 0) {
|
|
619
|
+
let pageLang = window.localStorage.getItem('pageLang')
|
|
620
|
+
if (!pageLang) {
|
|
621
|
+
window.localStorage.setItem('pageLang', this.jsonData?.lang[0])
|
|
622
|
+
Cookies.set(
|
|
623
|
+
'language',
|
|
624
|
+
['zh-cn', 'zh-hk'].includes(this.jsonData?.lang[0])
|
|
625
|
+
? 'zh'
|
|
626
|
+
: this.jsonData?.lang[0],
|
|
627
|
+
{
|
|
628
|
+
expires: 365
|
|
629
|
+
}
|
|
630
|
+
)
|
|
631
|
+
}
|
|
632
|
+
}
|
|
633
|
+
if (_loginSetting !== 'JSON') {
|
|
634
|
+
this.headerTitle =
|
|
635
|
+
sessionStorage.getItem('headerTitle') || this.headerTitle
|
|
636
|
+
}
|
|
637
|
+
if (this.systemChange) {
|
|
638
|
+
this.systemList =
|
|
639
|
+
JSON.parse(localStorage.getItem('SYSTEM_LIST')) || SYSTEM_LIST
|
|
640
|
+
}
|
|
641
|
+
this.show = true
|
|
514
642
|
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
643
|
+
this.getUserImg().catch(() => {
|
|
644
|
+
this.headerUserUrl = realUrl(_layoutData.headerUserUrl)
|
|
645
|
+
})
|
|
518
646
|
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
647
|
+
this.getByLabel().then(() => {
|
|
648
|
+
let notFirstShowBy = sessionStorage.getItem('notFirstShowBy')
|
|
649
|
+
if (!notFirstShowBy) {
|
|
650
|
+
this.byV = true
|
|
651
|
+
setTimeout(() => {
|
|
652
|
+
this.byV = false
|
|
653
|
+
}, 6000)
|
|
654
|
+
sessionStorage.setItem('notFirstShowBy', true)
|
|
655
|
+
}
|
|
656
|
+
})
|
|
657
|
+
}
|
|
658
|
+
)
|
|
530
659
|
this.getNNum()
|
|
531
660
|
document.addEventListener('visibilitychange', this.getNNum)
|
|
532
661
|
window.addEventListener('message', this.updateNotice)
|
|
@@ -590,7 +719,8 @@ export default {
|
|
|
590
719
|
let { base = '/' } = this.$router.options
|
|
591
720
|
if (!/\/$/.test(base)) base += '/'
|
|
592
721
|
|
|
593
|
-
window.location.href =
|
|
722
|
+
window.location.href =
|
|
723
|
+
window.location.origin + base + 'dashboard/workplace'
|
|
594
724
|
},
|
|
595
725
|
async getTreeList(item) {
|
|
596
726
|
let { data } = await axios.get(
|
|
@@ -615,12 +745,16 @@ export default {
|
|
|
615
745
|
},
|
|
616
746
|
// 跳转打开人员页面
|
|
617
747
|
goMdmUser() {
|
|
618
|
-
axios
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
|
|
623
|
-
|
|
748
|
+
axios
|
|
749
|
+
.get(`/bems/user/mdmWfPersonalMid/validateOne/${this.userNo}`)
|
|
750
|
+
.then(({ code, msg }) => {
|
|
751
|
+
if (code !== 200) {
|
|
752
|
+
return this.$message.error(msg)
|
|
753
|
+
}
|
|
754
|
+
linkPush(
|
|
755
|
+
`/user-web/user/editUserInfo?uno=${this.userNo}&oneself=true`
|
|
756
|
+
)
|
|
757
|
+
})
|
|
624
758
|
},
|
|
625
759
|
setUserVisible(v) {
|
|
626
760
|
if (v) {
|
|
@@ -628,14 +762,19 @@ export default {
|
|
|
628
762
|
let loginTime = sessionStorage.getItem('loginTime')
|
|
629
763
|
if (loginTime) {
|
|
630
764
|
this.setDurationTime(loginTime)
|
|
631
|
-
this.durationTime_timeout = setInterval(
|
|
765
|
+
this.durationTime_timeout = setInterval(
|
|
766
|
+
() => this.setDurationTime(loginTime),
|
|
767
|
+
500
|
|
768
|
+
)
|
|
632
769
|
}
|
|
633
770
|
} else {
|
|
634
771
|
clearInterval(this.durationTime_timeout)
|
|
635
772
|
}
|
|
636
773
|
},
|
|
637
774
|
setDurationTime(loginTime) {
|
|
638
|
-
this.durationTime = dayjs
|
|
775
|
+
this.durationTime = dayjs
|
|
776
|
+
.duration(Date.now() - loginTime)
|
|
777
|
+
.format(`HH${$lc('小时')}mm${$lc('分')}ss${$lc('秒')}`)
|
|
639
778
|
},
|
|
640
779
|
// 打开帮助文档
|
|
641
780
|
openHelp() {
|
|
@@ -644,7 +783,11 @@ export default {
|
|
|
644
783
|
return false
|
|
645
784
|
}
|
|
646
785
|
axios
|
|
647
|
-
.get(
|
|
786
|
+
.get(
|
|
787
|
+
`/bems/1.0/userManual`,
|
|
788
|
+
{},
|
|
789
|
+
{ responseType: 'blob', loading: false }
|
|
790
|
+
)
|
|
648
791
|
.then((res) => {
|
|
649
792
|
let url = window.URL.createObjectURL(res)
|
|
650
793
|
let win = window.open(url, $lc('帮助文档'))
|
|
@@ -732,18 +875,24 @@ export default {
|
|
|
732
875
|
this.langVal = val
|
|
733
876
|
|
|
734
877
|
window.localStorage.setItem('pageLang', this.langVal)
|
|
735
|
-
Cookies.set(
|
|
878
|
+
Cookies.set(
|
|
879
|
+
'language',
|
|
880
|
+
['zh-cn', 'zh-hk'].includes(this.langVal) ? 'zh' : this.langVal,
|
|
881
|
+
{ expires: 365 }
|
|
882
|
+
)
|
|
736
883
|
auth.setReqLang()
|
|
737
884
|
let form = {
|
|
738
885
|
resType: '1',
|
|
739
886
|
systemNo: localStorage.getItem('pageInSystemNo') || undefined
|
|
740
887
|
}
|
|
741
|
-
axios
|
|
742
|
-
|
|
743
|
-
|
|
744
|
-
|
|
745
|
-
|
|
746
|
-
|
|
888
|
+
axios
|
|
889
|
+
.get('/bems/1.0/menuTree/tree', form, { loading: false })
|
|
890
|
+
.then(({ data }) => {
|
|
891
|
+
data || (data = [])
|
|
892
|
+
let layoutMenus = siteTree2menus(data)
|
|
893
|
+
sessionStorage.setItem('menuTree', JSON.stringify(layoutMenus))
|
|
894
|
+
window.location.reload()
|
|
895
|
+
})
|
|
747
896
|
},
|
|
748
897
|
setTheme({ value }) {
|
|
749
898
|
this.themeVal = value
|
|
@@ -793,11 +942,15 @@ export default {
|
|
|
793
942
|
},
|
|
794
943
|
logOut() {
|
|
795
944
|
// alert('退出登录')
|
|
796
|
-
this.$confirm(
|
|
797
|
-
|
|
798
|
-
|
|
799
|
-
|
|
800
|
-
|
|
945
|
+
this.$confirm(
|
|
946
|
+
$lc('退出将清除未保存的临时操作,请确认是否继续?'),
|
|
947
|
+
$lc('退出提示'),
|
|
948
|
+
{
|
|
949
|
+
confirmButtonText: $lc('确定'),
|
|
950
|
+
cancelButtonText: $lc('取消'),
|
|
951
|
+
type: 'warning'
|
|
952
|
+
}
|
|
953
|
+
).then(() => {
|
|
801
954
|
if (this.beforeLogout) {
|
|
802
955
|
let F = this.beforeLogout(this.logoutA)
|
|
803
956
|
F.then && F.then(this.logoutA)
|
|
@@ -808,7 +961,11 @@ export default {
|
|
|
808
961
|
},
|
|
809
962
|
logoutA() {
|
|
810
963
|
axios
|
|
811
|
-
.delete(
|
|
964
|
+
.delete(
|
|
965
|
+
'/bems/prod_1.0/uas/api/authorization/logout',
|
|
966
|
+
{},
|
|
967
|
+
{ loading: false, noMsg: true }
|
|
968
|
+
)
|
|
812
969
|
.then(() => {
|
|
813
970
|
if (this.afterLogout) {
|
|
814
971
|
let After = this.afterLogout()
|
|
@@ -823,10 +980,14 @@ export default {
|
|
|
823
980
|
},
|
|
824
981
|
// 检查是否代理中
|
|
825
982
|
async getProxyAuthIing() {
|
|
826
|
-
let res = await axios.get(
|
|
827
|
-
|
|
828
|
-
|
|
829
|
-
|
|
983
|
+
let res = await axios.get(
|
|
984
|
+
`/bems/prod_1.0/user/wfUserProxyAuth/check/ongoing/${this.userNo}`,
|
|
985
|
+
null,
|
|
986
|
+
{
|
|
987
|
+
loading: false,
|
|
988
|
+
noMsg: true
|
|
989
|
+
}
|
|
990
|
+
)
|
|
830
991
|
|
|
831
992
|
this.underway = !!res.data
|
|
832
993
|
},
|
|
@@ -840,7 +1001,8 @@ export default {
|
|
|
840
1001
|
let { base = '/' } = this.$router.options
|
|
841
1002
|
if (!/\/$/.test(base)) base += '/'
|
|
842
1003
|
|
|
843
|
-
window.location.href =
|
|
1004
|
+
window.location.href =
|
|
1005
|
+
window.location.origin + base + 'dashboard/workplace'
|
|
844
1006
|
},
|
|
845
1007
|
toSystem() {
|
|
846
1008
|
window.sessionStorage.setItem('pageInType', 'toFront')
|
|
@@ -848,7 +1010,8 @@ export default {
|
|
|
848
1010
|
let { base = '/' } = this.$router.options
|
|
849
1011
|
if (!/\/$/.test(base)) base += '/'
|
|
850
1012
|
|
|
851
|
-
window.location.href =
|
|
1013
|
+
window.location.href =
|
|
1014
|
+
window.location.origin + base + 'dashboard/workplace'
|
|
852
1015
|
},
|
|
853
1016
|
getUserImg() {
|
|
854
1017
|
return this.$axios
|
|
@@ -875,7 +1038,11 @@ export default {
|
|
|
875
1038
|
// this.byLabel = value
|
|
876
1039
|
|
|
877
1040
|
this.$axios
|
|
878
|
-
.get(
|
|
1041
|
+
.get(
|
|
1042
|
+
`/bems/portal/portalUserIndexConfig/saveConfigSign/${this.byLabel}`,
|
|
1043
|
+
null,
|
|
1044
|
+
{ loading: false }
|
|
1045
|
+
)
|
|
879
1046
|
.then(() => {
|
|
880
1047
|
this.byEV = false
|
|
881
1048
|
})
|
|
@@ -885,7 +1052,9 @@ export default {
|
|
|
885
1052
|
},
|
|
886
1053
|
getByLabel() {
|
|
887
1054
|
return this.$axios
|
|
888
|
-
.get(`/bems/portal/portalUserIndexConfig/getConfigByUno`, null, {
|
|
1055
|
+
.get(`/bems/portal/portalUserIndexConfig/getConfigByUno`, null, {
|
|
1056
|
+
loading: false
|
|
1057
|
+
})
|
|
889
1058
|
.then((res) => {
|
|
890
1059
|
let data = res.data || {}
|
|
891
1060
|
data.signature && (this.byLabel = data.signature)
|
|
@@ -902,14 +1071,22 @@ export default {
|
|
|
902
1071
|
clearTimeout(this.getNNumTimeOut)
|
|
903
1072
|
if (!document.hidden) {
|
|
904
1073
|
axios
|
|
905
|
-
.get('/bems/wkb/messageCenter/getUnReadTotal/' + this.userNo, null, {
|
|
1074
|
+
.get('/bems/wkb/messageCenter/getUnReadTotal/' + this.userNo, null, {
|
|
1075
|
+
loading: false,
|
|
1076
|
+
noMsg: true
|
|
1077
|
+
})
|
|
906
1078
|
.then((res) => {
|
|
907
1079
|
this.noticeNum = res.data.data || 0
|
|
908
1080
|
})
|
|
909
1081
|
|
|
910
|
-
axios
|
|
911
|
-
|
|
912
|
-
|
|
1082
|
+
axios
|
|
1083
|
+
.get('/bems/1.0/notice/notReadCount', null, {
|
|
1084
|
+
loading: false,
|
|
1085
|
+
noMsg: true
|
|
1086
|
+
})
|
|
1087
|
+
.then((res) => {
|
|
1088
|
+
this.afficheNum = res.data || 0
|
|
1089
|
+
})
|
|
913
1090
|
this.getNNumTimeOut = setTimeout(this.getNNum, 1000 * 60 * 3)
|
|
914
1091
|
}
|
|
915
1092
|
}
|