n20-common-lib 1.3.188 → 1.3.190
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/package.json +1 -1
- package/src/components/Empty/index.vue +43 -102
- package/src/components/FileUploadTable/index.vue +70 -13
- package/src/components/Filters/index.vue +1 -1
- package/src/components/Layout/HeaderWrap/index.vue +4 -4
- package/src/components/Layout/HeaderWrap/noticePop.vue +28 -15
- package/src/components/Stamp/index.vue +13 -18
- package/src/components/Upload/index.vue +10 -5
- package/src/components/WorkCard/index.vue +2 -2
- package/src/i18n.json +2 -2
- package/src/plugins/Sign/InfosecNetSignCNGAgent.min.js +2 -2
- package/src/plugins/Sign/Itrus/index.js +7 -7
- package/src/plugins/Sign/NetSM3/InfosecNetSignCNGAgent.min.js +2 -2
- package/src/plugins/Sign/NetSM3/index.js +16 -15
- package/src/plugins/Sign/SkfSign/InfosecNetSignCNGAgent.min.js +2 -2
- package/src/plugins/Sign/SkfSign/index.js +16 -15
- package/src/plugins/Sign/bjca/index.js +19 -16
- package/src/plugins/Sign/netca/index.js +5 -7
- package/src/plugins/Sign/sign.js +5 -7
- package/src/utils/axios.js +6 -4
- package/src/utils/i18n/index.js +11 -6
- package/style/index.css +3 -3
- package/theme/blue.css +2 -2
- package/theme/cctcRed.css +2 -2
- 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
package/package.json
CHANGED
|
@@ -8,6 +8,48 @@
|
|
|
8
8
|
</template>
|
|
9
9
|
|
|
10
10
|
<script>
|
|
11
|
+
import icon_empty from './img/empty.svg'
|
|
12
|
+
import icon_abnormal from './img/abnormal.svg'
|
|
13
|
+
import icon_relevant from './img/relevant.svg'
|
|
14
|
+
import icon_dispose from './img/dispose.svg'
|
|
15
|
+
import icon_general from './img/general.svg'
|
|
16
|
+
import icon_network from './img/network.svg'
|
|
17
|
+
import icon_search from './img/search.svg'
|
|
18
|
+
import icon_lock from './img/lock.svg'
|
|
19
|
+
import icon_404 from './img/404.png'
|
|
20
|
+
import icon_400 from './img/400.svg'
|
|
21
|
+
import icon_401 from './img/401.svg'
|
|
22
|
+
import icon_403 from './img/403.svg'
|
|
23
|
+
import icon_405 from './img/405.svg'
|
|
24
|
+
import icon_901 from './img/901.svg'
|
|
25
|
+
import icon_902 from './img/902.svg'
|
|
26
|
+
import icon_903 from './img/903.svg'
|
|
27
|
+
import icon_904 from './img/904.svg'
|
|
28
|
+
import icon_905 from './img/905.svg'
|
|
29
|
+
import icon_906 from './img/906.svg'
|
|
30
|
+
import icon_907 from './img/907.svg'
|
|
31
|
+
const pics = {
|
|
32
|
+
icon_empty,
|
|
33
|
+
icon_abnormal,
|
|
34
|
+
icon_relevant,
|
|
35
|
+
icon_dispose,
|
|
36
|
+
icon_general,
|
|
37
|
+
icon_network,
|
|
38
|
+
icon_search,
|
|
39
|
+
icon_lock,
|
|
40
|
+
icon_404,
|
|
41
|
+
icon_400,
|
|
42
|
+
icon_401,
|
|
43
|
+
icon_403,
|
|
44
|
+
icon_405,
|
|
45
|
+
icon_901,
|
|
46
|
+
icon_902,
|
|
47
|
+
icon_903,
|
|
48
|
+
icon_904,
|
|
49
|
+
icon_905,
|
|
50
|
+
icon_906,
|
|
51
|
+
icon_907
|
|
52
|
+
}
|
|
11
53
|
export default {
|
|
12
54
|
name: 'Empty',
|
|
13
55
|
props: {
|
|
@@ -40,108 +82,7 @@ export default {
|
|
|
40
82
|
watch: {
|
|
41
83
|
type: {
|
|
42
84
|
handler(vn) {
|
|
43
|
-
|
|
44
|
-
case 'empty':
|
|
45
|
-
import('./img/empty.svg').then((res) => {
|
|
46
|
-
this.imgSrc = res.default
|
|
47
|
-
})
|
|
48
|
-
break
|
|
49
|
-
case 'abnormal':
|
|
50
|
-
import('./img/abnormal.svg').then((res) => {
|
|
51
|
-
this.imgSrc = res.default
|
|
52
|
-
})
|
|
53
|
-
break
|
|
54
|
-
case 'relevant':
|
|
55
|
-
import('./img/relevant.svg').then((res) => {
|
|
56
|
-
this.imgSrc = res.default
|
|
57
|
-
})
|
|
58
|
-
break
|
|
59
|
-
case 'dispose':
|
|
60
|
-
import('./img/dispose.svg').then((res) => {
|
|
61
|
-
this.imgSrc = res.default
|
|
62
|
-
})
|
|
63
|
-
break
|
|
64
|
-
case 'general':
|
|
65
|
-
import('./img/general.svg').then((res) => {
|
|
66
|
-
this.imgSrc = res.default
|
|
67
|
-
})
|
|
68
|
-
break
|
|
69
|
-
case 'network':
|
|
70
|
-
import('./img/network.svg').then((res) => {
|
|
71
|
-
this.imgSrc = res.default
|
|
72
|
-
})
|
|
73
|
-
break
|
|
74
|
-
case 'search':
|
|
75
|
-
import('./img/search.svg').then((res) => {
|
|
76
|
-
this.imgSrc = res.default
|
|
77
|
-
})
|
|
78
|
-
break
|
|
79
|
-
case 'lock':
|
|
80
|
-
import('./img/lock.svg').then((res) => {
|
|
81
|
-
this.imgSrc = res.default
|
|
82
|
-
})
|
|
83
|
-
break
|
|
84
|
-
case '404':
|
|
85
|
-
import('./img/404.png').then((res) => {
|
|
86
|
-
this.imgSrc = res.default
|
|
87
|
-
})
|
|
88
|
-
break
|
|
89
|
-
case '400':
|
|
90
|
-
import('./img/400.svg').then((res) => {
|
|
91
|
-
this.imgSrc = res.default
|
|
92
|
-
})
|
|
93
|
-
break
|
|
94
|
-
case '401':
|
|
95
|
-
import('./img/401.svg').then((res) => {
|
|
96
|
-
this.imgSrc = res.default
|
|
97
|
-
})
|
|
98
|
-
break
|
|
99
|
-
case '403':
|
|
100
|
-
import('./img/403.svg').then((res) => {
|
|
101
|
-
this.imgSrc = res.default
|
|
102
|
-
})
|
|
103
|
-
break
|
|
104
|
-
case '405':
|
|
105
|
-
import('./img/405.svg').then((res) => {
|
|
106
|
-
this.imgSrc = res.default
|
|
107
|
-
})
|
|
108
|
-
break
|
|
109
|
-
case '901':
|
|
110
|
-
import('./img/901.svg').then((res) => {
|
|
111
|
-
this.imgSrc = res.default
|
|
112
|
-
})
|
|
113
|
-
break
|
|
114
|
-
case '902':
|
|
115
|
-
import('./img/902.svg').then((res) => {
|
|
116
|
-
this.imgSrc = res.default
|
|
117
|
-
})
|
|
118
|
-
break
|
|
119
|
-
case '903':
|
|
120
|
-
import('./img/903.svg').then((res) => {
|
|
121
|
-
this.imgSrc = res.default
|
|
122
|
-
})
|
|
123
|
-
break
|
|
124
|
-
case '904':
|
|
125
|
-
import('./img/904.svg').then((res) => {
|
|
126
|
-
this.imgSrc = res.default
|
|
127
|
-
})
|
|
128
|
-
break
|
|
129
|
-
case '905':
|
|
130
|
-
import('./img/905.svg').then((res) => {
|
|
131
|
-
this.imgSrc = res.default
|
|
132
|
-
})
|
|
133
|
-
break
|
|
134
|
-
case '906':
|
|
135
|
-
import('./img/906.svg').then((res) => {
|
|
136
|
-
this.imgSrc = res.default
|
|
137
|
-
})
|
|
138
|
-
break
|
|
139
|
-
case '907':
|
|
140
|
-
import('./img/907.svg').then((res) => {
|
|
141
|
-
this.imgSrc = res.default
|
|
142
|
-
})
|
|
143
|
-
break
|
|
144
|
-
}
|
|
85
|
+
this.imgSrc = pics['icon_' + vn]
|
|
145
86
|
},
|
|
146
87
|
immediate: true
|
|
147
88
|
}
|
|
@@ -76,7 +76,7 @@
|
|
|
76
76
|
<slot slot="header" slot-scope="scope" name="upload-header" :column="scope.column">{{
|
|
77
77
|
'附件上传' | $lc
|
|
78
78
|
}}</slot>
|
|
79
|
-
<slot slot-scope="{ row, $index }" name="upload" :row="row"
|
|
79
|
+
<slot slot-scope="{ row, $index }" name="upload" :row="row" :[indexK]="$index">
|
|
80
80
|
<Upload
|
|
81
81
|
:ref="'upload' + $index"
|
|
82
82
|
class="n20-upload-table-up"
|
|
@@ -112,7 +112,7 @@
|
|
|
112
112
|
<slot name="percent-header" :column="scope.column">{{ '上传进度' | $lc }}</slot>
|
|
113
113
|
</template>
|
|
114
114
|
<template slot-scope="{ row, $index }">
|
|
115
|
-
<slot name="percent" :row="row"
|
|
115
|
+
<slot name="percent" :row="row" :[indexK]="$index">
|
|
116
116
|
<div v-if="row['_percent'] >= 0 && !row._typeDisabled" class="flex-box flex-v">
|
|
117
117
|
<el-progress
|
|
118
118
|
class="n20-upload-table-progress"
|
|
@@ -166,12 +166,17 @@
|
|
|
166
166
|
:close-on-click-modal="false"
|
|
167
167
|
@close="closeSee"
|
|
168
168
|
>
|
|
169
|
+
<span class="file-upload-table_preview-pn">
|
|
170
|
+
<el-button round onlyicon plain size="mini" icon="el-icon-back" @click="preSee" />
|
|
171
|
+
<el-button round onlyicon plain size="mini" icon="el-icon-right" @click="nextSee" />
|
|
172
|
+
</span>
|
|
173
|
+
|
|
169
174
|
<div v-if="visiblePv" class="p-a" style="height: 82vh">
|
|
170
175
|
<ViewerImg v-if="imgType.test(previewName)" :options="viewerOptions" style="height: 100%">
|
|
171
176
|
<img :src="previewUrl" :alt="previewName" style="display: none" />
|
|
172
177
|
</ViewerImg>
|
|
173
178
|
<component
|
|
174
|
-
:is="previewSameOrg ? 'object' : '
|
|
179
|
+
:is="previewSameOrg ? 'object' : 'div'"
|
|
175
180
|
v-else
|
|
176
181
|
:key="previewUrl"
|
|
177
182
|
:data="previewUrl"
|
|
@@ -180,9 +185,9 @@
|
|
|
180
185
|
<div class="flex-column flex-c flex-v" style="height: 100%">
|
|
181
186
|
<i class="el-icon-s-release" style="font-size: 60px; color: #999"></i>
|
|
182
187
|
<span style="margin-top: 16px">
|
|
183
|
-
{{ '不支持在线预览,请' | $lc
|
|
184
|
-
<
|
|
185
|
-
{{ '到本地查看' | $lc }}
|
|
188
|
+
{{ '不支持在线预览,请' | $lc
|
|
189
|
+
}}<el-link type="primary" @click="downFile(seeRow)">{{ '下载' | $lc }}</el-link
|
|
190
|
+
>{{ '到本地查看' | $lc }}
|
|
186
191
|
</span>
|
|
187
192
|
</div>
|
|
188
193
|
</component>
|
|
@@ -211,8 +216,10 @@
|
|
|
211
216
|
:accept="fileAccept"
|
|
212
217
|
:size="fileSize"
|
|
213
218
|
:http-request="uploadHttpRequest"
|
|
214
|
-
:
|
|
219
|
+
:before-upload="(file) => batchBeforeUploadFn(file)"
|
|
220
|
+
:on-remove="batchRemove"
|
|
215
221
|
:on-success="batchSuccess"
|
|
222
|
+
:on-error="batchError"
|
|
216
223
|
>
|
|
217
224
|
<template slot="trigger">
|
|
218
225
|
<i class="drag-icon n20-icon-shangchuan"></i>
|
|
@@ -290,7 +297,7 @@ export default {
|
|
|
290
297
|
},
|
|
291
298
|
seeTypes: {
|
|
292
299
|
type: RegExp,
|
|
293
|
-
default: () => /\.jpg
|
|
300
|
+
default: () => /\.(jpg|png|gif|svg|pdf)$/i
|
|
294
301
|
},
|
|
295
302
|
tableData: {
|
|
296
303
|
type: Array,
|
|
@@ -337,7 +344,8 @@ export default {
|
|
|
337
344
|
}
|
|
338
345
|
|
|
339
346
|
return {
|
|
340
|
-
|
|
347
|
+
indexK: '$index',
|
|
348
|
+
imgType: /\.(jpg|png|gif|svg)$/i,
|
|
341
349
|
selectionList: [],
|
|
342
350
|
currFileList: [],
|
|
343
351
|
visibleP: false,
|
|
@@ -345,7 +353,8 @@ export default {
|
|
|
345
353
|
visibleBatch: false,
|
|
346
354
|
previewUrl: undefined,
|
|
347
355
|
previewName: undefined,
|
|
348
|
-
previewSameOrg: false
|
|
356
|
+
previewSameOrg: false,
|
|
357
|
+
seeRow: {}
|
|
349
358
|
}
|
|
350
359
|
},
|
|
351
360
|
computed: {
|
|
@@ -369,10 +378,17 @@ export default {
|
|
|
369
378
|
}
|
|
370
379
|
},
|
|
371
380
|
methods: {
|
|
381
|
+
batchBeforeUploadFn(file) {
|
|
382
|
+
let bu = this.$listeners['before-upload'] || this.$listeners['beforeUpload']
|
|
383
|
+
if (bu) return bu(file)
|
|
384
|
+
},
|
|
372
385
|
batchUploadFn() {
|
|
373
386
|
let $uploadwrap = this.$refs['upload-batch']
|
|
374
|
-
let
|
|
375
|
-
|
|
387
|
+
let fileList = $uploadwrap.fileList
|
|
388
|
+
if (fileList.length !== 0 && fileList.every((f) => f.status === 'success')) {
|
|
389
|
+
this.visibleBatch = false
|
|
390
|
+
}
|
|
391
|
+
$uploadwrap.submit()
|
|
376
392
|
},
|
|
377
393
|
batchSuccess(response, file, fileList) {
|
|
378
394
|
let row = {}
|
|
@@ -385,6 +401,28 @@ export default {
|
|
|
385
401
|
this.visibleBatch = false
|
|
386
402
|
}
|
|
387
403
|
},
|
|
404
|
+
batchError(err, file, fileList) {
|
|
405
|
+
if (!fileList.some((f) => f.uid === file.uid)) {
|
|
406
|
+
let list = [...fileList]
|
|
407
|
+
file.status = 'ready'
|
|
408
|
+
if (err.msg) {
|
|
409
|
+
file.OrgName || (file.OrgName = file.name)
|
|
410
|
+
file.name = file.OrgName + ` *(${err.msg})`
|
|
411
|
+
}
|
|
412
|
+
console.log(file, 1234)
|
|
413
|
+
list.push(file)
|
|
414
|
+
let $uploadwrap = this.$refs['upload-batch']
|
|
415
|
+
$uploadwrap.fileList = list
|
|
416
|
+
}
|
|
417
|
+
},
|
|
418
|
+
batchRemove(file, fileList) {
|
|
419
|
+
let list = fileList.filter((f) => f.uid !== file.uid)
|
|
420
|
+
|
|
421
|
+
let $uploadwrap = this.$refs['upload-batch']
|
|
422
|
+
$uploadwrap.fileList = list
|
|
423
|
+
|
|
424
|
+
this.$emit('on-remove', file)
|
|
425
|
+
},
|
|
388
426
|
addRow() {
|
|
389
427
|
this.$emit('add-row')
|
|
390
428
|
},
|
|
@@ -440,8 +478,19 @@ export default {
|
|
|
440
478
|
|
|
441
479
|
clearTimeout(this.visiblePvT)
|
|
442
480
|
this.visiblePv = true
|
|
481
|
+
this.seeRow = row
|
|
443
482
|
}
|
|
444
483
|
},
|
|
484
|
+
preSee() {
|
|
485
|
+
let i = this.tableData.findIndex((row) => row === this.seeRow)
|
|
486
|
+
let row = this.tableData[i - 1] || this.tableData[this.tableData.length - 1]
|
|
487
|
+
this.seeFile(row)
|
|
488
|
+
},
|
|
489
|
+
nextSee() {
|
|
490
|
+
let i = this.tableData.findIndex((row) => row === this.seeRow)
|
|
491
|
+
let row = this.tableData[i + 1] || this.tableData[0]
|
|
492
|
+
this.seeFile(row)
|
|
493
|
+
},
|
|
445
494
|
closeSee() {
|
|
446
495
|
this.previewUrl && URL.revokeObjectURL(this.previewUrl)
|
|
447
496
|
this.previewUrl = undefined
|
|
@@ -454,7 +503,8 @@ export default {
|
|
|
454
503
|
this.$set(row, '_percent', 0)
|
|
455
504
|
this.$set(row, '_status', undefined)
|
|
456
505
|
|
|
457
|
-
this.$
|
|
506
|
+
let bu = this.$listeners['before-upload'] || this.$listeners['beforeUpload']
|
|
507
|
+
if (bu) return bu(file, row)
|
|
458
508
|
},
|
|
459
509
|
onProgressFn({ percent }, row) {
|
|
460
510
|
this.$set(row, '_percent', percent <= 99 ? Math.round(percent) : 99)
|
|
@@ -517,3 +567,10 @@ const typeOptionsD = [
|
|
|
517
567
|
{ type: '003', label: $lc('其他合同') }
|
|
518
568
|
]
|
|
519
569
|
</script>
|
|
570
|
+
<style>
|
|
571
|
+
.file-upload-table_preview-pn {
|
|
572
|
+
position: absolute;
|
|
573
|
+
right: 46px;
|
|
574
|
+
top: 10px;
|
|
575
|
+
}
|
|
576
|
+
</style>
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
<!-- eslint-disable-next-line vue/no-v-html -->
|
|
22
22
|
<h3 class="header-title m-r-auto" v-html="headerTitle"></h3>
|
|
23
23
|
<!-- YSCW -->
|
|
24
|
-
<sapn class="f-s-s"
|
|
24
|
+
<sapn v-if="ectad" class="f-s-s">
|
|
25
25
|
<span class="m-r-ss">
|
|
26
26
|
{{ '用户' | $lc }}: <span class="color-666">{{ userInfo.userName }}</span>
|
|
27
27
|
</span>
|
|
@@ -124,9 +124,9 @@
|
|
|
124
124
|
<dialogWrap :title="'语言切换' | $lc" :visible.sync="langV" append-to-body width="560px">
|
|
125
125
|
<div style="min-height: 114px">
|
|
126
126
|
<el-radio-group v-model="langVal" @change="setLang">
|
|
127
|
-
<el-radio label="zh-cn" border
|
|
128
|
-
<el-radio label="zh-hk" border
|
|
129
|
-
<el-radio label="en" border>
|
|
127
|
+
<el-radio label="zh-cn" border>简体中文</el-radio>
|
|
128
|
+
<el-radio label="zh-hk" border>繁體中文</el-radio>
|
|
129
|
+
<el-radio label="en" border>English</el-radio>
|
|
130
130
|
</el-radio-group>
|
|
131
131
|
</div>
|
|
132
132
|
</dialogWrap>
|
|
@@ -113,10 +113,13 @@ export default {
|
|
|
113
113
|
}
|
|
114
114
|
},
|
|
115
115
|
created() {
|
|
116
|
-
clearTimeout(this.getNNumTimeOut)
|
|
117
|
-
this.getNNumTimeOut = setInterval(this.getNNum, 1000 * 60 * 2)
|
|
118
|
-
|
|
119
116
|
this.getNNum()
|
|
117
|
+
document.addEventListener('visibilitychange', this.getNNum)
|
|
118
|
+
window.addEventListener('message', this.updateNotice)
|
|
119
|
+
},
|
|
120
|
+
beforeDestroy() {
|
|
121
|
+
document.removeEventListener('visibilitychange', this.getNNum)
|
|
122
|
+
window.removeEventListener('message', this.updateNotice)
|
|
120
123
|
},
|
|
121
124
|
methods: {
|
|
122
125
|
show() {
|
|
@@ -125,19 +128,29 @@ export default {
|
|
|
125
128
|
this.getMsgList()
|
|
126
129
|
this.getAfficheList()
|
|
127
130
|
},
|
|
131
|
+
updateNotice(ev) {
|
|
132
|
+
if (ev.data === 'NstcUpdateNotice') {
|
|
133
|
+
this.getNNum()
|
|
134
|
+
}
|
|
135
|
+
},
|
|
128
136
|
getNNum() {
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
loading: false,
|
|
133
|
-
|
|
137
|
+
clearTimeout(this.getNNumTimeOut)
|
|
138
|
+
if (!document.hidden) {
|
|
139
|
+
Promise.all([
|
|
140
|
+
axios.get('/bems/wkb/messageCenter/getUnReadTotal/' + this.username, null, { loading: false, noMsg: true }),
|
|
141
|
+
axios.get('/bems/1.0/notice/notReadCount', null, {
|
|
142
|
+
loading: false,
|
|
143
|
+
noMsg: true
|
|
144
|
+
})
|
|
145
|
+
]).then(([res_1, res_2]) => {
|
|
146
|
+
this.noticeNum = res_1.data.data
|
|
147
|
+
this.afficheNum = res_2.data
|
|
148
|
+
|
|
149
|
+
this.numC = this.noticeNum + this.afficheNum
|
|
134
150
|
})
|
|
135
|
-
]).then(([res_1, res_2]) => {
|
|
136
|
-
this.noticeNum = res_1.data.data
|
|
137
|
-
this.afficheNum = res_2.data
|
|
138
151
|
|
|
139
|
-
this.
|
|
140
|
-
}
|
|
152
|
+
this.getNNumTimeOut = setTimeout(this.loopGetNNum, 1000 * 60 * 5)
|
|
153
|
+
}
|
|
141
154
|
},
|
|
142
155
|
getMsgList() {
|
|
143
156
|
this.nLd = true
|
|
@@ -240,7 +253,7 @@ export default {
|
|
|
240
253
|
message: $lc('消息一键已读成功') + msg,
|
|
241
254
|
type: 'success'
|
|
242
255
|
})
|
|
243
|
-
|
|
256
|
+
window.postMessage('NstcUpdateNotice')
|
|
244
257
|
this.getMsgList()
|
|
245
258
|
})
|
|
246
259
|
})
|
|
@@ -254,7 +267,7 @@ export default {
|
|
|
254
267
|
message: $lc('系统公告一键已读成功'),
|
|
255
268
|
type: 'success'
|
|
256
269
|
})
|
|
257
|
-
|
|
270
|
+
window.postMessage('NstcUpdateNotice')
|
|
258
271
|
this.getAfficheList()
|
|
259
272
|
})
|
|
260
273
|
},
|
|
@@ -4,6 +4,13 @@
|
|
|
4
4
|
|
|
5
5
|
<script>
|
|
6
6
|
import { $lc } from '../../utils/i18n/index'
|
|
7
|
+
import icon_termination from './images/termination.png'
|
|
8
|
+
import icon_efficacy from './images/efficacy.png'
|
|
9
|
+
import icon_conclude from './images/conclude.png'
|
|
10
|
+
import icon_clinch from './images/clinch.png'
|
|
11
|
+
import icon_cancellation from './images/cancellation.png'
|
|
12
|
+
import icon_accounts from './images/accounts.png'
|
|
13
|
+
|
|
7
14
|
export default {
|
|
8
15
|
name: 'Stamp',
|
|
9
16
|
props: {
|
|
@@ -34,35 +41,23 @@ export default {
|
|
|
34
41
|
handler(val) {
|
|
35
42
|
switch (val) {
|
|
36
43
|
case $lc('已终止'):
|
|
37
|
-
|
|
38
|
-
this.imgSrc = res.default
|
|
39
|
-
})
|
|
44
|
+
this.imgSrc = icon_termination
|
|
40
45
|
break
|
|
41
46
|
case $lc('已失效'):
|
|
42
|
-
|
|
43
|
-
this.imgSrc = res.default
|
|
44
|
-
})
|
|
47
|
+
this.imgSrc = icon_efficacy
|
|
45
48
|
break
|
|
46
49
|
case $lc('已签订'):
|
|
47
|
-
|
|
48
|
-
this.imgSrc = res.default
|
|
49
|
-
})
|
|
50
|
+
this.imgSrc = icon_conclude
|
|
50
51
|
break
|
|
51
52
|
case $lc('已成交'):
|
|
52
|
-
|
|
53
|
-
this.imgSrc = res.default
|
|
54
|
-
})
|
|
53
|
+
this.imgSrc = icon_clinch
|
|
55
54
|
break
|
|
56
55
|
|
|
57
56
|
case $lc('已作废'):
|
|
58
|
-
|
|
59
|
-
this.imgSrc = res.default
|
|
60
|
-
})
|
|
57
|
+
this.imgSrc = icon_cancellation
|
|
61
58
|
break
|
|
62
59
|
case $lc('已结清'):
|
|
63
|
-
|
|
64
|
-
this.imgSrc = res.default
|
|
65
|
-
})
|
|
60
|
+
this.imgSrc = icon_accounts
|
|
66
61
|
break
|
|
67
62
|
}
|
|
68
63
|
},
|
|
@@ -203,7 +203,7 @@ export default {
|
|
|
203
203
|
sizeNum = parseFloat(size)
|
|
204
204
|
}
|
|
205
205
|
if (file.size > sizeNum) {
|
|
206
|
-
this.$message.error($lc('文件大小不能超过 ') + size + '
|
|
206
|
+
this.$message.error($lc('文件大小不能超过 ') + size + '!')
|
|
207
207
|
return false
|
|
208
208
|
}
|
|
209
209
|
}
|
|
@@ -211,10 +211,12 @@ export default {
|
|
|
211
211
|
let accept = this.accept
|
|
212
212
|
if (accept) {
|
|
213
213
|
let [ftB = '', ftA = ''] = file.type.split('/')
|
|
214
|
-
ftB = ftB + '/*'
|
|
214
|
+
ftB = ftB ? ftB + '/*' : ''
|
|
215
215
|
ftA = file.name.match(/\.[^.]+$/)?.[0] || '.' + ftA
|
|
216
|
-
if (
|
|
217
|
-
|
|
216
|
+
if ((ftB && accept.includes(ftB)) || accept.includes(ftA)) {
|
|
217
|
+
// console.log('文件格式' + ftB + '/' + ftA)
|
|
218
|
+
} else {
|
|
219
|
+
this.$message.error(ftA + $lc('格式文件,暂不支持上传!'))
|
|
218
220
|
return false
|
|
219
221
|
}
|
|
220
222
|
}
|
|
@@ -254,7 +256,7 @@ export default {
|
|
|
254
256
|
}
|
|
255
257
|
|
|
256
258
|
let abort
|
|
257
|
-
let Pro = axios.post(opt.action, FD, {
|
|
259
|
+
let Pro = axios.post(opt.action + '?r=' + Math.random(), FD, {
|
|
258
260
|
headers: Object.assign(auth.setHeaders(this.headers), { 'Content-Type': 'multipart/form-data' }),
|
|
259
261
|
loading: false,
|
|
260
262
|
onUploadProgress: (arg) => {
|
|
@@ -326,6 +328,9 @@ export default {
|
|
|
326
328
|
if (this.onRemove) {
|
|
327
329
|
this.onRemove(file, fileList)
|
|
328
330
|
}
|
|
331
|
+
},
|
|
332
|
+
submit() {
|
|
333
|
+
return this.$refs['upload'].submit()
|
|
329
334
|
}
|
|
330
335
|
}
|
|
331
336
|
}
|
|
@@ -10,9 +10,9 @@
|
|
|
10
10
|
></el-link>
|
|
11
11
|
</div>
|
|
12
12
|
</slot>
|
|
13
|
-
<div class="flex-item" style="height:
|
|
13
|
+
<div class="flex-item" style="height: 50%">
|
|
14
14
|
<clEmpty v-if="isEmpty" type="empty" :width="150" :height="150" style="height: 100%">
|
|
15
|
-
<span slot="content" class="
|
|
15
|
+
<span slot="content" class="work-card--empty-title">暂无数据</span>
|
|
16
16
|
</clEmpty>
|
|
17
17
|
<slot v-else></slot>
|
|
18
18
|
</div>
|
package/src/i18n.json
CHANGED
|
@@ -167,7 +167,7 @@ function sendAjaxSniffingData(e) {
|
|
|
167
167
|
$ajax({
|
|
168
168
|
url: r,
|
|
169
169
|
type: 'GET',
|
|
170
|
-
timeout:
|
|
170
|
+
timeout: 300,
|
|
171
171
|
async: false,
|
|
172
172
|
dataType: 'json',
|
|
173
173
|
error: function (e, t, r) {
|
|
@@ -192,7 +192,7 @@ function sendAjaxSniffingDataAsync(e) {
|
|
|
192
192
|
$ajax({
|
|
193
193
|
url: r,
|
|
194
194
|
type: 'GET',
|
|
195
|
-
timeout:
|
|
195
|
+
timeout: 300,
|
|
196
196
|
async: true,
|
|
197
197
|
dataType: 'json',
|
|
198
198
|
error: function (e, t, r) {},
|
|
@@ -1550,6 +1550,8 @@ function initCertList() {
|
|
|
1550
1550
|
|
|
1551
1551
|
const config = {
|
|
1552
1552
|
license:
|
|
1553
|
+
process.env.VUE_APP_NetSign_ARG ||
|
|
1554
|
+
window.VUE_APP_NetSign_ARG ||
|
|
1553
1555
|
'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',
|
|
1554
1556
|
exportKeyAble: false,
|
|
1555
1557
|
disableExeUrl: true
|
|
@@ -1567,15 +1569,13 @@ try {
|
|
|
1567
1569
|
}
|
|
1568
1570
|
initCertList()
|
|
1569
1571
|
|
|
1570
|
-
let _dn
|
|
1571
1572
|
function getDN() {
|
|
1572
|
-
|
|
1573
|
-
|
|
1574
|
-
|
|
1575
|
-
|
|
1576
|
-
}
|
|
1573
|
+
let dn
|
|
1574
|
+
let userInfo = JSON.parse(sessionStorage.getItem('userInfo'))
|
|
1575
|
+
if (userInfo && userInfo.dn) {
|
|
1576
|
+
dn = userInfo.dn
|
|
1577
1577
|
}
|
|
1578
|
-
return
|
|
1578
|
+
return dn
|
|
1579
1579
|
}
|
|
1580
1580
|
|
|
1581
1581
|
// 签名方法
|
|
@@ -244,7 +244,7 @@ function sendAjaxSniffingData(t) {
|
|
|
244
244
|
ajaxInfosec({
|
|
245
245
|
url: r,
|
|
246
246
|
method: "GET",
|
|
247
|
-
timeout:
|
|
247
|
+
timeout: 300,
|
|
248
248
|
data: "",
|
|
249
249
|
async: false,
|
|
250
250
|
dataType: "json",
|
|
@@ -272,7 +272,7 @@ function sendAjaxSniffingDataAsync(t) {
|
|
|
272
272
|
ajaxInfosec({
|
|
273
273
|
url: r,
|
|
274
274
|
method: "GET",
|
|
275
|
-
timeout:
|
|
275
|
+
timeout: 300,
|
|
276
276
|
data: "",
|
|
277
277
|
async: true,
|
|
278
278
|
dataType: "json",
|