cloud-web-corejs 1.0.218 → 1.0.220
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/baseAlert/index.vue +1 -1
- package/src/components/excelExport/button.vue +55 -46
- package/src/components/excelExport/exportFieldDialog.vue +3 -3
- package/src/components/excelExport/index.vue +62 -34
- package/src/components/excelExport/mixins.js +969 -2
- package/src/components/table/config.js +74 -1
- package/src/components/table/index.js +203 -89
- package/src/components/table/tableFormMixin.js +285 -1
- package/src/components/table/util/index.js +5 -1
- package/src/components/table/vxeFilter/index.js +3 -3
- package/src/components/table/vxeFilter/mixin.js +4 -4
- package/src/components/xform/form-designer/form-widget/dialog/importDialogMixin.js +104 -101
- package/src/components/xform/form-designer/setting-panel/form-setting.vue +4 -4
- package/src/components/xform/form-designer/setting-panel/property-editor/container-data-table/table-column-dialog.vue +3 -3
- package/src/components/xform/form-designer/setting-panel/property-editor/field-import-button/import-button-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/field-import-button/import2-button-editor.vue +1 -1
- package/src/components/xform/form-render/container-item/data-table-mixin.js +321 -103
- package/src/components/xform/mixins/defaultHandle.js +75 -48
- package/src/layout/components/Sidebar/default.vue +11 -6
- package/src/layout/components/langTool.vue +32 -29
- package/src/store/getters.js +2 -1
- package/src/store/modules/user.js +27 -3
- package/src/utils/vab.js +83 -73
- package/src/views/user/user/edit.vue +45 -0
package/package.json
CHANGED
|
@@ -1,65 +1,79 @@
|
|
|
1
1
|
<template>
|
|
2
|
-
<el-dropdown trigger="hover"
|
|
2
|
+
<el-dropdown trigger="hover">
|
|
3
3
|
<el-button type="primary" class="button-sty" size="mini">
|
|
4
|
-
<span>{{ $t2(
|
|
5
|
-
class="el-icon-arrow-down el-icon--right"></i>
|
|
4
|
+
<span>{{ $t2("列表导出", "components.excelExport.listExport") }}</span
|
|
5
|
+
><span class="line"></span> <i class="el-icon-arrow-down el-icon--right"></i>
|
|
6
6
|
</el-button>
|
|
7
7
|
<el-dropdown-menu slot="dropdown">
|
|
8
|
-
<el-dropdown-item
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
8
|
+
<el-dropdown-item
|
|
9
|
+
icon="el-icon-upload2"
|
|
10
|
+
@click.native="toDo()"
|
|
11
|
+
v-if="option.conditionExport !== false"
|
|
12
|
+
>
|
|
13
|
+
{{ $t2("条件导出", "components.excelExport.conditionExport") }}
|
|
12
14
|
</el-dropdown-item>
|
|
13
|
-
<el-dropdown-item
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
15
|
+
<el-dropdown-item
|
|
16
|
+
icon="el-icon-upload2"
|
|
17
|
+
@click.native="toDo('selected')"
|
|
18
|
+
v-if="option.selectExport !== false"
|
|
19
|
+
>
|
|
20
|
+
{{ $t2("选择导出", "components.excelExport.selectExport") }}
|
|
17
21
|
</el-dropdown-item>
|
|
18
|
-
<el-dropdown-item
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
+
<el-dropdown-item
|
|
23
|
+
icon="el-icon-upload2"
|
|
24
|
+
@click.native="toDo('current')"
|
|
25
|
+
v-if="option.currentExport === true"
|
|
26
|
+
>
|
|
27
|
+
{{ $t2("当前页导出", "components.excelExport.currentExport") }}
|
|
22
28
|
</el-dropdown-item>
|
|
23
29
|
</el-dropdown-menu>
|
|
24
30
|
|
|
25
|
-
<indexViewDialog
|
|
31
|
+
<indexViewDialog
|
|
32
|
+
ref="indexViewDialogRef"
|
|
33
|
+
v-if="showIndexViewDialog"
|
|
34
|
+
:visiabled.sync="showIndexViewDialog"
|
|
35
|
+
:param="indexViewOption"
|
|
36
|
+
></indexViewDialog>
|
|
26
37
|
</el-dropdown>
|
|
27
38
|
</template>
|
|
28
39
|
|
|
29
40
|
<script>
|
|
30
41
|
import indexViewDialog from "./index.vue";
|
|
31
42
|
|
|
32
|
-
|
|
33
43
|
export default {
|
|
34
44
|
name: "base-table-export",
|
|
35
45
|
props: {
|
|
36
|
-
option: Object
|
|
46
|
+
option: Object,
|
|
37
47
|
},
|
|
38
|
-
components:{
|
|
39
|
-
indexViewDialog
|
|
48
|
+
components: {
|
|
49
|
+
indexViewDialog,
|
|
40
50
|
},
|
|
41
|
-
data(){
|
|
51
|
+
data() {
|
|
42
52
|
return {
|
|
43
|
-
showExportFieldOptions:null,
|
|
44
|
-
showExportFieldDialog:false,
|
|
45
|
-
indexViewOption:null,
|
|
46
|
-
showIndexViewDialog:false
|
|
47
|
-
}
|
|
53
|
+
showExportFieldOptions: null,
|
|
54
|
+
showExportFieldDialog: false,
|
|
55
|
+
indexViewOption: null,
|
|
56
|
+
showIndexViewDialog: false,
|
|
57
|
+
};
|
|
48
58
|
},
|
|
49
59
|
methods: {
|
|
50
60
|
toDo(type) {
|
|
51
|
-
let that = this.$attrs[
|
|
52
|
-
let option = {
|
|
61
|
+
let that = this.$attrs["parent-target"];
|
|
62
|
+
let option = {
|
|
63
|
+
...this.option,
|
|
64
|
+
type: type,
|
|
65
|
+
vue: that,
|
|
66
|
+
destroyComponent: (loadingObj) => {
|
|
53
67
|
this.showIndexViewDialog = false;
|
|
54
|
-
if(loadingObj){
|
|
55
|
-
setTimeout(function (){
|
|
56
|
-
loadingObj.close()
|
|
57
|
-
},200)
|
|
68
|
+
if (loadingObj) {
|
|
69
|
+
setTimeout(function () {
|
|
70
|
+
loadingObj.close();
|
|
71
|
+
}, 200);
|
|
58
72
|
}
|
|
59
|
-
}
|
|
60
|
-
|
|
73
|
+
},
|
|
74
|
+
};
|
|
61
75
|
|
|
62
|
-
/*
|
|
76
|
+
/*
|
|
63
77
|
// this.option = this.param;
|
|
64
78
|
let $grid = getGrid(option.vue, option.targetRef);
|
|
65
79
|
let datas = [];
|
|
@@ -78,21 +92,16 @@ export default {
|
|
|
78
92
|
}
|
|
79
93
|
*/
|
|
80
94
|
|
|
81
|
-
|
|
82
95
|
this.indexViewOption = option;
|
|
83
96
|
this.showIndexViewDialog = true;
|
|
84
|
-
this.$nextTick(()=>{
|
|
97
|
+
this.$nextTick(() => {
|
|
85
98
|
this.$refs.indexViewDialogRef.exc();
|
|
86
|
-
})
|
|
99
|
+
});
|
|
87
100
|
// that.$excelExport(option);
|
|
88
101
|
},
|
|
89
|
-
openIndexViewDialog(option){
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
}
|
|
93
|
-
}
|
|
102
|
+
openIndexViewDialog(option) {},
|
|
103
|
+
},
|
|
104
|
+
};
|
|
94
105
|
</script>
|
|
95
106
|
|
|
96
|
-
<style scoped>
|
|
97
|
-
|
|
98
|
-
</style>
|
|
107
|
+
<style scoped></style>
|
|
@@ -186,7 +186,7 @@ export default {
|
|
|
186
186
|
} else {
|
|
187
187
|
//导出子表数据
|
|
188
188
|
let exportItemColumns = target.exportItemColumns || [];
|
|
189
|
-
let originOption = target.originOption;
|
|
189
|
+
let originOption = target.params.originOption;
|
|
190
190
|
let oriExportItemColumns = originOption.exportItemConfig?.columns || [];
|
|
191
191
|
|
|
192
192
|
this.loopColumnHandle(oriExportItemColumns, (item) => {
|
|
@@ -223,7 +223,7 @@ export default {
|
|
|
223
223
|
let exportItem = this.param.type === "exportItem";
|
|
224
224
|
|
|
225
225
|
let $grid = this.getGrid();
|
|
226
|
-
let originOption = $grid.originOption;
|
|
226
|
+
let originOption = $grid.params.originOption;
|
|
227
227
|
let leafColumns = this.$refs.tree.getCheckedNodes(true);
|
|
228
228
|
let checkLeafIds = leafColumns.map((item) => item.id);
|
|
229
229
|
|
|
@@ -277,7 +277,7 @@ export default {
|
|
|
277
277
|
},
|
|
278
278
|
dialogConfirm() {
|
|
279
279
|
let target = this.getGrid();
|
|
280
|
-
let originOption = target.originOption;
|
|
280
|
+
let originOption = target.params.originOption;
|
|
281
281
|
let leafColumns = this.$refs.tree.getCheckedNodes(true);
|
|
282
282
|
let checkIds = this.$refs.tree.getCheckedNodes(false, true).map((item) => item.id);
|
|
283
283
|
let exportItem = this.param.type == "exportItem";
|
|
@@ -1,11 +1,26 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div class="inner-dialog">
|
|
3
3
|
<span v-if="isMinimize" class="export-box-small">
|
|
4
|
-
<a href="javascript:void(0)" @click="handleMinimize"
|
|
5
|
-
|
|
4
|
+
<a href="javascript:void(0)" @click="handleMinimize"
|
|
5
|
+
><p>
|
|
6
|
+
{{ $t2("列表导出", "components.excelExport.listExport")
|
|
7
|
+
}}<i class="el-icon-zoom-in"></i>
|
|
8
|
+
</p>
|
|
9
|
+
<el-progress
|
|
10
|
+
:percentage="percentageNum"
|
|
11
|
+
:show-text="false"
|
|
12
|
+
:stroke-width="3"
|
|
13
|
+
status="success"
|
|
14
|
+
></el-progress
|
|
15
|
+
></a>
|
|
6
16
|
</span>
|
|
7
|
-
<exportFieldDialog
|
|
8
|
-
|
|
17
|
+
<exportFieldDialog
|
|
18
|
+
:visiable.sync="showExportFieldDialog"
|
|
19
|
+
v-if="showExportFieldDialog"
|
|
20
|
+
:param="param"
|
|
21
|
+
@close="closeExportFieldDialog"
|
|
22
|
+
@confirm="confirmExportFieldDialog"
|
|
23
|
+
></exportFieldDialog>
|
|
9
24
|
<el-dialog
|
|
10
25
|
ref="exportDialog"
|
|
11
26
|
:title="title"
|
|
@@ -18,49 +33,55 @@
|
|
|
18
33
|
:modal-append-to-body="false"
|
|
19
34
|
@close="dialogClose2"
|
|
20
35
|
>
|
|
21
|
-
|
|
36
|
+
<!-- <el-button class="isFullIcon" @click="handleMinimize">
|
|
22
37
|
<el-tooltip effect="dark" content="缩小" placement="top">
|
|
23
38
|
<i class="el-icon-minus"></i>
|
|
24
39
|
</el-tooltip>
|
|
25
40
|
</el-button> -->
|
|
26
41
|
<div class="export-box">
|
|
27
|
-
<div class="tips">
|
|
28
|
-
|
|
29
|
-
|
|
42
|
+
<div class="tips">
|
|
43
|
+
{{ $t2("导出中,请勿关闭当前窗口", "components.excelExport.tip") }}
|
|
44
|
+
</div>
|
|
45
|
+
<el-progress
|
|
46
|
+
:text-inside="true"
|
|
47
|
+
:stroke-width="26"
|
|
48
|
+
:percentage="percentageNum"
|
|
49
|
+
class="export-progress"
|
|
50
|
+
></el-progress>
|
|
30
51
|
<vxe-grid ref="exportTable" v-bind="exportGrid">
|
|
31
|
-
<template #row_edit="{row}">
|
|
52
|
+
<template #row_edit="{ row }">
|
|
32
53
|
<a href="javascript:void(0);" class="a-link" @click="exportAll(row)">
|
|
33
|
-
<i class="el-icon-download"/>
|
|
34
|
-
{{ $t2(
|
|
54
|
+
<i class="el-icon-download" />
|
|
55
|
+
{{ $t2("下载", "system.button.download") }}
|
|
35
56
|
</a>
|
|
36
57
|
</template>
|
|
37
58
|
</vxe-grid>
|
|
38
59
|
</div>
|
|
39
60
|
<span slot="footer" class="dialog-footer">
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
61
|
+
<div class="fl import-count">
|
|
62
|
+
<span class="f-red doneNum">{{ doneSize }}</span>
|
|
63
|
+
/
|
|
64
|
+
<span class="dataSize">{{ tTotalSize }}</span>
|
|
65
|
+
</div>
|
|
66
|
+
<el-button type="primary" plain class="button-sty" @click="dialogClose2">
|
|
67
|
+
<i class="el-icon-close el-icon"></i>
|
|
68
|
+
{{ $t2("取 消", "system.button.cancel2") }}
|
|
69
|
+
</el-button>
|
|
70
|
+
<el-button type="primary" @click="dialogClose2" class="button-sty">
|
|
71
|
+
<i class="el-icon-check el-icon"></i>
|
|
72
|
+
{{ $t2("确 定", "system.button.confirm2") }}
|
|
73
|
+
</el-button>
|
|
74
|
+
</span>
|
|
54
75
|
</el-dialog>
|
|
55
76
|
</div>
|
|
56
77
|
</template>
|
|
57
78
|
|
|
58
79
|
<script>
|
|
59
|
-
import {mixins} from
|
|
80
|
+
import { mixins } from "./mixins";
|
|
60
81
|
|
|
61
82
|
export default {
|
|
62
|
-
name:
|
|
63
|
-
mixins: [mixins]
|
|
83
|
+
name: "excelExport2",
|
|
84
|
+
mixins: [mixins],
|
|
64
85
|
};
|
|
65
86
|
</script>
|
|
66
87
|
|
|
@@ -84,13 +105,13 @@ export default {
|
|
|
84
105
|
padding: 0;
|
|
85
106
|
}
|
|
86
107
|
}
|
|
87
|
-
.export-box-small{
|
|
108
|
+
.export-box-small {
|
|
88
109
|
position: absolute;
|
|
89
110
|
left: 0;
|
|
90
111
|
top: 0;
|
|
91
112
|
width: 93px;
|
|
92
113
|
line-height: 23px;
|
|
93
|
-
height:26px;
|
|
114
|
+
height: 26px;
|
|
94
115
|
font-size: 12px;
|
|
95
116
|
color: #fff;
|
|
96
117
|
white-space: nowrap;
|
|
@@ -100,13 +121,20 @@ export default {
|
|
|
100
121
|
border-radius: 2px;
|
|
101
122
|
background: #2a6494;
|
|
102
123
|
text-align: center;
|
|
103
|
-
.el-progress{
|
|
104
|
-
|
|
105
|
-
|
|
124
|
+
.el-progress {
|
|
125
|
+
position: absolute;
|
|
126
|
+
bottom: -2.5px;
|
|
127
|
+
left: 0;
|
|
128
|
+
right: 0;
|
|
129
|
+
}
|
|
130
|
+
p {
|
|
131
|
+
margin: 0;
|
|
132
|
+
}
|
|
133
|
+
i {
|
|
106
134
|
vertical-align: middle;
|
|
107
135
|
margin-left: 8px;
|
|
108
136
|
font-size: 14px;
|
|
109
|
-
color: #
|
|
137
|
+
color: #fff;
|
|
110
138
|
}
|
|
111
139
|
}
|
|
112
140
|
</style>
|