agilebuilder-ui 1.1.40 → 1.1.41-sit1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/{401-7bd60242.js → 401-2fa0b20f.js} +1 -1
- package/lib/{404-d2daf8d0.js → 404-192f705f.js} +1 -1
- package/lib/{iframe-page-4c181c23.js → iframe-page-fc8be096.js} +1 -1
- package/lib/{index-e9efe5c2.js → index-c5435fac.js} +5220 -5170
- package/lib/super-ui.css +1 -1
- package/lib/super-ui.js +1 -1
- package/lib/super-ui.umd.cjs +75 -75
- package/lib/{tab-content-iframe-index-77bf55ca.js → tab-content-iframe-index-1ed76ef3.js} +1 -1
- package/lib/{tab-content-index-8157438c.js → tab-content-index-5ccb5f5d.js} +1 -1
- package/lib/{tache-subprocess-history-bc9f1bea.js → tache-subprocess-history-b2829b97.js} +1 -1
- package/package.json +1 -1
- package/packages/fs-preview/src/fs-preview.vue +194 -89
- package/packages/fs-upload-list/src/fs-upload-list.vue +60 -204
- package/packages/fs-upload-new/src/fs-upload-new.vue +1 -1
- package/packages/super-grid/src/custom-formatter.js +16 -10
- package/packages/super-grid/src/dynamic-input.vue +10 -28
- package/packages/super-grid/src/normal-column-content.vue +9 -6
- package/packages/super-grid/src/normal-column.vue +8 -4
- package/packages/super-grid/src/row-operation.vue +13 -9
- package/packages/super-grid/src/search-form-advancedQuery.vue +1 -1
- package/packages/super-grid/src/search-form-item.vue +23 -23
- package/packages/super-grid/src/search-form-open.vue +164 -158
- package/packages/super-grid/src/search-methods.js +489 -577
- package/packages/super-grid/src/super-grid-service.js +141 -153
- package/packages/super-grid/src/super-grid.vue +40 -14
- package/packages/super-nine-grid/src/search-form.vue +461 -659
- package/packages/workgroup-tree-inline/src/workgroup-tree-inline.vue +515 -539
- package/packages/workgroup-user-tree-inline/src/workgroup-tree-inline-service.js +24 -44
- package/packages/workgroup-user-tree-inline/src/workgroup-user-tree-inline.vue +626 -665
- package/src/utils/permission.js +86 -9
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
v-html="(column.searchLabel ?? column.label).replace(/\\n/g, '</br>')"
|
|
10
10
|
/>
|
|
11
11
|
</template>
|
|
12
|
-
<span v-if="customComponent(column) === true">
|
|
12
|
+
<span v-if="customComponent(column) === true" style="width: 100%">
|
|
13
13
|
<component
|
|
14
14
|
:is="column.componentName"
|
|
15
15
|
:ref="column.componentName"
|
|
@@ -169,7 +169,6 @@
|
|
|
169
169
|
:options="getDynamicDataSourceOptions(column)"
|
|
170
170
|
:table-name="tableName"
|
|
171
171
|
@change="multiselectChange"
|
|
172
|
-
@input="setValueToModelProp(column.prop, $event)"
|
|
173
172
|
/>
|
|
174
173
|
</template>
|
|
175
174
|
<!--
|
|
@@ -217,11 +216,8 @@
|
|
|
217
216
|
@blur="hiddenEmpty()"
|
|
218
217
|
>
|
|
219
218
|
<template #suffix>
|
|
220
|
-
<el-tooltip
|
|
221
|
-
|
|
222
|
-
placement="bottom"
|
|
223
|
-
>
|
|
224
|
-
<el-checkbox v-if="isShowEmtpty" v-model="checkedEmpty" @change="checkEmptyChange"/>
|
|
219
|
+
<el-tooltip :content="$t('superGrid.searchEmpty')" placement="bottom">
|
|
220
|
+
<el-checkbox v-if="isShowEmtpty" v-model="checkedEmpty" @change="checkEmptyChange" />
|
|
225
221
|
</el-tooltip>
|
|
226
222
|
</template>
|
|
227
223
|
</el-input>
|
|
@@ -293,7 +289,7 @@ export default {
|
|
|
293
289
|
moduleConfig: {},
|
|
294
290
|
dateVal: this.getFormItemValue(this.column.prop),
|
|
295
291
|
controlConfig: getControlConfig(this.column),
|
|
296
|
-
isShowEmtptyFlag: false
|
|
292
|
+
isShowEmtptyFlag: false
|
|
297
293
|
// checkedEmpty: false,
|
|
298
294
|
}
|
|
299
295
|
},
|
|
@@ -308,12 +304,12 @@ export default {
|
|
|
308
304
|
isShowEmtpty() {
|
|
309
305
|
return this.isShowEmtptyFlag
|
|
310
306
|
},
|
|
311
|
-
checkedEmpty(){
|
|
312
|
-
if(this.column._emptyValue
|
|
307
|
+
checkedEmpty() {
|
|
308
|
+
if (this.column._emptyValue && this.column._emptyValue === '#blank#') {
|
|
313
309
|
return true
|
|
314
310
|
}
|
|
315
|
-
if(this.column._resetValue || this.column._resetValue === undefined){
|
|
316
|
-
if(this.column._resetValue){
|
|
311
|
+
if (this.column._resetValue || this.column._resetValue === undefined) {
|
|
312
|
+
if (this.column._resetValue) {
|
|
317
313
|
this.column._resetValue = undefined
|
|
318
314
|
this.isShowEmtptyFlag = false
|
|
319
315
|
}
|
|
@@ -350,9 +346,7 @@ export default {
|
|
|
350
346
|
return isDynamicDataSourceSource(column)
|
|
351
347
|
},
|
|
352
348
|
setValueToModelProp(prop, value, componentName, index) {
|
|
353
|
-
console.log(
|
|
354
|
-
'%c描述-105004',
|
|
355
|
-
'color:#2E3435;background:#F8BB07;padding:3px;border-radius:2px',
|
|
349
|
+
console.log('setValueToModelProp',
|
|
356
350
|
prop,
|
|
357
351
|
value,
|
|
358
352
|
componentName,
|
|
@@ -503,31 +497,37 @@ export default {
|
|
|
503
497
|
return ['00:00:00']
|
|
504
498
|
}
|
|
505
499
|
} else {
|
|
506
|
-
|
|
500
|
+
const now = new Date();
|
|
501
|
+
const year = now.getFullYear(); // e.g., 2023
|
|
502
|
+
const month = now.getMonth() + 1; // Months are 0-indexed, so add 1
|
|
503
|
+
const day = now.getDate(); // Day of the month
|
|
504
|
+
return [`${year}-${month}-${day} 00:00:00`, `${year}-${month}-${day} 23:59:59`]
|
|
507
505
|
}
|
|
508
506
|
},
|
|
509
507
|
multiselectChange(arr, selectedItem) {
|
|
510
|
-
|
|
508
|
+
debugger
|
|
509
|
+
if (arr && arr.indexOf('saveAll') !== -1) {
|
|
511
510
|
if (this.searchForm[this.column.prop] && typeof this.searchForm[this.column.prop] === 'string') {
|
|
512
511
|
this.searchForm[this.column.prop] = this.searchForm[this.column.prop].split(',')
|
|
513
512
|
}
|
|
514
513
|
} else {
|
|
514
|
+
debugger
|
|
515
515
|
this.searchForm[this.column.prop] = arr
|
|
516
516
|
}
|
|
517
517
|
},
|
|
518
|
-
showEmpty(){
|
|
518
|
+
showEmpty() {
|
|
519
519
|
this.isShowEmtptyFlag = true
|
|
520
520
|
},
|
|
521
|
-
hiddenEmpty(){
|
|
522
|
-
if(!this.checkedEmpty){
|
|
521
|
+
hiddenEmpty() {
|
|
522
|
+
if (!this.checkedEmpty) {
|
|
523
523
|
this.isShowEmtptyFlag = false
|
|
524
524
|
}
|
|
525
525
|
},
|
|
526
526
|
checkEmptyChange(newValue) {
|
|
527
|
-
if(newValue){
|
|
528
|
-
this.column._emptyValue='#blank#'
|
|
527
|
+
if (newValue) {
|
|
528
|
+
this.column._emptyValue = '#blank#'
|
|
529
529
|
} else {
|
|
530
|
-
this.column._emptyValue=undefined
|
|
530
|
+
this.column._emptyValue = undefined
|
|
531
531
|
}
|
|
532
532
|
}
|
|
533
533
|
},
|
|
@@ -1,30 +1,34 @@
|
|
|
1
1
|
<template>
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
2
|
+
<div v-resize="onResize" class="grid-search-row">
|
|
3
|
+
<el-row>
|
|
4
|
+
<el-col v-for="(column, index) of filterSearchableColumns" :key="index" :span="span">
|
|
5
|
+
<search-form-item
|
|
6
|
+
:label-width="labelWidth"
|
|
7
|
+
:search-form="searchForm"
|
|
8
|
+
:column="column"
|
|
9
|
+
:code="code"
|
|
10
|
+
:is-sql="isSql"
|
|
11
|
+
:table-name="tableName"
|
|
12
|
+
:is-join-table="isJoinTable"
|
|
13
|
+
/>
|
|
14
|
+
</el-col>
|
|
15
|
+
<el-col
|
|
16
|
+
:span="span"
|
|
17
|
+
class="search-btns-view"
|
|
18
|
+
:class="{ 'no-show-open': !isShowOpen, 'no-search-button-auto': isSearchButtonAuto }"
|
|
19
|
+
>
|
|
20
|
+
<search-button
|
|
21
|
+
ref="searchBtnOpen"
|
|
22
|
+
:is-open="myOpen"
|
|
23
|
+
:is-show-open="isShowOpen"
|
|
24
|
+
@submit-form="$emit('submit-form')"
|
|
25
|
+
@reset-form="$emit('reset-form')"
|
|
26
|
+
@save-condition="$emit('save-condition')"
|
|
27
|
+
@open-fold="openFold"
|
|
28
|
+
/>
|
|
29
|
+
</el-col>
|
|
30
|
+
</el-row>
|
|
31
|
+
</div>
|
|
28
32
|
</template>
|
|
29
33
|
<script>
|
|
30
34
|
import searchMethods from './search-methods'
|
|
@@ -32,138 +36,140 @@ import SearchFormItem from './search-form-item.vue'
|
|
|
32
36
|
import SearchButton from './search-button.vue'
|
|
33
37
|
|
|
34
38
|
export default {
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
39
|
+
name: 'SearchFormOpen',
|
|
40
|
+
components: {
|
|
41
|
+
SearchFormItem,
|
|
42
|
+
SearchButton
|
|
43
|
+
},
|
|
44
|
+
props: {
|
|
45
|
+
// 第一行的字段集合
|
|
46
|
+
searchableColumns: {
|
|
47
|
+
type: Array,
|
|
48
|
+
default: null
|
|
49
|
+
},
|
|
50
|
+
// 查询表单信息
|
|
51
|
+
searchForm: {
|
|
52
|
+
type: Object,
|
|
53
|
+
default: null
|
|
54
|
+
},
|
|
55
|
+
code: {
|
|
56
|
+
type: String,
|
|
57
|
+
default: null
|
|
58
|
+
},
|
|
59
|
+
isSql: {
|
|
60
|
+
type: Boolean,
|
|
61
|
+
default: false
|
|
62
|
+
},
|
|
63
|
+
tableName: {
|
|
64
|
+
type: String,
|
|
65
|
+
default: null
|
|
66
|
+
},
|
|
67
|
+
isJoinTable: {
|
|
68
|
+
type: Boolean,
|
|
69
|
+
default: false
|
|
70
|
+
},
|
|
71
|
+
spanNum: {
|
|
72
|
+
type: Number,
|
|
73
|
+
default: 8
|
|
74
|
+
},
|
|
75
|
+
// 每行几个字段
|
|
76
|
+
fieldNum: {
|
|
77
|
+
type: Number,
|
|
78
|
+
default: null
|
|
79
|
+
},
|
|
80
|
+
// 一共多少行
|
|
81
|
+
rowNum: {
|
|
82
|
+
type: Number,
|
|
83
|
+
default: null
|
|
84
|
+
},
|
|
85
|
+
// 查询条件是否展开
|
|
86
|
+
isOpen: {
|
|
87
|
+
type: Boolean,
|
|
88
|
+
default: false
|
|
89
|
+
}
|
|
90
|
+
},
|
|
91
|
+
data() {
|
|
92
|
+
return {
|
|
93
|
+
rowWidth: undefined, // 当前模块宽度
|
|
94
|
+
maxLength: undefined,
|
|
95
|
+
minLength: undefined,
|
|
96
|
+
myOpen: this.isOpen ?? false
|
|
97
|
+
}
|
|
98
|
+
},
|
|
99
|
+
computed: {
|
|
100
|
+
// 是否展示 展开按钮
|
|
101
|
+
isShowOpen() {
|
|
102
|
+
return this.showColumn < this.searchableColumns.length + 1
|
|
103
|
+
},
|
|
104
|
+
// 是否开启按钮右边固定
|
|
105
|
+
isSearchButtonAuto() {
|
|
106
|
+
return this.showColumn - this.searchableColumns.length > 1
|
|
107
|
+
},
|
|
108
|
+
filterSearchableColumns() {
|
|
109
|
+
return this.searchableColumns.filter((_, index) =>
|
|
110
|
+
!this.myOpen && this.isShowOpen && index > this.showColumn - 2 ? false : true
|
|
111
|
+
)
|
|
112
|
+
},
|
|
113
|
+
// 检测label 最大宽度
|
|
114
|
+
labelWidth() {
|
|
115
|
+
try {
|
|
116
|
+
if (!this.maxLength || !this.minLength) return ''
|
|
117
|
+
if (this.maxLength >= 10) return 82
|
|
118
|
+
if (this.maxLength === this.minLength && this.minLength <= 4) return 45
|
|
119
|
+
return 72
|
|
120
|
+
} catch (error) {
|
|
121
|
+
return ''
|
|
122
|
+
}
|
|
123
|
+
},
|
|
124
|
+
// 列布局
|
|
125
|
+
span() {
|
|
126
|
+
return 24 / this.showColumn
|
|
127
|
+
},
|
|
128
|
+
// 显示多少列
|
|
129
|
+
showColumn() {
|
|
130
|
+
if (this.rowWidth) {
|
|
131
|
+
if (this.rowWidth >= 1500) return 4
|
|
132
|
+
if (this.rowWidth <= 768) return 2
|
|
133
|
+
}
|
|
134
|
+
return 3
|
|
135
|
+
}
|
|
136
|
+
},
|
|
137
|
+
watch: {
|
|
138
|
+
filterSearchableColumns() {
|
|
139
|
+
const combinedArray = this.filterSearchableColumns.map(
|
|
140
|
+
({ label, searchLabel }) => ((searchLabel ?? label)?.replace(/[\u4e00-\u9fa5]/g, '**') ?? '').length
|
|
141
|
+
)
|
|
142
|
+
this.maxLength = Math.max(...combinedArray)
|
|
143
|
+
this.minLength = Math.max(...combinedArray)
|
|
144
|
+
},
|
|
145
|
+
myOpen() {}
|
|
146
|
+
},
|
|
147
|
+
methods: {
|
|
148
|
+
...searchMethods,
|
|
149
|
+
onResize(entry) {
|
|
150
|
+
this.rowWidth = entry.contentRect.width
|
|
151
|
+
// console.log('新尺寸:', entry.contentRect)
|
|
152
|
+
// console.log('宽度:', entry.contentRect.width)
|
|
153
|
+
// console.log('高度:', entry.contentRect.height)
|
|
154
|
+
},
|
|
155
|
+
openFold(isOpen) {
|
|
156
|
+
this.myOpen = isOpen
|
|
157
|
+
this.$emit('open-fold', isOpen)
|
|
158
|
+
},
|
|
159
|
+
// 查询完毕
|
|
160
|
+
searchComplete() {
|
|
161
|
+
if (this.$refs.searchBtnOpen) {
|
|
162
|
+
if (Array.isArray(this.$refs.searchBtnOpen)) {
|
|
163
|
+
if (this.$refs.searchBtnOpen.length > 0) {
|
|
164
|
+
this.$refs.searchBtnOpen[0].searchComplete()
|
|
165
|
+
}
|
|
166
|
+
} else {
|
|
167
|
+
this.$refs.searchBtnOpen.searchComplete()
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
}
|
|
165
172
|
}
|
|
166
173
|
</script>
|
|
167
174
|
|
|
168
|
-
<style lang="scss" scoped>
|
|
169
|
-
</style>
|
|
175
|
+
<style lang="scss" scoped></style>
|