n20-common-lib 3.2.54 → 3.2.56
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/Calendar/src/main.vue +1 -1
- package/nstc-g6/components/Form/AutocompleteCustom/index.vue +3 -1
- package/nstc-g6/components/Form/BusinessSpecific/InputWithUnit.vue +5 -4
- package/nstc-g6/components/Form/BusinessSpecific/SelectTreeDialog.vue +18 -15
- package/nstc-g6/components/Form/Component.vue +1 -1
- package/nstc-g6/components/Form/ComponentSecond.vue +1 -1
- package/nstc-g6/components/Form/DatepickerCustom/index.vue +3 -3
- package/nstc-g6/components/Form/InputAndDialog/src/main.vue +5 -4
- package/nstc-g6/components/Form/InputCustom/index.vue +3 -2
- package/nstc-g6/components/Form/IntervalinputCustom/index.vue +2 -1
- package/nstc-g6/components/Form/ItemSecond.vue +2 -2
- package/nstc-g6/components/Form/SelectAccount/src/main.vue +9 -8
- package/nstc-g6/components/Form/SelectAndDialog/src/main.vue +5 -4
- package/nstc-g6/components/Form/SelectCashFlow/src/main.vue +7 -6
- package/nstc-g6/components/Form/SelectCustom/index.vue +3 -2
- package/nstc-g6/components/Form/SelectSubject/src/main.vue +8 -7
- package/nstc-g6/components/Form/SelectindialogCustom/index.vue +3 -2
- package/nstc-g6/components/Form/UploadCustom/index.vue +4 -3
- package/nstc-g6/components/Form/configs.js +2 -1
- package/nstc-g6/components/Form/configsSecond.js +2 -1
- package/nstc-g6/components/Form/payeePersonSelect/src/main.vue +15 -18
- package/nstc-g6/components/FormGroup/src/main.vue +9 -6
- package/nstc-g6/components/FormGroup/src/validate.js +3 -1
- package/nstc-g6/components/InputTag/InputTag.vue +1 -1
- package/nstc-g6/components/NstcConfirm/NstcConfirm.vue +5 -4
- package/nstc-g6/components/NstcDialog/NstcDialog.vue +5 -2
- package/nstc-g6/components/NstcDialogTable/NstcDialogTable.vue +5 -3
- package/nstc-g6/components/NstcDropdownTree/NstcDropdownTree.vue +5 -4
- package/nstc-g6/components/NstcElectronicFile/NstcElectronicFile.vue +32 -30
- package/nstc-g6/components/NstcExcelCustomImport/NstcExcelCustomImport.vue +17 -15
- package/nstc-g6/components/NstcExcelExport/NstcExcelExport.vue +3 -2
- package/nstc-g6/components/NstcExcelImport/NstcExcelImport.vue +18 -16
- package/nstc-g6/components/NstcExcelImportN/NstcExcelImportN.vue +17 -15
- package/nstc-g6/components/NstcFileUpload/NstcFileUpload.vue +39 -37
- package/nstc-g6/components/NstcForm/AutocompleteCustom/index.vue +3 -1
- package/nstc-g6/components/NstcForm/BusinessSpecific/InputWithUnit.vue +5 -4
- package/nstc-g6/components/NstcForm/BusinessSpecific/SelectTreeDialog.vue +16 -15
- package/nstc-g6/components/NstcForm/Component.vue +1 -1
- package/nstc-g6/components/NstcForm/ComponentSecond.vue +1 -1
- package/nstc-g6/components/NstcForm/DatepickerCustom/index.vue +3 -3
- package/nstc-g6/components/NstcForm/InputAndDialog/NstcInputAndDialog.vue +5 -4
- package/nstc-g6/components/NstcForm/InputCustom/index.vue +3 -2
- package/nstc-g6/components/NstcForm/IntervalInputCustom/index.vue +2 -1
- package/nstc-g6/components/NstcForm/ItemSecond.vue +2 -2
- package/nstc-g6/components/NstcForm/SelectAccount/NstcSelectAccount.vue +11 -10
- package/nstc-g6/components/NstcForm/SelectAndDialog/NstcSelectAndDialog.vue +5 -4
- package/nstc-g6/components/NstcForm/SelectCashFlow/NstcSelectCashFlow.vue +9 -8
- package/nstc-g6/components/NstcForm/SelectCustom/index.vue +3 -2
- package/nstc-g6/components/NstcForm/SelectSubject/NstcSelectSubject.vue +10 -9
- package/nstc-g6/components/NstcForm/SelectindialogCustom/index.vue +4 -3
- package/nstc-g6/components/NstcForm/UploadCustom/index.vue +4 -3
- package/nstc-g6/components/NstcForm/configs.js +2 -1
- package/nstc-g6/components/NstcForm/configsSecond.js +2 -1
- package/nstc-g6/components/NstcForm/payeePersonSelect/NstcPayeePerson.vue +15 -14
- package/nstc-g6/components/NstcPagination/NstcPagination.vue +9 -7
- package/nstc-g6/components/NstcScreenFull/NstcScreenFull.vue +3 -1
- package/nstc-g6/components/NstcSelectTree/NstcSelectTree.vue +6 -5
- package/nstc-g6/components/NstcSelectTreeList/NstcSelectTreeList.vue +4 -3
- package/nstc-g6/components/NstcTable/NstcTable.vue +3 -2
- package/nstc-g6/components/NstcTableSet/NstcTableSet.vue +16 -14
- package/nstc-g6/components/NstcThemePicker/NstcThemePicker.vue +3 -1
- package/nstc-g6/components/NstcWorkBench/NstcWorkBench.vue +36 -32
- package/nstc-g6/components/Search/NstcSearch.vue +8 -6
- package/nstc-g6/components/approvelTwo/main.vue +6 -5
- package/nstc-g6/components/approvelTwo/progress.vue +2 -2
- package/nstc-g6/index.js +3 -1
- package/nstc-g6/utils/dateAndValidator.js +8 -6
- package/nstc-g6/utils/vendor/Export2Zip.js +2 -1
- package/package.json +1 -1
- package/src/components/ApprovalButtons/index.vue +2 -4
- package/src/components/ApprovalButtons/indexApp.vue +1 -1
- package/src/components/ApprovalButtons/selectSpr.vue +3 -3
- package/src/components/ApprovalButtons/showOtherAttr.vue +1 -1
- package/src/components/ApprovalCard/index.vue +4 -4
- package/src/components/ApprovalRecord/approvalImg.vue +2 -1
- package/src/components/AttachmentPass/index.vue +1 -1
- package/src/components/DateChoose/index.vue +3 -3
- package/src/components/DateSelect/index.vue +1 -1
- package/src/components/DateSelect/quarterDatePicker.vue +5 -5
- package/src/components/DynamicField/DynamicFieldOptions.vue +4 -4
- package/src/components/DynamicField/tableList.vue +1 -1
- package/src/components/ElectronicArchive/index.vue +1 -1
- package/src/components/FileUploadTable/index.vue +89 -35
- package/src/components/LoginSetting/index.vue +19 -9
- package/src/components/LoginTemporary/form.vue +2 -4
- package/src/components/LoginTemporary/index.vue +1 -1
- package/src/components/LoginTemporary/retrievePw.vue +8 -8
- package/src/components/Pivot/ChartView.vue +1 -1
- package/src/components/Pivot/TableView.vue +1 -1
- package/src/components/Pivot/index.vue +11 -7
- package/src/components/ProFilterView/index.vue +4 -3
- package/src/components/SelectDatePickerPro/halfYearPicker.vue +4 -4
- package/src/components/SelectDatePickerPro/index.vue +1 -1
- package/src/components/SelectDatePickerPro/quarterDatePicker.vue +5 -5
- package/src/components/TableSetSize/index.vue +2 -2
- package/src/components/Upload/index.vue +1 -1
- package/src/components/operatingStatus/index.vue +1 -1
- package/src/components/v3/UploadList/index.vue +1 -1
- package/src/i18n.json +802 -4
- package/src/plugins/Print/print-js/src/js/init.js +2 -1
- package/src/plugins/SetMenuTree/setmenutree.vue +3 -3
- package/src/plugins/SetMenuTree/utils.js +2 -1
- package/src/plugins/Sign/Itrus/index.js +12 -9
- package/src/plugins/Sign/Itrus/sign_3720.js +13 -8
- package/src/plugins/Sign/NetSM3/index.js +14 -11
- package/src/plugins/Sign/NetV3/index.js +17 -16
- package/src/plugins/Sign/SkfSign/index.js +14 -11
- package/src/plugins/Sign/bjca/index.js +21 -18
- package/src/plugins/Sign/cfca/index.js +10 -9
- package/src/plugins/Sign/hnca/index.js +11 -11
- package/src/plugins/Sign/index.js +2 -1
- package/src/plugins/Sign/kySign/index.js +13 -10
- package/src/plugins/Sign/netca/index.js +8 -7
- package/src/plugins/Sign/sdca/index.js +16 -15
- package/src/plugins/Sign/sign.js +13 -10
- package/src/plugins/Sign/signV3/sign.js +17 -14
- package/src/plugins/Sign/sign_back.js +13 -10
- package/src/utils/xls2json.js +2 -1
- package/src/utils/xlsx2json.js +2 -1
|
@@ -32,11 +32,15 @@
|
|
|
32
32
|
:height="height"
|
|
33
33
|
border
|
|
34
34
|
@selection-change="(selection) => (selectionList = selection)"
|
|
35
|
-
@sort-change="onSortChange"
|
|
36
35
|
>
|
|
37
36
|
<slot name="selection-column">
|
|
38
37
|
<el-table-column type="selection" width="50" align="center" />
|
|
39
38
|
</slot>
|
|
39
|
+
<el-table-column :label="'排序' | $lc" width="50" align="center">
|
|
40
|
+
<template slot-scope="{ row }">
|
|
41
|
+
<i class="n20-icon-tuodong file-upload-table__drag-handle" :data-row-key="row[keys.rowKey]"></i>
|
|
42
|
+
</template>
|
|
43
|
+
</el-table-column>
|
|
40
44
|
<template v-if="dataPorp.slotHeader">
|
|
41
45
|
<el-table-column
|
|
42
46
|
v-for="item in dataPorp.slotHeader"
|
|
@@ -320,13 +324,15 @@
|
|
|
320
324
|
</template>
|
|
321
325
|
|
|
322
326
|
<script>
|
|
323
|
-
import aiCheckDialog from './aiCheckDialog.vue'
|
|
324
|
-
import getJsonc from '../../assets/getJsonc.js'
|
|
325
327
|
import _axios from 'axios'
|
|
326
328
|
import dayjs from 'dayjs'
|
|
329
|
+
import Sortable from 'sortablejs'
|
|
330
|
+
import 'viewerjs/dist/viewer.css'
|
|
327
331
|
import XEUtils from 'xe-utils'
|
|
328
332
|
|
|
329
|
-
import '
|
|
333
|
+
import aiCheckDialog from './aiCheckDialog.vue'
|
|
334
|
+
|
|
335
|
+
import getJsonc from '../../assets/getJsonc.js'
|
|
330
336
|
import auth from '../../utils/auth'
|
|
331
337
|
import axios from '../../utils/axios'
|
|
332
338
|
import { $lc } from '../../utils/i18n/index'
|
|
@@ -402,7 +408,7 @@ export default {
|
|
|
402
408
|
},
|
|
403
409
|
action: {
|
|
404
410
|
type: String,
|
|
405
|
-
default: '/
|
|
411
|
+
default: '/neams/eamsbaserecord/batchSavejson'
|
|
406
412
|
},
|
|
407
413
|
batchPrintMethod: {
|
|
408
414
|
type: Function,
|
|
@@ -510,7 +516,8 @@ export default {
|
|
|
510
516
|
officeStatus: false,
|
|
511
517
|
batchUploading: false,
|
|
512
518
|
// 批量上传使用的文件数据(避免直接修改计算属性)
|
|
513
|
-
_batchFileData: null
|
|
519
|
+
_batchFileData: null,
|
|
520
|
+
sortable: null
|
|
514
521
|
}
|
|
515
522
|
},
|
|
516
523
|
computed: {
|
|
@@ -553,32 +560,64 @@ export default {
|
|
|
553
560
|
},
|
|
554
561
|
immediate: true,
|
|
555
562
|
deep: true
|
|
563
|
+
},
|
|
564
|
+
tableKey() {
|
|
565
|
+
this.initSortable()
|
|
556
566
|
}
|
|
557
567
|
},
|
|
558
568
|
mounted() {
|
|
559
569
|
this.getConfiguration()
|
|
570
|
+
this.initSortable()
|
|
571
|
+
},
|
|
572
|
+
beforeDestroy() {
|
|
573
|
+
this.destroySortable()
|
|
560
574
|
},
|
|
561
575
|
methods: {
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
576
|
+
initSortable() {
|
|
577
|
+
this.$nextTick(() => {
|
|
578
|
+
this.destroySortable()
|
|
579
|
+
|
|
580
|
+
const $tbody = this.$refs.elTable?.$el?.querySelector('.el-table__body-wrapper > table > tbody')
|
|
581
|
+
if (!$tbody) {
|
|
582
|
+
return
|
|
583
|
+
}
|
|
584
|
+
|
|
585
|
+
this.sortable = Sortable.create($tbody, {
|
|
586
|
+
handle: '.file-upload-table__drag-handle',
|
|
587
|
+
ghostClass: 'file-upload-table__sortable-ghost',
|
|
588
|
+
setData(dataTransfer) {
|
|
589
|
+
dataTransfer.setData('Text', '')
|
|
590
|
+
},
|
|
591
|
+
onEnd: ({ oldIndex, newIndex }) => {
|
|
592
|
+
if (
|
|
593
|
+
oldIndex === newIndex ||
|
|
594
|
+
oldIndex === undefined ||
|
|
595
|
+
newIndex === undefined ||
|
|
596
|
+
oldIndex < 0 ||
|
|
597
|
+
newIndex < 0
|
|
598
|
+
) {
|
|
599
|
+
return
|
|
600
|
+
}
|
|
601
|
+
|
|
602
|
+
const targetRow = this.tableData.splice(oldIndex, 1)[0]
|
|
603
|
+
if (!targetRow) {
|
|
604
|
+
return
|
|
605
|
+
}
|
|
606
|
+
this.tableData.splice(newIndex, 0, targetRow)
|
|
607
|
+
this.$emit('sort', this.tableData.slice())
|
|
608
|
+
this.saveFileSort().catch(() => {
|
|
609
|
+
this.$message.error($lc('附件排序保存失败'))
|
|
610
|
+
})
|
|
611
|
+
}
|
|
612
|
+
})
|
|
580
613
|
})
|
|
581
614
|
},
|
|
615
|
+
destroySortable() {
|
|
616
|
+
if (this.sortable) {
|
|
617
|
+
this.sortable.destroy()
|
|
618
|
+
this.sortable = null
|
|
619
|
+
}
|
|
620
|
+
},
|
|
582
621
|
async saveFileSort() {
|
|
583
622
|
const sortList = this.tableData
|
|
584
623
|
.map((row, index) => ({
|
|
@@ -629,7 +668,7 @@ export default {
|
|
|
629
668
|
})
|
|
630
669
|
} else {
|
|
631
670
|
if (!this.AIOptions.bussType) {
|
|
632
|
-
this.$message.error($lc(
|
|
671
|
+
this.$message.error($lc('请先配置bussType'))
|
|
633
672
|
return false
|
|
634
673
|
}
|
|
635
674
|
let { data, code } = await axios.post(
|
|
@@ -653,7 +692,7 @@ export default {
|
|
|
653
692
|
// ai识别
|
|
654
693
|
async AiFn(row) {
|
|
655
694
|
if (!this.AIOptions.bussType) {
|
|
656
|
-
this.$message.error($lc(
|
|
695
|
+
this.$message.error($lc('请先配置bussType'))
|
|
657
696
|
return false
|
|
658
697
|
}
|
|
659
698
|
const { data, code } = await axios.post(
|
|
@@ -740,7 +779,7 @@ export default {
|
|
|
740
779
|
if (code === 200) {
|
|
741
780
|
let aDom = document.createElement('a')
|
|
742
781
|
aDom.href = data
|
|
743
|
-
|
|
782
|
+
aDom.download = $lc('批量附件.pdf')
|
|
744
783
|
aDom.click()
|
|
745
784
|
|
|
746
785
|
this.$nextTick(() => {
|
|
@@ -822,11 +861,7 @@ export default {
|
|
|
822
861
|
return
|
|
823
862
|
}
|
|
824
863
|
let placeholderIndex = this.tableData.findIndex(
|
|
825
|
-
(item) =>
|
|
826
|
-
item[this.keys.type] === type &&
|
|
827
|
-
!item[this.keys.url] &&
|
|
828
|
-
!item[this.keys.name] &&
|
|
829
|
-
!item._name
|
|
864
|
+
(item) => item[this.keys.type] === type && !item[this.keys.url] && !item[this.keys.name] && !item._name
|
|
830
865
|
)
|
|
831
866
|
if (placeholderIndex > -1) {
|
|
832
867
|
this.tableData.splice(placeholderIndex, 1)
|
|
@@ -1006,9 +1041,11 @@ export default {
|
|
|
1006
1041
|
type: 'error',
|
|
1007
1042
|
confirmButtonText: $lc('确认'),
|
|
1008
1043
|
cancelButtonText: $lc('取消')
|
|
1009
|
-
})
|
|
1010
|
-
|
|
1011
|
-
|
|
1044
|
+
})
|
|
1045
|
+
.then(() => {
|
|
1046
|
+
this.$emit('delete-rows', this.selectionList)
|
|
1047
|
+
})
|
|
1048
|
+
.catch(() => undefined)
|
|
1012
1049
|
},
|
|
1013
1050
|
|
|
1014
1051
|
async getFileInfo(row, type) {
|
|
@@ -1231,4 +1268,21 @@ export default {
|
|
|
1231
1268
|
right: 46px;
|
|
1232
1269
|
top: 10px;
|
|
1233
1270
|
}
|
|
1271
|
+
|
|
1272
|
+
.file-upload-table__drag-handle {
|
|
1273
|
+
display: inline-block;
|
|
1274
|
+
color: #909399;
|
|
1275
|
+
font-size: 16px;
|
|
1276
|
+
cursor: move;
|
|
1277
|
+
}
|
|
1278
|
+
|
|
1279
|
+
.file-upload-table__drag-handle:hover {
|
|
1280
|
+
color: #606266;
|
|
1281
|
+
}
|
|
1282
|
+
|
|
1283
|
+
.file-upload-table__sortable-ghost {
|
|
1284
|
+
opacity: 0.8;
|
|
1285
|
+
color: #fff !important;
|
|
1286
|
+
background: #42b983 !important;
|
|
1287
|
+
}
|
|
1234
1288
|
</style>
|
|
@@ -149,7 +149,7 @@ export default {
|
|
|
149
149
|
})
|
|
150
150
|
for (const i of _this.checkedList) {
|
|
151
151
|
if (!this.LOGIN_MODE) this.LOGIN_MODE = i
|
|
152
|
-
else this.LOGIN_MODE +=
|
|
152
|
+
else this.LOGIN_MODE += ',' + i
|
|
153
153
|
}
|
|
154
154
|
},
|
|
155
155
|
getdata(list) {
|
|
@@ -158,7 +158,7 @@ export default {
|
|
|
158
158
|
if (i.pmName === 'LOGIN_MODE') {
|
|
159
159
|
_this.LOGIN_MODE = i.pmValue
|
|
160
160
|
_this.LOGIN_MODE_ID = i.pmId
|
|
161
|
-
_this.checkedList = i.pmValue.split(
|
|
161
|
+
_this.checkedList = i.pmValue.split(',')
|
|
162
162
|
} else if (i.pmName === 'MAIN_PAGE_TEXT') {
|
|
163
163
|
_this.loginModel.MAIN_PAGE_TEXT = i.pmValue
|
|
164
164
|
_this.MAIN_PAGE_TEXT_ID = i.pmId
|
|
@@ -201,7 +201,9 @@ export default {
|
|
|
201
201
|
if (type) {
|
|
202
202
|
if (this.imgSize < size) {
|
|
203
203
|
await this.$confirm(
|
|
204
|
-
|
|
204
|
+
`${$lc('当前图片尺寸大于建议大小(')}${screen.width}*${screen.height}${$lc(
|
|
205
|
+
'),将以填充的方式进行处理,是否继续?'
|
|
206
|
+
)}`,
|
|
205
207
|
$lc('提示'),
|
|
206
208
|
{
|
|
207
209
|
type: 'warning'
|
|
@@ -210,7 +212,9 @@ export default {
|
|
|
210
212
|
this.$refs.bgUpload.$refs.upload.submit()
|
|
211
213
|
} else if (this.imgSize >= size) {
|
|
212
214
|
await this.$confirm(
|
|
213
|
-
|
|
215
|
+
`${$lc('当前图片尺寸小于建议大小(')}${screen.width}*${screen.height}${$lc(
|
|
216
|
+
'),可能会发生失真,是否继续?'
|
|
217
|
+
)}`,
|
|
214
218
|
$lc('提示'),
|
|
215
219
|
{
|
|
216
220
|
type: 'warning'
|
|
@@ -221,7 +225,9 @@ export default {
|
|
|
221
225
|
} else {
|
|
222
226
|
if (this.logoSize < size) {
|
|
223
227
|
await this.$confirm(
|
|
224
|
-
|
|
228
|
+
`${$lc('当前图片尺寸大于建议大小(')}108*30px${$lc(
|
|
229
|
+
'),将以填充的方式进行处理,是否继续?'
|
|
230
|
+
)}`,
|
|
225
231
|
$lc('提示'),
|
|
226
232
|
{
|
|
227
233
|
type: 'warning'
|
|
@@ -229,9 +235,13 @@ export default {
|
|
|
229
235
|
)
|
|
230
236
|
this.$refs.logUpload.$refs.upload.submit()
|
|
231
237
|
} else if (this.logoSize >= size) {
|
|
232
|
-
await this.$confirm(
|
|
233
|
-
|
|
234
|
-
|
|
238
|
+
await this.$confirm(
|
|
239
|
+
`${$lc('当前图片尺寸小于建议大小(')}108*30px${$lc('),可能会发生失真,是否继续?')}`,
|
|
240
|
+
$lc('提示'),
|
|
241
|
+
{
|
|
242
|
+
type: 'warning'
|
|
243
|
+
}
|
|
244
|
+
)
|
|
235
245
|
this.$refs.logUpload.$refs.upload.submit()
|
|
236
246
|
}
|
|
237
247
|
}
|
|
@@ -317,7 +327,7 @@ export default {
|
|
|
317
327
|
}
|
|
318
328
|
for (const i of e) {
|
|
319
329
|
if (!this.LOGIN_MODE) this.LOGIN_MODE = i
|
|
320
|
-
else this.LOGIN_MODE +=
|
|
330
|
+
else this.LOGIN_MODE += ',' + i
|
|
321
331
|
}
|
|
322
332
|
}
|
|
323
333
|
}
|
|
@@ -403,9 +403,7 @@ export default {
|
|
|
403
403
|
{ loading: this.loadingSub }
|
|
404
404
|
)
|
|
405
405
|
.then(() => {
|
|
406
|
-
this.$message.success(
|
|
407
|
-
`${typeName}: ${this.form[type]} 验证码发送成功`
|
|
408
|
-
)
|
|
406
|
+
this.$message.success(`${typeName}: ${this.form[type]} ${$lc('验证码发送成功')}`)
|
|
409
407
|
})
|
|
410
408
|
.catch(() => {
|
|
411
409
|
clearTimeout(this.setTimeNum)
|
|
@@ -470,7 +468,7 @@ export default {
|
|
|
470
468
|
})
|
|
471
469
|
} else {
|
|
472
470
|
// 当重新请求大于3次,抛出错误
|
|
473
|
-
this.$message.warning(
|
|
471
|
+
this.$message.warning($lc('登录失败,请重新登录!'))
|
|
474
472
|
this.getAzCount = 0
|
|
475
473
|
reject()
|
|
476
474
|
}
|
|
@@ -31,12 +31,12 @@
|
|
|
31
31
|
<el-form-item class="m-b" :label="'账号' | $lc">
|
|
32
32
|
<el-input v-model="username" :placeholder="'请输入账号' | $lc" />
|
|
33
33
|
</el-form-item>
|
|
34
|
-
<el-form-item class="m-b" label="
|
|
34
|
+
<el-form-item class="m-b" :label="$lc('UK验证')" prop="code">
|
|
35
35
|
<br />
|
|
36
36
|
<div v-if="checkCert" class="filed-tips">{{ '该账号未开启UK校验!' | $lc }}</div>
|
|
37
37
|
<div v-if="ukCode !== 1">
|
|
38
38
|
<div :class="ukCode ? 'success-tips' : 'filed-tips'">
|
|
39
|
-
{{ ukCode ? '验证成功!' : '验证失败!' }}
|
|
39
|
+
{{ $lc(ukCode ? '验证成功!' : '验证失败!') }}
|
|
40
40
|
</div>
|
|
41
41
|
<div v-show="!ukCode" class="filed-tips">{{ '自助找回密码失败,请联系管理员' | $lc }}</div>
|
|
42
42
|
</div>
|
|
@@ -79,19 +79,19 @@ export default {
|
|
|
79
79
|
const lengthToFirstPassword = (rule, value, callback) => {
|
|
80
80
|
if (value) {
|
|
81
81
|
if (this.dataForm.maxLength < value.length || this.dataForm.minLength > value.length) {
|
|
82
|
-
callback(new Error(
|
|
82
|
+
callback(new Error(`${$lc('密码长度为')}${this.dataForm.minLength}-${this.dataForm.maxLength}!`))
|
|
83
83
|
} else if (
|
|
84
84
|
Number(this.dataForm.passwordStrength) === 2 &&
|
|
85
85
|
!/^(((?=.*[0-9])(?=.*[a-zA-Z])|(?=.*[0-9])(?=.*[^\s0-9a-zA-Z])|(?=.*[a-zA-Z])(?=.*[^\s0-9a-zA-Z]))[^\s]+)$/.test(
|
|
86
86
|
value
|
|
87
87
|
)
|
|
88
88
|
) {
|
|
89
|
-
callback(new Error(
|
|
89
|
+
callback(new Error($lc('密码至少包括数字,字母,特殊符号其中两种')))
|
|
90
90
|
} else if (
|
|
91
91
|
Number(this.dataForm.passwordStrength) === 3 &&
|
|
92
92
|
!/^(?=.*\d)(?=.*[a-zA-Z])(?=.*[~!@#$%^&*])[\da-zA-Z~!@#$%^&*]{0,}$/.test(value)
|
|
93
93
|
) {
|
|
94
|
-
callback(new Error(
|
|
94
|
+
callback(new Error($lc('密码同时包括包括数字,字母,特殊符号三种')))
|
|
95
95
|
} else {
|
|
96
96
|
callback()
|
|
97
97
|
}
|
|
@@ -215,12 +215,12 @@ export default {
|
|
|
215
215
|
noMsg: true
|
|
216
216
|
})
|
|
217
217
|
.then(() => {
|
|
218
|
-
this.$message.success(`${typeName}: ${this.updateForm[type]}
|
|
218
|
+
this.$message.success(`${typeName}: ${this.updateForm[type]} ${$lc('验证码发送成功')}`)
|
|
219
219
|
})
|
|
220
220
|
.catch(() => {
|
|
221
221
|
clearTimeout(this.setTimeNum)
|
|
222
222
|
this.codeNum = $lc('验证码')
|
|
223
|
-
this.$message.warning(`${typeName}: ${this.updateForm[type]}
|
|
223
|
+
this.$message.warning(`${typeName}: ${this.updateForm[type]} ${$lc('验证码发送失败')}`)
|
|
224
224
|
})
|
|
225
225
|
}
|
|
226
226
|
})
|
|
@@ -268,7 +268,7 @@ export default {
|
|
|
268
268
|
data.sign = this.sign
|
|
269
269
|
data.certDn = this.certDn
|
|
270
270
|
axios.post(`/bems/prod_1.0/uas/api/authorization/password/reset`, data, { loading: false }).then((res) => {
|
|
271
|
-
this.$message.success(
|
|
271
|
+
this.$message.success($lc('密码更新成功!'))
|
|
272
272
|
this.type = 'phone'
|
|
273
273
|
})
|
|
274
274
|
})
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
<div ref="chartContainer" class="chart-container"></div>
|
|
7
7
|
</div>
|
|
8
8
|
<div v-else class="empty-state">
|
|
9
|
-
<Empty type="noData2" :height="200" :width="200" content="暂无数据" />
|
|
9
|
+
<Empty type="noData2" :height="200" :width="200" :content="$lc('暂无数据')" />
|
|
10
10
|
</div>
|
|
11
11
|
</div>
|
|
12
12
|
</template>
|
|
@@ -617,7 +617,7 @@ export default {
|
|
|
617
617
|
const metrics = (this.currentReport.metrics || []).filter((m) => m && m.prop)
|
|
618
618
|
if (metrics.length === 0) return ''
|
|
619
619
|
const firstMetric = this.columns.find((c) => c.prop === metrics[0].prop)
|
|
620
|
-
return firstMetric ? `${firstMetric.label}
|
|
620
|
+
return firstMetric ? `${firstMetric.label}${$lc('(人民币)')}` : ''
|
|
621
621
|
},
|
|
622
622
|
|
|
623
623
|
// 获取第一个维度标签
|
|
@@ -682,7 +682,9 @@ export default {
|
|
|
682
682
|
html += `<div style="display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:4px;">`
|
|
683
683
|
html += `<div style="display:flex;align-items:center;gap:8px;">`
|
|
684
684
|
html += `<span style="font-size:12px;color:#1d2129;font-weight:600;font-family:'Open Sans',sans-serif;">${value}</span>`
|
|
685
|
-
html += `<span style="font-size:12px;color:#4e5969;font-family:'PingFang SC',sans-serif;">${groupCount}
|
|
685
|
+
html += `<span style="font-size:12px;color:#4e5969;font-family:'PingFang SC',sans-serif;">${groupCount} ${$lc(
|
|
686
|
+
'笔'
|
|
687
|
+
)}</span>`
|
|
686
688
|
html += `</div>`
|
|
687
689
|
html += `</div>`
|
|
688
690
|
|
|
@@ -704,7 +706,9 @@ export default {
|
|
|
704
706
|
html += `</div>`
|
|
705
707
|
html += `<div style="display:flex;align-items:center;gap:8px;">`
|
|
706
708
|
html += `<span style="font-size:12px;color:#1d2129;font-weight:600;font-family:'Open Sans',sans-serif;">${value}</span>`
|
|
707
|
-
html += `<span style="font-size:12px;color:#4e5969;font-family:'PingFang SC',sans-serif;">${groupCount}
|
|
709
|
+
html += `<span style="font-size:12px;color:#4e5969;font-family:'PingFang SC',sans-serif;">${groupCount} ${$lc(
|
|
710
|
+
'笔'
|
|
711
|
+
)}</span>`
|
|
708
712
|
html += `</div>`
|
|
709
713
|
html += `</div>`
|
|
710
714
|
})
|
|
@@ -1236,7 +1240,7 @@ export default {
|
|
|
1236
1240
|
// 添加新报表
|
|
1237
1241
|
addNewReport() {
|
|
1238
1242
|
const newReport = this.getDefaultReport()
|
|
1239
|
-
newReport.name =
|
|
1243
|
+
newReport.name = `${$lc('报表清单')} ${this.reportList.length + 1}`
|
|
1240
1244
|
this.reportList.push(newReport)
|
|
1241
1245
|
this.currentReportIndex = this.reportList.length - 1
|
|
1242
1246
|
this.saveToStorage()
|
|
@@ -1269,9 +1273,9 @@ export default {
|
|
|
1269
1273
|
},
|
|
1270
1274
|
|
|
1271
1275
|
handleDeleteReport(report) {
|
|
1272
|
-
this.$confirm(
|
|
1273
|
-
confirmButtonText: $lc(
|
|
1274
|
-
cancelButtonText: $lc(
|
|
1276
|
+
this.$confirm($lc('确定要删除报表“NAME”吗?').replace('NAME', report.name), $lc('提示'), {
|
|
1277
|
+
confirmButtonText: $lc('确定'),
|
|
1278
|
+
cancelButtonText: $lc('取消'),
|
|
1275
1279
|
type: 'warning'
|
|
1276
1280
|
})
|
|
1277
1281
|
.then(() => {
|
|
@@ -58,10 +58,11 @@
|
|
|
58
58
|
<i class="v3-icon-find"></i>
|
|
59
59
|
<div style="margin-left: 8px">
|
|
60
60
|
{{
|
|
61
|
-
|
|
61
|
+
$lc('视图数据范围(N)').replace(
|
|
62
|
+
'N',
|
|
62
63
|
(selectItem.keyIds && selectItem.keyIds.length) ||
|
|
63
|
-
|
|
64
|
-
|
|
64
|
+
(this.conditionGroups && this.conditionGroups.length)
|
|
65
|
+
)
|
|
65
66
|
}}
|
|
66
67
|
</div>
|
|
67
68
|
</div>
|
|
@@ -11,14 +11,14 @@
|
|
|
11
11
|
<div class="el-date-picker__header el-date-picker__header--bordered">
|
|
12
12
|
<button
|
|
13
13
|
type="button"
|
|
14
|
-
|
|
14
|
+
:aria-label="$lc('前一年')"
|
|
15
15
|
class="el-picker-panel__icon-btn el-date-picker__prev-btn el-icon-d-arrow-left"
|
|
16
16
|
@click="prev"
|
|
17
17
|
></button>
|
|
18
18
|
<span role="button" class="el-date-picker__header-label" @click="handleYear">{{ year }}{{ '年' | $lc }}</span>
|
|
19
19
|
<button
|
|
20
20
|
type="button"
|
|
21
|
-
|
|
21
|
+
:aria-label="$lc('后一年')"
|
|
22
22
|
class="el-picker-panel__icon-btn el-date-picker__next-btn el-icon-d-arrow-right"
|
|
23
23
|
@click="next"
|
|
24
24
|
></button>
|
|
@@ -104,7 +104,7 @@ export default {
|
|
|
104
104
|
const [, year, startMonth] = startDateMatch
|
|
105
105
|
this.year = year
|
|
106
106
|
this.halfYear = startMonth === '01' ? 1 : 2
|
|
107
|
-
this.showValue = `${year} 年 ${startMonth === '01' ? $lc("上半年") : $lc("下半年")}`
|
|
107
|
+
this.showValue = `${year} ${$lc('年')} ${startMonth === '01' ? $lc("上半年") : $lc("下半年")}`
|
|
108
108
|
} else {
|
|
109
109
|
this.showValue = ''
|
|
110
110
|
}
|
|
@@ -133,7 +133,7 @@ export default {
|
|
|
133
133
|
this.halfYear = i + 1
|
|
134
134
|
let arr = [`${this.year}-${i === 0 ? '01' : '07'}`, `${this.year}-${i === 0 ? '06' : '12'}`]
|
|
135
135
|
this.showHalfYear = false
|
|
136
|
-
this.showValue = `${this.year} 年 ${i === 0 ? $lc("上半年") : $lc("下半年")}`
|
|
136
|
+
this.showValue = `${this.year} ${$lc('年')} ${i === 0 ? $lc("上半年") : $lc("下半年")}`
|
|
137
137
|
// 6月最后一天是30 12月最后一天是31
|
|
138
138
|
this.$emit('input', { startDate: arr[0] + '-01', endDate: i === 0 ? arr[1] + '-30' : arr[1] + '-31' })
|
|
139
139
|
this.$emit('change', { startDate: arr[0] + '-01', endDate: i === 0 ? arr[1] + '-30' : arr[1] + '-31' })
|
|
@@ -12,14 +12,14 @@
|
|
|
12
12
|
<div class="el-date-picker__header el-date-picker__header--bordered">
|
|
13
13
|
<button
|
|
14
14
|
type="button"
|
|
15
|
-
|
|
15
|
+
:aria-label="$lc('前一年')"
|
|
16
16
|
class="el-picker-panel__icon-btn el-date-picker__prev-btn el-icon-d-arrow-left"
|
|
17
17
|
@click="prev"
|
|
18
18
|
></button>
|
|
19
19
|
<span role="button" class="el-date-picker__header-label" @click="handleYear">{{ year }}{{ '年' | $lc }}</span>
|
|
20
20
|
<button
|
|
21
21
|
type="button"
|
|
22
|
-
|
|
22
|
+
:aria-label="$lc('后一年')"
|
|
23
23
|
class="el-picker-panel__icon-btn el-date-picker__next-btn el-icon-d-arrow-right"
|
|
24
24
|
@click="next"
|
|
25
25
|
></button>
|
|
@@ -177,9 +177,9 @@ export default {
|
|
|
177
177
|
},
|
|
178
178
|
get() {
|
|
179
179
|
if (this.value.startDate && this.value.endDate) {
|
|
180
|
-
return `${dayjs(this.value.startDate).year()} 年
|
|
180
|
+
return `${dayjs(this.value.startDate).year()} ${$lc('年')} ${$lc('第')}${this.getChinese(
|
|
181
181
|
dayjs(this.value.endDate).quarter()
|
|
182
|
-
)}
|
|
182
|
+
)}${$lc('季度')}`
|
|
183
183
|
} else {
|
|
184
184
|
return ''
|
|
185
185
|
}
|
|
@@ -233,7 +233,7 @@ export default {
|
|
|
233
233
|
that.season = i + 1
|
|
234
234
|
let arr = that.valueArr[i].split(' - ')
|
|
235
235
|
that.showSeason = false
|
|
236
|
-
this.showValue = `${this.year} 年 ${this.season}
|
|
236
|
+
this.showValue = `${this.year} ${$lc('年')} ${this.season} ${$lc('季度')}`
|
|
237
237
|
that.$emit('input', { startDate: this.year + '-' + arr[0], endDate: this.year + '-' + arr[1] })
|
|
238
238
|
that.$emit('change', { startDate: this.year + '-' + arr[0], endDate: this.year + '-' + arr[1] }) // 每次选择时间都将当前选择时间发送到父组件
|
|
239
239
|
},
|
|
@@ -8,8 +8,8 @@
|
|
|
8
8
|
@mouseleave="hoverIconKey = null"
|
|
9
9
|
></i>
|
|
10
10
|
<el-dropdown-menu slot="dropdown">
|
|
11
|
-
<el-dropdown-item command="small">{{
|
|
12
|
-
<el-dropdown-item command="mini">{{
|
|
11
|
+
<el-dropdown-item command="small">{{ $lc('默认') }}</el-dropdown-item>
|
|
12
|
+
<el-dropdown-item command="mini">{{ $lc('紧凑') }}</el-dropdown-item>
|
|
13
13
|
</el-dropdown-menu>
|
|
14
14
|
</el-dropdown>
|
|
15
15
|
</template>
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
<el-carousel-item v-for="tip in tips" :key="tip.id">
|
|
4
4
|
<div v-if="tip.isShow === '1'" v-title:br="list" :class="`tip_color_${tip.style || 'default'}`">
|
|
5
5
|
{{ tip.busNname }}{{ enumData[tip.busState] }}{{ tip.busCode.includes('CENTER') ? '(' + tip.currency + ')' : ''
|
|
6
|
-
}}{{ tip.isError === '1' ? '
|
|
6
|
+
}}{{ tip.isError === '1' ? $lc('(有异常)') : '' }}
|
|
7
7
|
</div>
|
|
8
8
|
</el-carousel-item>
|
|
9
9
|
</el-carousel>
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
</div>
|
|
14
14
|
<el-divider direction="vertical"></el-divider>
|
|
15
15
|
<el-button type="text" class="toggle-btn" @click="toggleCollapse">
|
|
16
|
-
{{ showAllTypes ? '收起未传类型' : '展开全部' }}
|
|
16
|
+
{{ $lc(showAllTypes ? '收起未传类型' : '展开全部') }}
|
|
17
17
|
<i :class="['el-icon-arrow-down', { 'is-reverse': showAllTypes }]"></i>
|
|
18
18
|
</el-button>
|
|
19
19
|
</div>
|