@quansitech/antd-admin 1.1.48 → 1.2.0
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/dist/components/Table.js +82 -7
- package/package.json +1 -1
package/dist/components/Table.js
CHANGED
|
@@ -118,6 +118,7 @@ export default function (props) {
|
|
|
118
118
|
}
|
|
119
119
|
realColumns === null || realColumns === void 0 || realColumns.map(function (column) {
|
|
120
120
|
switch (column.valueType) {
|
|
121
|
+
case 'date':
|
|
121
122
|
case 'dateTime':
|
|
122
123
|
data = data.map(function (row) {
|
|
123
124
|
var v = row[column.dataIndex];
|
|
@@ -191,15 +192,88 @@ export default function (props) {
|
|
|
191
192
|
setColumns = _useState24[1];
|
|
192
193
|
var realColumns = useMemo(function () {
|
|
193
194
|
var _cloneDeep;
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
195
|
+
var processedColumns = [];
|
|
196
|
+
|
|
197
|
+
/**
|
|
198
|
+
* 创建搜索用的range column
|
|
199
|
+
*/
|
|
200
|
+
var createSearchRangeColumn = function createSearchRangeColumn(column, rangeType) {
|
|
201
|
+
return _objectSpread(_objectSpread({}, column), {}, {
|
|
202
|
+
dataIndex: column.dataIndex + '_range',
|
|
203
|
+
valueType: rangeType,
|
|
204
|
+
title: typeof column.title === 'string' ? "".concat(column.title, "\u8303\u56F4") : column.title,
|
|
205
|
+
hideInTable: true,
|
|
206
|
+
search: {
|
|
207
|
+
transform: function transform(value) {
|
|
208
|
+
return value ? value.join(' - ') : value;
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
});
|
|
212
|
+
};
|
|
213
|
+
|
|
214
|
+
/**
|
|
215
|
+
* 创建表格显示用的column(禁用搜索)
|
|
216
|
+
*/
|
|
217
|
+
var createTableColumn = function createTableColumn(column) {
|
|
218
|
+
return _objectSpread(_objectSpread({}, column), {}, {
|
|
219
|
+
search: false
|
|
220
|
+
});
|
|
221
|
+
};
|
|
222
|
+
|
|
223
|
+
/**
|
|
224
|
+
* 处理普通column
|
|
225
|
+
*/
|
|
226
|
+
var processNormalColumn = function processNormalColumn(column, processedColumns) {
|
|
227
|
+
if (container.schemaHandler[column.valueType]) {
|
|
228
|
+
var processedColumn = container.schemaHandler[column.valueType](column);
|
|
229
|
+
processedColumns.push(processedColumn);
|
|
230
|
+
} else {
|
|
231
|
+
processedColumns.push(column);
|
|
232
|
+
}
|
|
233
|
+
};
|
|
234
|
+
(_cloneDeep = cloneDeep(columns)) === null || _cloneDeep === void 0 || _cloneDeep.forEach(function (column) {
|
|
235
|
+
// 设置column的key
|
|
236
|
+
column.key = column.dataIndex;
|
|
237
|
+
commonHandler(column);
|
|
238
|
+
|
|
239
|
+
// 处理date和datetime类型的搜索栏range转换
|
|
240
|
+
if (column.search !== false && (column.valueType === 'date' || column.valueType === 'dateTime')) {
|
|
241
|
+
var rangeType = column.valueType === 'date' ? 'dateRange' : 'dateTimeRange';
|
|
242
|
+
|
|
243
|
+
// 创建搜索专用的range column
|
|
244
|
+
var searchColumn = createSearchRangeColumn(column, rangeType);
|
|
245
|
+
|
|
246
|
+
// 创建表格显示用的原column(禁用搜索)
|
|
247
|
+
var tableColumn = createTableColumn(column);
|
|
248
|
+
processedColumns.push(searchColumn, tableColumn);
|
|
249
|
+
} else {
|
|
250
|
+
// 处理普通column
|
|
251
|
+
processNormalColumn(column, processedColumns);
|
|
199
252
|
}
|
|
200
|
-
return c;
|
|
201
253
|
});
|
|
254
|
+
return processedColumns;
|
|
202
255
|
}, [columns]);
|
|
256
|
+
var handleSearchRangeValue = function handleSearchRangeValue(processedValue) {
|
|
257
|
+
Object.keys(processedValue).forEach(function (key) {
|
|
258
|
+
var c = props.columns.find(function (c) {
|
|
259
|
+
return c.dataIndex === key;
|
|
260
|
+
});
|
|
261
|
+
if ((c === null || c === void 0 ? void 0 : c.valueType) === 'date' || (c === null || c === void 0 ? void 0 : c.valueType) === 'dateTime') {
|
|
262
|
+
var value = processedValue[key];
|
|
263
|
+
if (typeof value === 'string' && value.includes(' - ')) {
|
|
264
|
+
processedValue[key] = value.split(' - ');
|
|
265
|
+
}
|
|
266
|
+
}
|
|
267
|
+
});
|
|
268
|
+
};
|
|
269
|
+
|
|
270
|
+
// 处理搜索表单的初始值转换(将字符串格式的日期范围转换为数组)
|
|
271
|
+
var processedDefaultSearchValue = useMemo(function () {
|
|
272
|
+
if (!props.defaultSearchValue) return props.defaultSearchValue;
|
|
273
|
+
var processedValue = _objectSpread({}, props.defaultSearchValue);
|
|
274
|
+
handleSearchRangeValue(processedValue);
|
|
275
|
+
return processedValue;
|
|
276
|
+
}, [props.defaultSearchValue]);
|
|
203
277
|
var modalContext = useContext(ModalContext);
|
|
204
278
|
var tabsContext = useContext(TabsContext);
|
|
205
279
|
useEffect(function () {
|
|
@@ -233,6 +307,7 @@ export default function (props) {
|
|
|
233
307
|
/^\d+$/.test(query[key]) && (query[key] = parseInt(query[key]));
|
|
234
308
|
}
|
|
235
309
|
});
|
|
310
|
+
handleSearchRangeValue(query);
|
|
236
311
|
(_formRef$current = formRef.current) === null || _formRef$current === void 0 || _formRef$current.setFieldsValue(query);
|
|
237
312
|
setLastQuery(query);
|
|
238
313
|
}
|
|
@@ -279,7 +354,7 @@ export default function (props) {
|
|
|
279
354
|
reload: true
|
|
280
355
|
},
|
|
281
356
|
form: {
|
|
282
|
-
initialValues:
|
|
357
|
+
initialValues: processedDefaultSearchValue,
|
|
283
358
|
onValuesChange: function onValuesChange(changedValues, allValues) {
|
|
284
359
|
var _formRef$current2;
|
|
285
360
|
var submit = realColumns.filter(function (c) {
|