n20-common-lib 2.4.15 → 2.4.17
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
CHANGED
|
@@ -26,7 +26,7 @@ vxeTable.formats.mixin({
|
|
|
26
26
|
formatRate({ cellValue }) {
|
|
27
27
|
return numerify(cellValue, '0.000000', Math.floor)
|
|
28
28
|
},
|
|
29
|
-
//
|
|
29
|
+
// 格式化时间,默认 yyyy-MM-dd HH:mm:ss
|
|
30
30
|
formatDatetime({ cellValue }) {
|
|
31
31
|
return dayjs(cellValue).format('YYYY-MM-DD HH:mm:ss')
|
|
32
32
|
}
|
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
<vxe-table
|
|
4
4
|
ref="vxeTable"
|
|
5
5
|
:key="colsKey"
|
|
6
|
-
row-key
|
|
7
6
|
:align="'center'"
|
|
7
|
+
:header-align="'center'"
|
|
8
8
|
:data="data"
|
|
9
9
|
:height="height"
|
|
10
10
|
:class="{ 'cell-default-set--': cellDefault }"
|
|
@@ -26,7 +26,6 @@
|
|
|
26
26
|
@sort-change="(val) => customSortMethod(val)"
|
|
27
27
|
@filter-change="filterChange"
|
|
28
28
|
@checkbox-change="handleSelectionChange"
|
|
29
|
-
@checkbox-all="handleSelectionChange"
|
|
30
29
|
>
|
|
31
30
|
<template v-for="(item, i) in columns">
|
|
32
31
|
<slot v-if="item.slotName" :name="item.slotName" :column="item"></slot>
|
|
@@ -40,20 +39,20 @@
|
|
|
40
39
|
width="50"
|
|
41
40
|
fixed="left"
|
|
42
41
|
>
|
|
43
|
-
|
|
44
|
-
<span class="custom-checkbox" @click.stop="toggleAll($table)">
|
|
45
|
-
<el-checkbox v-if="indeterminate" :key="key" :indeterminate="indeterminate" />
|
|
46
|
-
<el-checkbox v-else-if="checked" :key="key" :value="checked" />
|
|
47
|
-
<el-checkbox v-else :key="key" :value="checked" />
|
|
42
|
+
<template #header="{ $table, checked, indeterminate, disabled }">
|
|
43
|
+
<span class="custom-checkbox" @click.stop="toggleAll($table, disabled)">
|
|
44
|
+
<el-checkbox v-if="indeterminate" :key="key" :indeterminate="indeterminate" :disabled="disabled" />
|
|
45
|
+
<el-checkbox v-else-if="checked" :key="key" :value="checked" :disabled="disabled" />
|
|
46
|
+
<el-checkbox v-else :key="key" :value="checked" :disabled="disabled" />
|
|
48
47
|
</span>
|
|
49
48
|
</template>
|
|
50
|
-
<template #checkbox="{ $table, row, checked, indeterminate }">
|
|
51
|
-
<span class="custom-checkbox" @click.stop="toggleChecked($table, row)">
|
|
52
|
-
<el-checkbox v-if="indeterminate" :key="key" :indeterminate="indeterminate" />
|
|
53
|
-
<el-checkbox v-else-if="checked" :key="key" :value="checked" />
|
|
54
|
-
<el-checkbox v-else :key="key" :value="checked" />
|
|
49
|
+
<template #checkbox="{ $table, row, checked, indeterminate, disabled }">
|
|
50
|
+
<span class="custom-checkbox" @click.stop="toggleChecked($table, row, disabled)">
|
|
51
|
+
<el-checkbox v-if="indeterminate" :key="key" :indeterminate="indeterminate" :disabled="disabled" />
|
|
52
|
+
<el-checkbox v-else-if="checked" :key="key" :value="checked" :disabled="disabled" />
|
|
53
|
+
<el-checkbox v-else :key="key" :value="checked" :disabled="disabled" />
|
|
55
54
|
</span>
|
|
56
|
-
</template>
|
|
55
|
+
</template>
|
|
57
56
|
</vxe-column>
|
|
58
57
|
<vxe-column
|
|
59
58
|
v-else
|
|
@@ -130,16 +129,49 @@ export default {
|
|
|
130
129
|
},
|
|
131
130
|
size(val) {
|
|
132
131
|
this.sizeC = val
|
|
132
|
+
},
|
|
133
|
+
data() {
|
|
134
|
+
// 翻页清除选中
|
|
135
|
+
this.$refs.vxeTable.clearCheckboxRow()
|
|
136
|
+
this.$emit('selection-change-method', [])
|
|
133
137
|
}
|
|
134
138
|
},
|
|
135
139
|
mounted() {},
|
|
136
140
|
methods: {
|
|
137
|
-
|
|
141
|
+
// 全选
|
|
142
|
+
toggleAllSelection() {
|
|
143
|
+
if (this.$refs.vxeTable) {
|
|
144
|
+
this.$refs.vxeTable.setAllCheckboxRow(true)
|
|
145
|
+
// 得手动触发
|
|
146
|
+
this.handleSelectionChange()
|
|
147
|
+
}
|
|
148
|
+
},
|
|
149
|
+
// 清空选择
|
|
150
|
+
clearSelection() {
|
|
151
|
+
if (this.$refs.vxeTable) {
|
|
152
|
+
this.$refs.vxeTable.setAllCheckboxRow(false)
|
|
153
|
+
// 得手动触发
|
|
154
|
+
this.handleSelectionChange()
|
|
155
|
+
}
|
|
156
|
+
},
|
|
157
|
+
// 选中某些行
|
|
158
|
+
toggleRowSelection(row, state = true) {
|
|
159
|
+
this.$refs.vxeTable.setCheckboxRow(row, state)
|
|
160
|
+
// 得手动触发
|
|
161
|
+
this.handleSelectionChange()
|
|
162
|
+
},
|
|
163
|
+
toggleAll($table, disabled) {
|
|
164
|
+
if (disabled) {
|
|
165
|
+
return false
|
|
166
|
+
}
|
|
138
167
|
$table.toggleAllCheckboxRow()
|
|
139
168
|
this.key++
|
|
140
169
|
this.handleSelectionChange()
|
|
141
170
|
},
|
|
142
|
-
toggleChecked($table, row) {
|
|
171
|
+
toggleChecked($table, row, disabled) {
|
|
172
|
+
if (disabled) {
|
|
173
|
+
return false
|
|
174
|
+
}
|
|
143
175
|
$table.toggleCheckboxRow(row)
|
|
144
176
|
this.key++
|
|
145
177
|
this.handleSelectionChange()
|
|
@@ -155,8 +187,18 @@ export default {
|
|
|
155
187
|
},
|
|
156
188
|
filterChange({ filterList }) {
|
|
157
189
|
const obj = {}
|
|
190
|
+
// 复制默认筛选条件为空
|
|
191
|
+
this.columns.forEach((item) => {
|
|
192
|
+
if (item.filters) {
|
|
193
|
+
this.$set(obj, item.prop, undefined)
|
|
194
|
+
}
|
|
195
|
+
})
|
|
158
196
|
filterList.forEach((item) => {
|
|
159
|
-
|
|
197
|
+
if (item.column.filterMultiple) {
|
|
198
|
+
this.$set(obj, item.field, item.values)
|
|
199
|
+
} else {
|
|
200
|
+
this.$set(obj, item.field, item.values && item.values[0])
|
|
201
|
+
}
|
|
160
202
|
})
|
|
161
203
|
this.$emit('filter-change-method', obj)
|
|
162
204
|
},
|