@bit-sun/business-component 3.1.0 → 3.1.1
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/index.esm.js +137 -88
- package/dist/index.js +137 -88
- package/package.json +1 -1
- package/src/components/Business/BsSulaQueryTable/index.tsx +83 -88
- package/src/components/Business/TreeSearchSelect/index.md +26 -0
- package/src/components/Functional/DataImport/index.tsx +6 -5
- package/src/components/Functional/DataValidation/index.tsx +5 -4
- package/src/components/Functional/SearchSelect/index.tsx +18 -4
- package/src/components/Functional/TreeSearchSelect/index.tsx +41 -23
package/dist/index.esm.js
CHANGED
|
@@ -2700,6 +2700,7 @@ var DataValidation = /*#__PURE__*/function (_React$Component) {
|
|
|
2700
2700
|
return data;
|
|
2701
2701
|
};
|
|
2702
2702
|
_this.resetData = function () {
|
|
2703
|
+
var _customerColumnsMappi;
|
|
2703
2704
|
var _this$props = _this.props,
|
|
2704
2705
|
validDataUrl = _this$props.validDataUrl,
|
|
2705
2706
|
validDataParams = _this$props.validDataParams,
|
|
@@ -2707,10 +2708,16 @@ var DataValidation = /*#__PURE__*/function (_React$Component) {
|
|
|
2707
2708
|
columns = _this$props.columns,
|
|
2708
2709
|
isBrandAuth = _this$props.isBrandAuth,
|
|
2709
2710
|
_this$props$isCheckSt = _this$props.isCheckStockNum,
|
|
2710
|
-
isCheckStockNum = _this$props$isCheckSt === void 0 ? true : _this$props$isCheckSt
|
|
2711
|
+
isCheckStockNum = _this$props$isCheckSt === void 0 ? true : _this$props$isCheckSt,
|
|
2712
|
+
customerColumnsMapping = _this$props.customerColumnsMapping;
|
|
2711
2713
|
var resultData = _this.getData().filter(function (d) {
|
|
2712
2714
|
return _.compact(Object.values(d)).length;
|
|
2713
2715
|
});
|
|
2716
|
+
var resultColumns = (customerColumnsMapping === null || customerColumnsMapping === void 0 ? void 0 : customerColumnsMapping.length) ? customerColumnsMapping === null || customerColumnsMapping === void 0 ? void 0 : (_customerColumnsMappi = customerColumnsMapping.filter(function (c) {
|
|
2717
|
+
return !(c === null || c === void 0 ? void 0 : c.name);
|
|
2718
|
+
})) === null || _customerColumnsMappi === void 0 ? void 0 : _customerColumnsMappi.map(function (c) {
|
|
2719
|
+
return c.name;
|
|
2720
|
+
}) : columns;
|
|
2714
2721
|
// 处理业务参数
|
|
2715
2722
|
var otherParams = {};
|
|
2716
2723
|
if (isBrandAuth) {
|
|
@@ -2719,7 +2726,7 @@ var DataValidation = /*#__PURE__*/function (_React$Component) {
|
|
|
2719
2726
|
};
|
|
2720
2727
|
}
|
|
2721
2728
|
requestUtil.post(validDataUrl, _objectSpread2(_objectSpread2(_objectSpread2({}, otherParams), validDataParams), {}, {
|
|
2722
|
-
columns:
|
|
2729
|
+
columns: resultColumns,
|
|
2723
2730
|
data: resultData,
|
|
2724
2731
|
checkStockNum: isCheckStockNum
|
|
2725
2732
|
})).then(function (result) {
|
|
@@ -2734,12 +2741,12 @@ var DataValidation = /*#__PURE__*/function (_React$Component) {
|
|
|
2734
2741
|
var sheetData = luckysheet.getSheetData();
|
|
2735
2742
|
sheetData.map(function (item, index) {
|
|
2736
2743
|
if (!res[index]) return item;
|
|
2737
|
-
var changeVMIndex =
|
|
2744
|
+
var changeVMIndex = resultColumns === null || resultColumns === void 0 ? void 0 : resultColumns.findIndex(function (i) {
|
|
2738
2745
|
return i === 'skuCode';
|
|
2739
2746
|
});
|
|
2740
|
-
if (
|
|
2747
|
+
if ((resultColumns === null || resultColumns === void 0 ? void 0 : resultColumns.find(function (i) {
|
|
2741
2748
|
return i === 'skuCode';
|
|
2742
|
-
}) && item[changeVMIndex].v !== res[index].skuCode) {
|
|
2749
|
+
})) && item[changeVMIndex].v !== res[index].skuCode) {
|
|
2743
2750
|
item[changeVMIndex].v = res[index].skuCode;
|
|
2744
2751
|
item[changeVMIndex].m = res[index].skuCode;
|
|
2745
2752
|
}
|
|
@@ -2994,7 +3001,7 @@ var luckysheet$1;
|
|
|
2994
3001
|
// { "key": "quantity", "name": "数量", "rule": "quantity" },
|
|
2995
3002
|
// { "key": "price", "name": "单价", "rule": "price" }
|
|
2996
3003
|
// ]
|
|
2997
|
-
var mapping$1 = new Map([['skuCode', 'SKU编码'], ['quantity', '数量'], ['price', '单价'], ['regionCode', '库区'], ['checkQuantity', '实盘数量'], ['shareRatio', '共享比例'], ['lotNumberCode', '批号'], ['warehouseCode', '仓库编码'], ['regionCode', '库区'], ['locationCode', '货位'], ['rowNumber', '货位排数'], ['layerNumber', '货位层数'], ['gridNumber', '货位格号'], ['oldUniqueCode', '原始唯一码'], ['newUniqueCode', '新唯一码'], ['relationRecordCode', '单据编码'], ['remark', '备注'], ['externalCode', 'JDE商品编码'], ['realWarehouseCode', '仓库编码'], ['syncRate', '按百分比'], ['assignQuantity', '按指定数量'], ['retainQuantity', ' 按保留数量'], ['priority', ' 优先级']]);
|
|
3004
|
+
var mapping$1 = new Map([['skuCode', 'SKU编码'], ['quantity', '数量'], ['price', '单价'], ['regionCode', '库区'], ['checkQuantity', '实盘数量'], ['shareRatio', '共享比例'], ['lotNumberCode', '批号'], ['warehouseCode', '仓库编码'], ['regionCode', '库区'], ['locationCode', '货位'], ['rowNumber', '货位排数'], ['layerNumber', '货位层数'], ['gridNumber', '货位格号'], ['oldUniqueCode', '原始唯一码'], ['newUniqueCode', '新唯一码'], ['relationRecordCode', '单据编码'], ['remark', '备注'], ['externalCode', 'JDE商品编码'], ['realWarehouseCode', '仓库编码'], ['syncRate', '按百分比'], ['assignQuantity', '按指定数量'], ['retainQuantity', ' 按保留数量'], ['priority', ' 优先级'], ['stockBizTypeCode', ' 库存类型']]);
|
|
2998
3005
|
// a little function to help us with reordering the result
|
|
2999
3006
|
var reorder$1 = function reorder(list, startIndex, endIndex) {
|
|
3000
3007
|
var result = Array.from(list);
|
|
@@ -3287,6 +3294,7 @@ var DataImport = /*#__PURE__*/function (_React$Component) {
|
|
|
3287
3294
|
return data;
|
|
3288
3295
|
};
|
|
3289
3296
|
_this.resetData = function () {
|
|
3297
|
+
var _customerColumnsMappi;
|
|
3290
3298
|
var _this$props = _this.props,
|
|
3291
3299
|
validDataUrl = _this$props.validDataUrl,
|
|
3292
3300
|
validDataParams = _this$props.validDataParams,
|
|
@@ -3294,10 +3302,16 @@ var DataImport = /*#__PURE__*/function (_React$Component) {
|
|
|
3294
3302
|
columns = _this$props.columns,
|
|
3295
3303
|
isBrandAuth = _this$props.isBrandAuth,
|
|
3296
3304
|
_this$props$isCheckSt = _this$props.isCheckStockNum,
|
|
3297
|
-
isCheckStockNum = _this$props$isCheckSt === void 0 ? true : _this$props$isCheckSt
|
|
3305
|
+
isCheckStockNum = _this$props$isCheckSt === void 0 ? true : _this$props$isCheckSt,
|
|
3306
|
+
customerColumnsMapping = _this$props.customerColumnsMapping;
|
|
3298
3307
|
var resultData = _this.getData().filter(function (d) {
|
|
3299
3308
|
return _.compact(Object.values(d)).length;
|
|
3300
3309
|
});
|
|
3310
|
+
var resultColumns = (customerColumnsMapping === null || customerColumnsMapping === void 0 ? void 0 : customerColumnsMapping.length) ? customerColumnsMapping === null || customerColumnsMapping === void 0 ? void 0 : (_customerColumnsMappi = customerColumnsMapping.filter(function (c) {
|
|
3311
|
+
return !(c === null || c === void 0 ? void 0 : c.name);
|
|
3312
|
+
})) === null || _customerColumnsMappi === void 0 ? void 0 : _customerColumnsMappi.map(function (c) {
|
|
3313
|
+
return c.name;
|
|
3314
|
+
}) : columns;
|
|
3301
3315
|
// 处理业务参数
|
|
3302
3316
|
var otherParams = {};
|
|
3303
3317
|
if (isBrandAuth) {
|
|
@@ -3306,7 +3320,7 @@ var DataImport = /*#__PURE__*/function (_React$Component) {
|
|
|
3306
3320
|
};
|
|
3307
3321
|
}
|
|
3308
3322
|
requestUtil.post(validDataUrl, _objectSpread2(_objectSpread2(_objectSpread2({}, otherParams), validDataParams), {}, {
|
|
3309
|
-
columns:
|
|
3323
|
+
columns: resultColumns,
|
|
3310
3324
|
data: resultData,
|
|
3311
3325
|
checkStockNum: isCheckStockNum
|
|
3312
3326
|
})).then(function (result) {
|
|
@@ -3321,12 +3335,12 @@ var DataImport = /*#__PURE__*/function (_React$Component) {
|
|
|
3321
3335
|
var sheetData = luckysheet$1.getSheetData();
|
|
3322
3336
|
sheetData.map(function (item, index) {
|
|
3323
3337
|
if (!res[index]) return item;
|
|
3324
|
-
var changeVMIndex =
|
|
3338
|
+
var changeVMIndex = resultColumns === null || resultColumns === void 0 ? void 0 : resultColumns.findIndex(function (i) {
|
|
3325
3339
|
return i === 'skuCode';
|
|
3326
3340
|
});
|
|
3327
|
-
if (
|
|
3341
|
+
if ((resultColumns === null || resultColumns === void 0 ? void 0 : resultColumns.find(function (i) {
|
|
3328
3342
|
return i === 'skuCode';
|
|
3329
|
-
}) && item[changeVMIndex].v !== res[index].skuCode) {
|
|
3343
|
+
})) && item[changeVMIndex].v !== res[index].skuCode) {
|
|
3330
3344
|
item[changeVMIndex].v = res[index].skuCode;
|
|
3331
3345
|
item[changeVMIndex].m = res[index].skuCode;
|
|
3332
3346
|
}
|
|
@@ -4548,26 +4562,40 @@ var SearchSelect = /*#__PURE__*/forwardRef(function (props, ref) {
|
|
|
4548
4562
|
return specialBracket ? "\u3010".concat(item.textShowKey, "\u3011").concat(showText) : "".concat(item.textShowKey, " ").concat(showText);
|
|
4549
4563
|
}
|
|
4550
4564
|
};
|
|
4565
|
+
var getShowLabelTextStr = function getShowLabelTextStr(kongValue) {
|
|
4566
|
+
if (selectMode) {
|
|
4567
|
+
var _value$map;
|
|
4568
|
+
return (value === null || value === void 0 ? void 0 : (_value$map = value.map(function (item) {
|
|
4569
|
+
return item.label || item.text || '';
|
|
4570
|
+
})) === null || _value$map === void 0 ? void 0 : _value$map.join(',')) || kongValue;
|
|
4571
|
+
}
|
|
4572
|
+
return (value === null || value === void 0 ? void 0 : value.label) || (value === null || value === void 0 ? void 0 : value.text) || kongValue;
|
|
4573
|
+
};
|
|
4551
4574
|
var getSelectValueText = function getSelectValueText(v) {
|
|
4552
4575
|
var _filter, _filter$;
|
|
4553
4576
|
return ((_filter = (items || []).filter(function (item) {
|
|
4554
4577
|
return item.value === v;
|
|
4555
4578
|
})) === null || _filter === void 0 ? void 0 : (_filter$ = _filter[0]) === null || _filter$ === void 0 ? void 0 : _filter$.text) || v || '';
|
|
4556
4579
|
};
|
|
4580
|
+
var getShowValueStr = function getShowValueStr(kongValue) {
|
|
4581
|
+
if (selectMode) {
|
|
4582
|
+
var _value$map2;
|
|
4583
|
+
return (value === null || value === void 0 ? void 0 : (_value$map2 = value.map(function (item) {
|
|
4584
|
+
return getSelectValueText(item);
|
|
4585
|
+
})) === null || _value$map2 === void 0 ? void 0 : _value$map2.join(',')) || kongValue;
|
|
4586
|
+
}
|
|
4587
|
+
return getSelectValueText(value) || kongValue;
|
|
4588
|
+
};
|
|
4557
4589
|
var getShowStr = function getShowStr() {
|
|
4558
|
-
var
|
|
4590
|
+
var kongValue = '无';
|
|
4559
4591
|
// 先判断labelInValue与否,labelInValue可以直接去value中获取字段名称,否则去下拉框数据里面去拿;
|
|
4560
4592
|
// 再判断是单选还是多选,数据类型不同取值方式也不同
|
|
4561
4593
|
if (labelInValue) {
|
|
4562
|
-
|
|
4563
|
-
return selectMode ? value === null || value === void 0 ? void 0 : (_value$map = value.map(function (item) {
|
|
4564
|
-
return item.label || item.text;
|
|
4565
|
-
})) === null || _value$map === void 0 ? void 0 : _value$map.join(',') : (value === null || value === void 0 ? void 0 : value.label) || (value === null || value === void 0 ? void 0 : value.text);
|
|
4594
|
+
return getShowLabelTextStr(kongValue);
|
|
4566
4595
|
}
|
|
4567
|
-
return
|
|
4568
|
-
return getSelectValueText(item);
|
|
4569
|
-
})) === null || _value$map2 === void 0 ? void 0 : _value$map2.join(',') : getSelectValueText(value);
|
|
4596
|
+
return getShowValueStr(kongValue);
|
|
4570
4597
|
};
|
|
4598
|
+
var isShouldShowStr = props.disabled && ctx;
|
|
4571
4599
|
return /*#__PURE__*/React$1.createElement("div", {
|
|
4572
4600
|
className: 'search_select'
|
|
4573
4601
|
}, fieldComponent ? ( /*#__PURE__*/React$1.createElement("div", {
|
|
@@ -4576,7 +4604,7 @@ var SearchSelect = /*#__PURE__*/forwardRef(function (props, ref) {
|
|
|
4576
4604
|
(_fieldComponent$props = fieldComponent.props) === null || _fieldComponent$props === void 0 ? void 0 : (_fieldComponent$props2 = _fieldComponent$props.onClick) === null || _fieldComponent$props2 === void 0 ? void 0 : _fieldComponent$props2.call(_fieldComponent$props);
|
|
4577
4605
|
showModal();
|
|
4578
4606
|
}
|
|
4579
|
-
}, fieldComponent)) :
|
|
4607
|
+
}, fieldComponent)) : isShouldShowStr ? ( /*#__PURE__*/React$1.createElement("div", {
|
|
4580
4608
|
title: getShowStr(),
|
|
4581
4609
|
style: {
|
|
4582
4610
|
overflow: 'hidden',
|
|
@@ -11783,9 +11811,30 @@ var TreeSearchSelect = function TreeSearchSelect(props) {
|
|
|
11783
11811
|
})
|
|
11784
11812
|
}, "+ ".concat(selectedValues === null || selectedValues === void 0 ? void 0 : selectedValues.length));
|
|
11785
11813
|
};
|
|
11814
|
+
var getShowStr = function getShowStr() {
|
|
11815
|
+
var isMultiple = multiple || treeCheckable;
|
|
11816
|
+
var kongValue = '无';
|
|
11817
|
+
var parallelTreeData = parallelData(treeData, []);
|
|
11818
|
+
var currentItem = getSelectItem(parallelTreeData, value); // 得到选中的数据项
|
|
11819
|
+
if (isMultiple) {
|
|
11820
|
+
return (currentItem === null || currentItem === void 0 ? void 0 : currentItem.map(function (i) {
|
|
11821
|
+
return i === null || i === void 0 ? void 0 : i['title'];
|
|
11822
|
+
}).join(',')) || kongValue;
|
|
11823
|
+
}
|
|
11824
|
+
return valueName || (currentItem === null || currentItem === void 0 ? void 0 : currentItem['title']) || kongValue;
|
|
11825
|
+
};
|
|
11826
|
+
var isShouldShowStr = (disabled || mode === 'view' || (ctx === null || ctx === void 0 ? void 0 : ctx.mode) === 'view') && ctx;
|
|
11786
11827
|
return /*#__PURE__*/React$1.createElement("div", {
|
|
11787
11828
|
className: 'tree_search_select'
|
|
11788
|
-
}, /*#__PURE__*/React$1.createElement(
|
|
11829
|
+
}, isShouldShowStr ? ( /*#__PURE__*/React$1.createElement("div", {
|
|
11830
|
+
title: getShowStr(),
|
|
11831
|
+
style: {
|
|
11832
|
+
overflow: 'hidden',
|
|
11833
|
+
textOverflow: 'ellipsis',
|
|
11834
|
+
whiteSpace: 'nowrap'
|
|
11835
|
+
},
|
|
11836
|
+
className: 'search_select_show'
|
|
11837
|
+
}, getShowStr())) : ( /*#__PURE__*/React$1.createElement(TreeSelect, _objectSpread2(_objectSpread2({}, restProps), {}, {
|
|
11789
11838
|
treeCheckable: treeCheckable,
|
|
11790
11839
|
maxTagCount: maxTagCount,
|
|
11791
11840
|
showSearch: showSearch,
|
|
@@ -11811,7 +11860,7 @@ var TreeSearchSelect = function TreeSearchSelect(props) {
|
|
|
11811
11860
|
getPopupContainer: function getPopupContainer(triggerNode) {
|
|
11812
11861
|
return _getPopupContainer && _getPopupContainer(triggerNode) || document.body;
|
|
11813
11862
|
}
|
|
11814
|
-
})));
|
|
11863
|
+
}))));
|
|
11815
11864
|
};
|
|
11816
11865
|
|
|
11817
11866
|
var handleDefaultProps = function handleDefaultProps(type, otherRequestConfig) {
|
|
@@ -15074,6 +15123,14 @@ var ResizeableTitle$2 = function ResizeableTitle(props) {
|
|
|
15074
15123
|
var BsSulaQueryTable = (function (props) {
|
|
15075
15124
|
var _props$expandable, _value$exportConfig7;
|
|
15076
15125
|
var bsTableCode = (props === null || props === void 0 ? void 0 : props.tableCode) || window.location.hash; //设置列字段的唯一标识
|
|
15126
|
+
// 获取 table columns中所有的 key 防止有的地方是 dataindex
|
|
15127
|
+
var checkedList = useMemo(function () {
|
|
15128
|
+
return props.columns.filter(function (col) {
|
|
15129
|
+
return !col.hidden;
|
|
15130
|
+
}).map(function (d) {
|
|
15131
|
+
return Array.isArray(d.key || d.dataIndex) ? JSON.stringify(d.key || d.dataIndex) : d.key || d.dataIndex;
|
|
15132
|
+
});
|
|
15133
|
+
}, [props.columns]);
|
|
15077
15134
|
var getConfigFromlocalstorage = function getConfigFromlocalstorage(type) {
|
|
15078
15135
|
var tableCode = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : bsTableCode;
|
|
15079
15136
|
var config = localStorage.getItem(type) || '[]';
|
|
@@ -15086,34 +15143,64 @@ var BsSulaQueryTable = (function (props) {
|
|
|
15086
15143
|
}
|
|
15087
15144
|
return [];
|
|
15088
15145
|
};
|
|
15089
|
-
|
|
15090
|
-
|
|
15091
|
-
|
|
15092
|
-
|
|
15093
|
-
|
|
15094
|
-
|
|
15095
|
-
|
|
15096
|
-
|
|
15097
|
-
|
|
15098
|
-
|
|
15099
|
-
|
|
15100
|
-
|
|
15101
|
-
|
|
15102
|
-
|
|
15146
|
+
/**
|
|
15147
|
+
* 根据保存的配置和原始配置,获取设置的字段或列。
|
|
15148
|
+
* @param savedConfig 保存的配置数组,可能包含字段或列的配置。
|
|
15149
|
+
* @param originConfig 原始配置数组,包含完整的字段或列信息。
|
|
15150
|
+
* @param type 字段或列的类型,用于确定配置的属性。
|
|
15151
|
+
* @returns 返回根据保存的配置处理后的字段或列数组,如果未保存任何配置,则返回原始配置。
|
|
15152
|
+
*/
|
|
15153
|
+
var getSettingFieldOrColumn = function getSettingFieldOrColumn(savedConfig, originConfig, type) {
|
|
15154
|
+
/**
|
|
15155
|
+
* 判断值是否为字符串数组。
|
|
15156
|
+
* @param value 待判断的值。
|
|
15157
|
+
* @returns 如果值是字符串数组,则返回true,否则返回false。
|
|
15158
|
+
*/
|
|
15159
|
+
var isStringArray = function isStringArray(value) {
|
|
15160
|
+
return Array.isArray(value) && value.every(function (v) {
|
|
15161
|
+
return typeof v === 'string';
|
|
15162
|
+
});
|
|
15163
|
+
};
|
|
15164
|
+
/**
|
|
15165
|
+
* 根据配置项和类型,获取配置项的键。
|
|
15166
|
+
* @param config 配置项,可以是字段或列。
|
|
15167
|
+
* @param type 配置项的类型。
|
|
15168
|
+
* @returns 返回配置项的键,如果无法获取,则返回空字符串。
|
|
15169
|
+
*/
|
|
15170
|
+
var getItemKey = function getItemKey(config, type) {
|
|
15171
|
+
try {
|
|
15172
|
+
if (type === 'columns') {
|
|
15173
|
+
return isStringArray(config.key) ? JSON.stringify(config.key) : isStringArray(config.dataIndex) ? JSON.stringify(config.dataIndex) : config.key || config.dataIndex || '';
|
|
15174
|
+
}
|
|
15175
|
+
return isStringArray(config.name) ? JSON.stringify(config.name) : config.name || '';
|
|
15176
|
+
} catch (e) {}
|
|
15177
|
+
return '';
|
|
15178
|
+
};
|
|
15179
|
+
var newConfig = [];
|
|
15180
|
+
if (savedConfig.length) {
|
|
15181
|
+
var hash = originConfig.reduce(function (prev, inneritem) {
|
|
15182
|
+
prev[getItemKey(inneritem, type)] = inneritem;
|
|
15183
|
+
return prev;
|
|
15184
|
+
}, {});
|
|
15185
|
+
savedConfig.forEach(function (config, index) {
|
|
15186
|
+
var inner = hash[getItemKey(config, type)];
|
|
15187
|
+
inner && newConfig.push(_objectSpread2(_objectSpread2({}, inner), config));
|
|
15188
|
+
});
|
|
15189
|
+
}
|
|
15190
|
+
if (newConfig.length) return newConfig;
|
|
15191
|
+
if (type === 'columns') {
|
|
15192
|
+
return originConfig.filter(function (column) {
|
|
15193
|
+
var columnKey = getItemKey(column, type);
|
|
15194
|
+
return column.notRegularCheckList || checkedList.indexOf(columnKey) > -1;
|
|
15195
|
+
});
|
|
15196
|
+
}
|
|
15197
|
+
return _toConsumableArray(originConfig);
|
|
15103
15198
|
};
|
|
15104
15199
|
var refs = useRef(null);
|
|
15105
15200
|
var _useState = useState(''),
|
|
15106
15201
|
_useState2 = _slicedToArray(_useState, 2),
|
|
15107
15202
|
pagePath = _useState2[0],
|
|
15108
15203
|
setPagePath = _useState2[1];
|
|
15109
|
-
// 获取 table columns中所有的 key 防止有的地方是 dataindex
|
|
15110
|
-
var checkedList = useMemo(function () {
|
|
15111
|
-
return props.columns.filter(function (col) {
|
|
15112
|
-
return !col.hidden;
|
|
15113
|
-
}).map(function (d) {
|
|
15114
|
-
return Array.isArray(d.key || d.dataIndex) ? JSON.stringify(d.key || d.dataIndex) : d.key || d.dataIndex;
|
|
15115
|
-
});
|
|
15116
|
-
}, [props.columns]);
|
|
15117
15204
|
var _useLocation = useLocation(),
|
|
15118
15205
|
pathname = _useLocation.pathname,
|
|
15119
15206
|
_useLocation$state = _useLocation.state,
|
|
@@ -15124,11 +15211,13 @@ var BsSulaQueryTable = (function (props) {
|
|
|
15124
15211
|
setIsFnllScreen = _useState4[1];
|
|
15125
15212
|
// @ts-nocheck
|
|
15126
15213
|
var value = props;
|
|
15214
|
+
var _props$fields = props.fields,
|
|
15215
|
+
fields = _props$fields === void 0 ? [] : _props$fields;
|
|
15127
15216
|
var _useState5 = useState([]),
|
|
15128
15217
|
_useState6 = _slicedToArray(_useState5, 2),
|
|
15129
15218
|
showColumn = _useState6[0],
|
|
15130
15219
|
setShowColumns = _useState6[1]; // 列字段
|
|
15131
|
-
var originSearchFields =
|
|
15220
|
+
var originSearchFields = getSettingFieldOrColumn(getConfigFromlocalstorage(ENUM.BROWSER_CACHE.SEARCH_FIELDS_CONDITION), fields, 'searchFields');
|
|
15132
15221
|
var _useState7 = useState(originSearchFields),
|
|
15133
15222
|
_useState8 = _slicedToArray(_useState7, 2),
|
|
15134
15223
|
showSearchFields = _useState8[0],
|
|
@@ -15221,44 +15310,11 @@ var BsSulaQueryTable = (function (props) {
|
|
|
15221
15310
|
}
|
|
15222
15311
|
var columns = props.columns;
|
|
15223
15312
|
var columnConfig = getConfigFromlocalstorage(ENUM.BROWSER_CACHE.COLUMN_CONDITION);
|
|
15224
|
-
var isStringArray = function isStringArray(value) {
|
|
15225
|
-
return Array.isArray(value) && value.every(function (v) {
|
|
15226
|
-
return typeof v === 'string';
|
|
15227
|
-
});
|
|
15228
|
-
};
|
|
15229
|
-
var getColumnKey = function getColumnKey(column) {
|
|
15230
|
-
if (isStringArray(column.key)) {
|
|
15231
|
-
return JSON.stringify(column.key);
|
|
15232
|
-
} else if (isStringArray(column.dataIndex)) {
|
|
15233
|
-
return JSON.stringify(column.dataIndex);
|
|
15234
|
-
} else {
|
|
15235
|
-
return column.key || column.dataIndex || '';
|
|
15236
|
-
}
|
|
15237
|
-
};
|
|
15238
15313
|
var parseWidth = function parseWidth(widthStr) {
|
|
15239
15314
|
var parsedWidth = parseInt(widthStr.replace('px', ''));
|
|
15240
15315
|
return isNaN(parsedWidth) ? 0 : parsedWidth;
|
|
15241
15316
|
};
|
|
15242
|
-
|
|
15243
|
-
var getShowColumns = function getShowColumns(columnConfig) {
|
|
15244
|
-
var cols = [];
|
|
15245
|
-
if (columnConfig.length) {
|
|
15246
|
-
columnConfig.forEach(function (config, index) {
|
|
15247
|
-
var hash = columns.reduce(function (prev, inneritem) {
|
|
15248
|
-
prev[getColumnKey(inneritem)] = inneritem;
|
|
15249
|
-
return prev;
|
|
15250
|
-
}, {});
|
|
15251
|
-
var inner = hash[getColumnKey(config)];
|
|
15252
|
-
inner && cols.push(_objectSpread2(_objectSpread2({}, inner), config));
|
|
15253
|
-
});
|
|
15254
|
-
}
|
|
15255
|
-
if (cols.length) return cols;
|
|
15256
|
-
return columns.filter(function (column) {
|
|
15257
|
-
var columnKey = getColumnKey(column);
|
|
15258
|
-
return column.notRegularCheckList || checkedList.indexOf(columnKey) > -1;
|
|
15259
|
-
});
|
|
15260
|
-
};
|
|
15261
|
-
var showColumns = getShowColumns(columnConfig);
|
|
15317
|
+
var showColumns = getSettingFieldOrColumn(columnConfig, columns, 'columns');
|
|
15262
15318
|
showColumns.forEach(function (item, index) {
|
|
15263
15319
|
item.width = item.width || getItemDefaultWidth(item);
|
|
15264
15320
|
handleBssulaColumnsSpecialParams(item);
|
|
@@ -15271,7 +15327,7 @@ var BsSulaQueryTable = (function (props) {
|
|
|
15271
15327
|
});
|
|
15272
15328
|
setShowColumns(_toConsumableArray(showColumns));
|
|
15273
15329
|
var exportColumnConfig = getConfigFromlocalstorage(ENUM.BROWSER_CACHE.COLUMN_CONDITION, bsTableCodeExport);
|
|
15274
|
-
var showExportColumns =
|
|
15330
|
+
var showExportColumns = getSettingFieldOrColumn(exportColumnConfig, columns, 'columns');
|
|
15275
15331
|
showExportColumns.forEach(function (item, index) {
|
|
15276
15332
|
item.width = item.width || getItemDefaultWidth(item);
|
|
15277
15333
|
handleBssulaColumnsSpecialParams(item);
|
|
@@ -15289,14 +15345,7 @@ var BsSulaQueryTable = (function (props) {
|
|
|
15289
15345
|
var _props$fields2 = props.fields,
|
|
15290
15346
|
fields = _props$fields2 === void 0 ? [] : _props$fields2;
|
|
15291
15347
|
var searchFieldsConfig = getConfigFromlocalstorage(ENUM.BROWSER_CACHE.SEARCH_FIELDS_CONDITION);
|
|
15292
|
-
var showSearchFields = searchFieldsConfig
|
|
15293
|
-
var inner = fields.filter(function (inneritem) {
|
|
15294
|
-
var innerKey = Array.isArray(inneritem.name) ? JSON.stringify(inneritem.name) : inneritem.name;
|
|
15295
|
-
var itemKey = Array.isArray(item.name) ? JSON.stringify(item.name) : item.name;
|
|
15296
|
-
return innerKey && innerKey === itemKey;
|
|
15297
|
-
})[0];
|
|
15298
|
-
return _objectSpread2(_objectSpread2({}, inner), item);
|
|
15299
|
-
}) : fields;
|
|
15348
|
+
var showSearchFields = getSettingFieldOrColumn(searchFieldsConfig, fields, 'searchFields');
|
|
15300
15349
|
setShowSearchFields(_toConsumableArray(showSearchFields));
|
|
15301
15350
|
};
|
|
15302
15351
|
//组件初始挂载
|
package/dist/index.js
CHANGED
|
@@ -2723,6 +2723,7 @@ var DataValidation = /*#__PURE__*/function (_React$Component) {
|
|
|
2723
2723
|
return data;
|
|
2724
2724
|
};
|
|
2725
2725
|
_this.resetData = function () {
|
|
2726
|
+
var _customerColumnsMappi;
|
|
2726
2727
|
var _this$props = _this.props,
|
|
2727
2728
|
validDataUrl = _this$props.validDataUrl,
|
|
2728
2729
|
validDataParams = _this$props.validDataParams,
|
|
@@ -2730,10 +2731,16 @@ var DataValidation = /*#__PURE__*/function (_React$Component) {
|
|
|
2730
2731
|
columns = _this$props.columns,
|
|
2731
2732
|
isBrandAuth = _this$props.isBrandAuth,
|
|
2732
2733
|
_this$props$isCheckSt = _this$props.isCheckStockNum,
|
|
2733
|
-
isCheckStockNum = _this$props$isCheckSt === void 0 ? true : _this$props$isCheckSt
|
|
2734
|
+
isCheckStockNum = _this$props$isCheckSt === void 0 ? true : _this$props$isCheckSt,
|
|
2735
|
+
customerColumnsMapping = _this$props.customerColumnsMapping;
|
|
2734
2736
|
var resultData = _this.getData().filter(function (d) {
|
|
2735
2737
|
return ___default['default'].compact(Object.values(d)).length;
|
|
2736
2738
|
});
|
|
2739
|
+
var resultColumns = (customerColumnsMapping === null || customerColumnsMapping === void 0 ? void 0 : customerColumnsMapping.length) ? customerColumnsMapping === null || customerColumnsMapping === void 0 ? void 0 : (_customerColumnsMappi = customerColumnsMapping.filter(function (c) {
|
|
2740
|
+
return !(c === null || c === void 0 ? void 0 : c.name);
|
|
2741
|
+
})) === null || _customerColumnsMappi === void 0 ? void 0 : _customerColumnsMappi.map(function (c) {
|
|
2742
|
+
return c.name;
|
|
2743
|
+
}) : columns;
|
|
2737
2744
|
// 处理业务参数
|
|
2738
2745
|
var otherParams = {};
|
|
2739
2746
|
if (isBrandAuth) {
|
|
@@ -2742,7 +2749,7 @@ var DataValidation = /*#__PURE__*/function (_React$Component) {
|
|
|
2742
2749
|
};
|
|
2743
2750
|
}
|
|
2744
2751
|
requestUtil.post(validDataUrl, _objectSpread2(_objectSpread2(_objectSpread2({}, otherParams), validDataParams), {}, {
|
|
2745
|
-
columns:
|
|
2752
|
+
columns: resultColumns,
|
|
2746
2753
|
data: resultData,
|
|
2747
2754
|
checkStockNum: isCheckStockNum
|
|
2748
2755
|
})).then(function (result) {
|
|
@@ -2757,12 +2764,12 @@ var DataValidation = /*#__PURE__*/function (_React$Component) {
|
|
|
2757
2764
|
var sheetData = luckysheet.getSheetData();
|
|
2758
2765
|
sheetData.map(function (item, index) {
|
|
2759
2766
|
if (!res[index]) return item;
|
|
2760
|
-
var changeVMIndex =
|
|
2767
|
+
var changeVMIndex = resultColumns === null || resultColumns === void 0 ? void 0 : resultColumns.findIndex(function (i) {
|
|
2761
2768
|
return i === 'skuCode';
|
|
2762
2769
|
});
|
|
2763
|
-
if (
|
|
2770
|
+
if ((resultColumns === null || resultColumns === void 0 ? void 0 : resultColumns.find(function (i) {
|
|
2764
2771
|
return i === 'skuCode';
|
|
2765
|
-
}) && item[changeVMIndex].v !== res[index].skuCode) {
|
|
2772
|
+
})) && item[changeVMIndex].v !== res[index].skuCode) {
|
|
2766
2773
|
item[changeVMIndex].v = res[index].skuCode;
|
|
2767
2774
|
item[changeVMIndex].m = res[index].skuCode;
|
|
2768
2775
|
}
|
|
@@ -3017,7 +3024,7 @@ var luckysheet$1;
|
|
|
3017
3024
|
// { "key": "quantity", "name": "数量", "rule": "quantity" },
|
|
3018
3025
|
// { "key": "price", "name": "单价", "rule": "price" }
|
|
3019
3026
|
// ]
|
|
3020
|
-
var mapping$1 = new Map([['skuCode', 'SKU编码'], ['quantity', '数量'], ['price', '单价'], ['regionCode', '库区'], ['checkQuantity', '实盘数量'], ['shareRatio', '共享比例'], ['lotNumberCode', '批号'], ['warehouseCode', '仓库编码'], ['regionCode', '库区'], ['locationCode', '货位'], ['rowNumber', '货位排数'], ['layerNumber', '货位层数'], ['gridNumber', '货位格号'], ['oldUniqueCode', '原始唯一码'], ['newUniqueCode', '新唯一码'], ['relationRecordCode', '单据编码'], ['remark', '备注'], ['externalCode', 'JDE商品编码'], ['realWarehouseCode', '仓库编码'], ['syncRate', '按百分比'], ['assignQuantity', '按指定数量'], ['retainQuantity', ' 按保留数量'], ['priority', ' 优先级']]);
|
|
3027
|
+
var mapping$1 = new Map([['skuCode', 'SKU编码'], ['quantity', '数量'], ['price', '单价'], ['regionCode', '库区'], ['checkQuantity', '实盘数量'], ['shareRatio', '共享比例'], ['lotNumberCode', '批号'], ['warehouseCode', '仓库编码'], ['regionCode', '库区'], ['locationCode', '货位'], ['rowNumber', '货位排数'], ['layerNumber', '货位层数'], ['gridNumber', '货位格号'], ['oldUniqueCode', '原始唯一码'], ['newUniqueCode', '新唯一码'], ['relationRecordCode', '单据编码'], ['remark', '备注'], ['externalCode', 'JDE商品编码'], ['realWarehouseCode', '仓库编码'], ['syncRate', '按百分比'], ['assignQuantity', '按指定数量'], ['retainQuantity', ' 按保留数量'], ['priority', ' 优先级'], ['stockBizTypeCode', ' 库存类型']]);
|
|
3021
3028
|
// a little function to help us with reordering the result
|
|
3022
3029
|
var reorder$1 = function reorder(list, startIndex, endIndex) {
|
|
3023
3030
|
var result = Array.from(list);
|
|
@@ -3310,6 +3317,7 @@ var DataImport = /*#__PURE__*/function (_React$Component) {
|
|
|
3310
3317
|
return data;
|
|
3311
3318
|
};
|
|
3312
3319
|
_this.resetData = function () {
|
|
3320
|
+
var _customerColumnsMappi;
|
|
3313
3321
|
var _this$props = _this.props,
|
|
3314
3322
|
validDataUrl = _this$props.validDataUrl,
|
|
3315
3323
|
validDataParams = _this$props.validDataParams,
|
|
@@ -3317,10 +3325,16 @@ var DataImport = /*#__PURE__*/function (_React$Component) {
|
|
|
3317
3325
|
columns = _this$props.columns,
|
|
3318
3326
|
isBrandAuth = _this$props.isBrandAuth,
|
|
3319
3327
|
_this$props$isCheckSt = _this$props.isCheckStockNum,
|
|
3320
|
-
isCheckStockNum = _this$props$isCheckSt === void 0 ? true : _this$props$isCheckSt
|
|
3328
|
+
isCheckStockNum = _this$props$isCheckSt === void 0 ? true : _this$props$isCheckSt,
|
|
3329
|
+
customerColumnsMapping = _this$props.customerColumnsMapping;
|
|
3321
3330
|
var resultData = _this.getData().filter(function (d) {
|
|
3322
3331
|
return ___default['default'].compact(Object.values(d)).length;
|
|
3323
3332
|
});
|
|
3333
|
+
var resultColumns = (customerColumnsMapping === null || customerColumnsMapping === void 0 ? void 0 : customerColumnsMapping.length) ? customerColumnsMapping === null || customerColumnsMapping === void 0 ? void 0 : (_customerColumnsMappi = customerColumnsMapping.filter(function (c) {
|
|
3334
|
+
return !(c === null || c === void 0 ? void 0 : c.name);
|
|
3335
|
+
})) === null || _customerColumnsMappi === void 0 ? void 0 : _customerColumnsMappi.map(function (c) {
|
|
3336
|
+
return c.name;
|
|
3337
|
+
}) : columns;
|
|
3324
3338
|
// 处理业务参数
|
|
3325
3339
|
var otherParams = {};
|
|
3326
3340
|
if (isBrandAuth) {
|
|
@@ -3329,7 +3343,7 @@ var DataImport = /*#__PURE__*/function (_React$Component) {
|
|
|
3329
3343
|
};
|
|
3330
3344
|
}
|
|
3331
3345
|
requestUtil.post(validDataUrl, _objectSpread2(_objectSpread2(_objectSpread2({}, otherParams), validDataParams), {}, {
|
|
3332
|
-
columns:
|
|
3346
|
+
columns: resultColumns,
|
|
3333
3347
|
data: resultData,
|
|
3334
3348
|
checkStockNum: isCheckStockNum
|
|
3335
3349
|
})).then(function (result) {
|
|
@@ -3344,12 +3358,12 @@ var DataImport = /*#__PURE__*/function (_React$Component) {
|
|
|
3344
3358
|
var sheetData = luckysheet$1.getSheetData();
|
|
3345
3359
|
sheetData.map(function (item, index) {
|
|
3346
3360
|
if (!res[index]) return item;
|
|
3347
|
-
var changeVMIndex =
|
|
3361
|
+
var changeVMIndex = resultColumns === null || resultColumns === void 0 ? void 0 : resultColumns.findIndex(function (i) {
|
|
3348
3362
|
return i === 'skuCode';
|
|
3349
3363
|
});
|
|
3350
|
-
if (
|
|
3364
|
+
if ((resultColumns === null || resultColumns === void 0 ? void 0 : resultColumns.find(function (i) {
|
|
3351
3365
|
return i === 'skuCode';
|
|
3352
|
-
}) && item[changeVMIndex].v !== res[index].skuCode) {
|
|
3366
|
+
})) && item[changeVMIndex].v !== res[index].skuCode) {
|
|
3353
3367
|
item[changeVMIndex].v = res[index].skuCode;
|
|
3354
3368
|
item[changeVMIndex].m = res[index].skuCode;
|
|
3355
3369
|
}
|
|
@@ -4571,26 +4585,40 @@ var SearchSelect = /*#__PURE__*/React$1.forwardRef(function (props, ref) {
|
|
|
4571
4585
|
return specialBracket ? "\u3010".concat(item.textShowKey, "\u3011").concat(showText) : "".concat(item.textShowKey, " ").concat(showText);
|
|
4572
4586
|
}
|
|
4573
4587
|
};
|
|
4588
|
+
var getShowLabelTextStr = function getShowLabelTextStr(kongValue) {
|
|
4589
|
+
if (selectMode) {
|
|
4590
|
+
var _value$map;
|
|
4591
|
+
return (value === null || value === void 0 ? void 0 : (_value$map = value.map(function (item) {
|
|
4592
|
+
return item.label || item.text || '';
|
|
4593
|
+
})) === null || _value$map === void 0 ? void 0 : _value$map.join(',')) || kongValue;
|
|
4594
|
+
}
|
|
4595
|
+
return (value === null || value === void 0 ? void 0 : value.label) || (value === null || value === void 0 ? void 0 : value.text) || kongValue;
|
|
4596
|
+
};
|
|
4574
4597
|
var getSelectValueText = function getSelectValueText(v) {
|
|
4575
4598
|
var _filter, _filter$;
|
|
4576
4599
|
return ((_filter = (items || []).filter(function (item) {
|
|
4577
4600
|
return item.value === v;
|
|
4578
4601
|
})) === null || _filter === void 0 ? void 0 : (_filter$ = _filter[0]) === null || _filter$ === void 0 ? void 0 : _filter$.text) || v || '';
|
|
4579
4602
|
};
|
|
4603
|
+
var getShowValueStr = function getShowValueStr(kongValue) {
|
|
4604
|
+
if (selectMode) {
|
|
4605
|
+
var _value$map2;
|
|
4606
|
+
return (value === null || value === void 0 ? void 0 : (_value$map2 = value.map(function (item) {
|
|
4607
|
+
return getSelectValueText(item);
|
|
4608
|
+
})) === null || _value$map2 === void 0 ? void 0 : _value$map2.join(',')) || kongValue;
|
|
4609
|
+
}
|
|
4610
|
+
return getSelectValueText(value) || kongValue;
|
|
4611
|
+
};
|
|
4580
4612
|
var getShowStr = function getShowStr() {
|
|
4581
|
-
var
|
|
4613
|
+
var kongValue = '无';
|
|
4582
4614
|
// 先判断labelInValue与否,labelInValue可以直接去value中获取字段名称,否则去下拉框数据里面去拿;
|
|
4583
4615
|
// 再判断是单选还是多选,数据类型不同取值方式也不同
|
|
4584
4616
|
if (labelInValue) {
|
|
4585
|
-
|
|
4586
|
-
return selectMode ? value === null || value === void 0 ? void 0 : (_value$map = value.map(function (item) {
|
|
4587
|
-
return item.label || item.text;
|
|
4588
|
-
})) === null || _value$map === void 0 ? void 0 : _value$map.join(',') : (value === null || value === void 0 ? void 0 : value.label) || (value === null || value === void 0 ? void 0 : value.text);
|
|
4617
|
+
return getShowLabelTextStr(kongValue);
|
|
4589
4618
|
}
|
|
4590
|
-
return
|
|
4591
|
-
return getSelectValueText(item);
|
|
4592
|
-
})) === null || _value$map2 === void 0 ? void 0 : _value$map2.join(',') : getSelectValueText(value);
|
|
4619
|
+
return getShowValueStr(kongValue);
|
|
4593
4620
|
};
|
|
4621
|
+
var isShouldShowStr = props.disabled && ctx;
|
|
4594
4622
|
return /*#__PURE__*/React__default['default'].createElement("div", {
|
|
4595
4623
|
className: 'search_select'
|
|
4596
4624
|
}, fieldComponent ? ( /*#__PURE__*/React__default['default'].createElement("div", {
|
|
@@ -4599,7 +4627,7 @@ var SearchSelect = /*#__PURE__*/React$1.forwardRef(function (props, ref) {
|
|
|
4599
4627
|
(_fieldComponent$props = fieldComponent.props) === null || _fieldComponent$props === void 0 ? void 0 : (_fieldComponent$props2 = _fieldComponent$props.onClick) === null || _fieldComponent$props2 === void 0 ? void 0 : _fieldComponent$props2.call(_fieldComponent$props);
|
|
4600
4628
|
showModal();
|
|
4601
4629
|
}
|
|
4602
|
-
}, fieldComponent)) :
|
|
4630
|
+
}, fieldComponent)) : isShouldShowStr ? ( /*#__PURE__*/React__default['default'].createElement("div", {
|
|
4603
4631
|
title: getShowStr(),
|
|
4604
4632
|
style: {
|
|
4605
4633
|
overflow: 'hidden',
|
|
@@ -11806,9 +11834,30 @@ var TreeSearchSelect = function TreeSearchSelect(props) {
|
|
|
11806
11834
|
})
|
|
11807
11835
|
}, "+ ".concat(selectedValues === null || selectedValues === void 0 ? void 0 : selectedValues.length));
|
|
11808
11836
|
};
|
|
11837
|
+
var getShowStr = function getShowStr() {
|
|
11838
|
+
var isMultiple = multiple || treeCheckable;
|
|
11839
|
+
var kongValue = '无';
|
|
11840
|
+
var parallelTreeData = parallelData(treeData, []);
|
|
11841
|
+
var currentItem = getSelectItem(parallelTreeData, value); // 得到选中的数据项
|
|
11842
|
+
if (isMultiple) {
|
|
11843
|
+
return (currentItem === null || currentItem === void 0 ? void 0 : currentItem.map(function (i) {
|
|
11844
|
+
return i === null || i === void 0 ? void 0 : i['title'];
|
|
11845
|
+
}).join(',')) || kongValue;
|
|
11846
|
+
}
|
|
11847
|
+
return valueName || (currentItem === null || currentItem === void 0 ? void 0 : currentItem['title']) || kongValue;
|
|
11848
|
+
};
|
|
11849
|
+
var isShouldShowStr = (disabled || mode === 'view' || (ctx === null || ctx === void 0 ? void 0 : ctx.mode) === 'view') && ctx;
|
|
11809
11850
|
return /*#__PURE__*/React__default['default'].createElement("div", {
|
|
11810
11851
|
className: 'tree_search_select'
|
|
11811
|
-
}, /*#__PURE__*/React__default['default'].createElement(
|
|
11852
|
+
}, isShouldShowStr ? ( /*#__PURE__*/React__default['default'].createElement("div", {
|
|
11853
|
+
title: getShowStr(),
|
|
11854
|
+
style: {
|
|
11855
|
+
overflow: 'hidden',
|
|
11856
|
+
textOverflow: 'ellipsis',
|
|
11857
|
+
whiteSpace: 'nowrap'
|
|
11858
|
+
},
|
|
11859
|
+
className: 'search_select_show'
|
|
11860
|
+
}, getShowStr())) : ( /*#__PURE__*/React__default['default'].createElement(antd.TreeSelect, _objectSpread2(_objectSpread2({}, restProps), {}, {
|
|
11812
11861
|
treeCheckable: treeCheckable,
|
|
11813
11862
|
maxTagCount: maxTagCount,
|
|
11814
11863
|
showSearch: showSearch,
|
|
@@ -11834,7 +11883,7 @@ var TreeSearchSelect = function TreeSearchSelect(props) {
|
|
|
11834
11883
|
getPopupContainer: function getPopupContainer(triggerNode) {
|
|
11835
11884
|
return _getPopupContainer && _getPopupContainer(triggerNode) || document.body;
|
|
11836
11885
|
}
|
|
11837
|
-
})));
|
|
11886
|
+
}))));
|
|
11838
11887
|
};
|
|
11839
11888
|
|
|
11840
11889
|
var handleDefaultProps = function handleDefaultProps(type, otherRequestConfig) {
|
|
@@ -15097,6 +15146,14 @@ var ResizeableTitle$2 = function ResizeableTitle(props) {
|
|
|
15097
15146
|
var BsSulaQueryTable = (function (props) {
|
|
15098
15147
|
var _props$expandable, _value$exportConfig7;
|
|
15099
15148
|
var bsTableCode = (props === null || props === void 0 ? void 0 : props.tableCode) || window.location.hash; //设置列字段的唯一标识
|
|
15149
|
+
// 获取 table columns中所有的 key 防止有的地方是 dataindex
|
|
15150
|
+
var checkedList = React$1.useMemo(function () {
|
|
15151
|
+
return props.columns.filter(function (col) {
|
|
15152
|
+
return !col.hidden;
|
|
15153
|
+
}).map(function (d) {
|
|
15154
|
+
return Array.isArray(d.key || d.dataIndex) ? JSON.stringify(d.key || d.dataIndex) : d.key || d.dataIndex;
|
|
15155
|
+
});
|
|
15156
|
+
}, [props.columns]);
|
|
15100
15157
|
var getConfigFromlocalstorage = function getConfigFromlocalstorage(type) {
|
|
15101
15158
|
var tableCode = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : bsTableCode;
|
|
15102
15159
|
var config = localStorage.getItem(type) || '[]';
|
|
@@ -15109,34 +15166,64 @@ var BsSulaQueryTable = (function (props) {
|
|
|
15109
15166
|
}
|
|
15110
15167
|
return [];
|
|
15111
15168
|
};
|
|
15112
|
-
|
|
15113
|
-
|
|
15114
|
-
|
|
15115
|
-
|
|
15116
|
-
|
|
15117
|
-
|
|
15118
|
-
|
|
15119
|
-
|
|
15120
|
-
|
|
15121
|
-
|
|
15122
|
-
|
|
15123
|
-
|
|
15124
|
-
|
|
15125
|
-
|
|
15169
|
+
/**
|
|
15170
|
+
* 根据保存的配置和原始配置,获取设置的字段或列。
|
|
15171
|
+
* @param savedConfig 保存的配置数组,可能包含字段或列的配置。
|
|
15172
|
+
* @param originConfig 原始配置数组,包含完整的字段或列信息。
|
|
15173
|
+
* @param type 字段或列的类型,用于确定配置的属性。
|
|
15174
|
+
* @returns 返回根据保存的配置处理后的字段或列数组,如果未保存任何配置,则返回原始配置。
|
|
15175
|
+
*/
|
|
15176
|
+
var getSettingFieldOrColumn = function getSettingFieldOrColumn(savedConfig, originConfig, type) {
|
|
15177
|
+
/**
|
|
15178
|
+
* 判断值是否为字符串数组。
|
|
15179
|
+
* @param value 待判断的值。
|
|
15180
|
+
* @returns 如果值是字符串数组,则返回true,否则返回false。
|
|
15181
|
+
*/
|
|
15182
|
+
var isStringArray = function isStringArray(value) {
|
|
15183
|
+
return Array.isArray(value) && value.every(function (v) {
|
|
15184
|
+
return typeof v === 'string';
|
|
15185
|
+
});
|
|
15186
|
+
};
|
|
15187
|
+
/**
|
|
15188
|
+
* 根据配置项和类型,获取配置项的键。
|
|
15189
|
+
* @param config 配置项,可以是字段或列。
|
|
15190
|
+
* @param type 配置项的类型。
|
|
15191
|
+
* @returns 返回配置项的键,如果无法获取,则返回空字符串。
|
|
15192
|
+
*/
|
|
15193
|
+
var getItemKey = function getItemKey(config, type) {
|
|
15194
|
+
try {
|
|
15195
|
+
if (type === 'columns') {
|
|
15196
|
+
return isStringArray(config.key) ? JSON.stringify(config.key) : isStringArray(config.dataIndex) ? JSON.stringify(config.dataIndex) : config.key || config.dataIndex || '';
|
|
15197
|
+
}
|
|
15198
|
+
return isStringArray(config.name) ? JSON.stringify(config.name) : config.name || '';
|
|
15199
|
+
} catch (e) {}
|
|
15200
|
+
return '';
|
|
15201
|
+
};
|
|
15202
|
+
var newConfig = [];
|
|
15203
|
+
if (savedConfig.length) {
|
|
15204
|
+
var hash = originConfig.reduce(function (prev, inneritem) {
|
|
15205
|
+
prev[getItemKey(inneritem, type)] = inneritem;
|
|
15206
|
+
return prev;
|
|
15207
|
+
}, {});
|
|
15208
|
+
savedConfig.forEach(function (config, index) {
|
|
15209
|
+
var inner = hash[getItemKey(config, type)];
|
|
15210
|
+
inner && newConfig.push(_objectSpread2(_objectSpread2({}, inner), config));
|
|
15211
|
+
});
|
|
15212
|
+
}
|
|
15213
|
+
if (newConfig.length) return newConfig;
|
|
15214
|
+
if (type === 'columns') {
|
|
15215
|
+
return originConfig.filter(function (column) {
|
|
15216
|
+
var columnKey = getItemKey(column, type);
|
|
15217
|
+
return column.notRegularCheckList || checkedList.indexOf(columnKey) > -1;
|
|
15218
|
+
});
|
|
15219
|
+
}
|
|
15220
|
+
return _toConsumableArray(originConfig);
|
|
15126
15221
|
};
|
|
15127
15222
|
var refs = React$1.useRef(null);
|
|
15128
15223
|
var _useState = React$1.useState(''),
|
|
15129
15224
|
_useState2 = _slicedToArray(_useState, 2),
|
|
15130
15225
|
pagePath = _useState2[0],
|
|
15131
15226
|
setPagePath = _useState2[1];
|
|
15132
|
-
// 获取 table columns中所有的 key 防止有的地方是 dataindex
|
|
15133
|
-
var checkedList = React$1.useMemo(function () {
|
|
15134
|
-
return props.columns.filter(function (col) {
|
|
15135
|
-
return !col.hidden;
|
|
15136
|
-
}).map(function (d) {
|
|
15137
|
-
return Array.isArray(d.key || d.dataIndex) ? JSON.stringify(d.key || d.dataIndex) : d.key || d.dataIndex;
|
|
15138
|
-
});
|
|
15139
|
-
}, [props.columns]);
|
|
15140
15227
|
var _useLocation = umi.useLocation(),
|
|
15141
15228
|
pathname = _useLocation.pathname,
|
|
15142
15229
|
_useLocation$state = _useLocation.state,
|
|
@@ -15147,11 +15234,13 @@ var BsSulaQueryTable = (function (props) {
|
|
|
15147
15234
|
setIsFnllScreen = _useState4[1];
|
|
15148
15235
|
// @ts-nocheck
|
|
15149
15236
|
var value = props;
|
|
15237
|
+
var _props$fields = props.fields,
|
|
15238
|
+
fields = _props$fields === void 0 ? [] : _props$fields;
|
|
15150
15239
|
var _useState5 = React$1.useState([]),
|
|
15151
15240
|
_useState6 = _slicedToArray(_useState5, 2),
|
|
15152
15241
|
showColumn = _useState6[0],
|
|
15153
15242
|
setShowColumns = _useState6[1]; // 列字段
|
|
15154
|
-
var originSearchFields =
|
|
15243
|
+
var originSearchFields = getSettingFieldOrColumn(getConfigFromlocalstorage(ENUM.BROWSER_CACHE.SEARCH_FIELDS_CONDITION), fields, 'searchFields');
|
|
15155
15244
|
var _useState7 = React$1.useState(originSearchFields),
|
|
15156
15245
|
_useState8 = _slicedToArray(_useState7, 2),
|
|
15157
15246
|
showSearchFields = _useState8[0],
|
|
@@ -15244,44 +15333,11 @@ var BsSulaQueryTable = (function (props) {
|
|
|
15244
15333
|
}
|
|
15245
15334
|
var columns = props.columns;
|
|
15246
15335
|
var columnConfig = getConfigFromlocalstorage(ENUM.BROWSER_CACHE.COLUMN_CONDITION);
|
|
15247
|
-
var isStringArray = function isStringArray(value) {
|
|
15248
|
-
return Array.isArray(value) && value.every(function (v) {
|
|
15249
|
-
return typeof v === 'string';
|
|
15250
|
-
});
|
|
15251
|
-
};
|
|
15252
|
-
var getColumnKey = function getColumnKey(column) {
|
|
15253
|
-
if (isStringArray(column.key)) {
|
|
15254
|
-
return JSON.stringify(column.key);
|
|
15255
|
-
} else if (isStringArray(column.dataIndex)) {
|
|
15256
|
-
return JSON.stringify(column.dataIndex);
|
|
15257
|
-
} else {
|
|
15258
|
-
return column.key || column.dataIndex || '';
|
|
15259
|
-
}
|
|
15260
|
-
};
|
|
15261
15336
|
var parseWidth = function parseWidth(widthStr) {
|
|
15262
15337
|
var parsedWidth = parseInt(widthStr.replace('px', ''));
|
|
15263
15338
|
return isNaN(parsedWidth) ? 0 : parsedWidth;
|
|
15264
15339
|
};
|
|
15265
|
-
|
|
15266
|
-
var getShowColumns = function getShowColumns(columnConfig) {
|
|
15267
|
-
var cols = [];
|
|
15268
|
-
if (columnConfig.length) {
|
|
15269
|
-
columnConfig.forEach(function (config, index) {
|
|
15270
|
-
var hash = columns.reduce(function (prev, inneritem) {
|
|
15271
|
-
prev[getColumnKey(inneritem)] = inneritem;
|
|
15272
|
-
return prev;
|
|
15273
|
-
}, {});
|
|
15274
|
-
var inner = hash[getColumnKey(config)];
|
|
15275
|
-
inner && cols.push(_objectSpread2(_objectSpread2({}, inner), config));
|
|
15276
|
-
});
|
|
15277
|
-
}
|
|
15278
|
-
if (cols.length) return cols;
|
|
15279
|
-
return columns.filter(function (column) {
|
|
15280
|
-
var columnKey = getColumnKey(column);
|
|
15281
|
-
return column.notRegularCheckList || checkedList.indexOf(columnKey) > -1;
|
|
15282
|
-
});
|
|
15283
|
-
};
|
|
15284
|
-
var showColumns = getShowColumns(columnConfig);
|
|
15340
|
+
var showColumns = getSettingFieldOrColumn(columnConfig, columns, 'columns');
|
|
15285
15341
|
showColumns.forEach(function (item, index) {
|
|
15286
15342
|
item.width = item.width || getItemDefaultWidth(item);
|
|
15287
15343
|
handleBssulaColumnsSpecialParams(item);
|
|
@@ -15294,7 +15350,7 @@ var BsSulaQueryTable = (function (props) {
|
|
|
15294
15350
|
});
|
|
15295
15351
|
setShowColumns(_toConsumableArray(showColumns));
|
|
15296
15352
|
var exportColumnConfig = getConfigFromlocalstorage(ENUM.BROWSER_CACHE.COLUMN_CONDITION, bsTableCodeExport);
|
|
15297
|
-
var showExportColumns =
|
|
15353
|
+
var showExportColumns = getSettingFieldOrColumn(exportColumnConfig, columns, 'columns');
|
|
15298
15354
|
showExportColumns.forEach(function (item, index) {
|
|
15299
15355
|
item.width = item.width || getItemDefaultWidth(item);
|
|
15300
15356
|
handleBssulaColumnsSpecialParams(item);
|
|
@@ -15312,14 +15368,7 @@ var BsSulaQueryTable = (function (props) {
|
|
|
15312
15368
|
var _props$fields2 = props.fields,
|
|
15313
15369
|
fields = _props$fields2 === void 0 ? [] : _props$fields2;
|
|
15314
15370
|
var searchFieldsConfig = getConfigFromlocalstorage(ENUM.BROWSER_CACHE.SEARCH_FIELDS_CONDITION);
|
|
15315
|
-
var showSearchFields = searchFieldsConfig
|
|
15316
|
-
var inner = fields.filter(function (inneritem) {
|
|
15317
|
-
var innerKey = Array.isArray(inneritem.name) ? JSON.stringify(inneritem.name) : inneritem.name;
|
|
15318
|
-
var itemKey = Array.isArray(item.name) ? JSON.stringify(item.name) : item.name;
|
|
15319
|
-
return innerKey && innerKey === itemKey;
|
|
15320
|
-
})[0];
|
|
15321
|
-
return _objectSpread2(_objectSpread2({}, inner), item);
|
|
15322
|
-
}) : fields;
|
|
15371
|
+
var showSearchFields = getSettingFieldOrColumn(searchFieldsConfig, fields, 'searchFields');
|
|
15323
15372
|
setShowSearchFields(_toConsumableArray(showSearchFields));
|
|
15324
15373
|
};
|
|
15325
15374
|
//组件初始挂载
|
package/package.json
CHANGED
|
@@ -32,6 +32,12 @@ interface Column {
|
|
|
32
32
|
onHeaderCell?: (column: Column) => any; // 仅作示例,具体类型根据实际情况定义
|
|
33
33
|
}
|
|
34
34
|
|
|
35
|
+
interface Field {
|
|
36
|
+
name: string;
|
|
37
|
+
label: string;
|
|
38
|
+
field: any;
|
|
39
|
+
}
|
|
40
|
+
|
|
35
41
|
const MemoQueryTable = React.memo(QueryTable);
|
|
36
42
|
const { Text } = Typography;
|
|
37
43
|
|
|
@@ -55,6 +61,20 @@ const ResizeableTitle = (props) => {
|
|
|
55
61
|
|
|
56
62
|
export default (props: any) => {
|
|
57
63
|
const bsTableCode = props?.tableCode || window.location.hash; //设置列字段的唯一标识
|
|
64
|
+
|
|
65
|
+
// 获取 table columns中所有的 key 防止有的地方是 dataindex
|
|
66
|
+
const checkedList = useMemo(
|
|
67
|
+
() =>
|
|
68
|
+
props.columns
|
|
69
|
+
.filter((col: any) => !col.hidden)
|
|
70
|
+
.map((d: any) =>
|
|
71
|
+
Array.isArray(d.key || d.dataIndex)
|
|
72
|
+
? JSON.stringify(d.key || d.dataIndex)
|
|
73
|
+
: d.key || d.dataIndex,
|
|
74
|
+
),
|
|
75
|
+
[props.columns],
|
|
76
|
+
);
|
|
77
|
+
|
|
58
78
|
const getConfigFromlocalstorage = (type: string, tableCode:string = bsTableCode) => {
|
|
59
79
|
let config = localStorage.getItem(type) || '[]';
|
|
60
80
|
let configArray = JSON.parse(config);
|
|
@@ -67,47 +87,75 @@ export default (props: any) => {
|
|
|
67
87
|
}
|
|
68
88
|
return [];
|
|
69
89
|
};
|
|
70
|
-
const getInitialSearchFieldsInfo = () => {
|
|
71
|
-
//获取搜索字段的缓存配置
|
|
72
|
-
const { fields = [] } = props;
|
|
73
|
-
let searchFieldsConfig = getConfigFromlocalstorage(ENUM.BROWSER_CACHE.SEARCH_FIELDS_CONDITION);
|
|
74
|
-
let showSearchFields = searchFieldsConfig.length ? searchFieldsConfig.map((item) => {
|
|
75
|
-
let inner = fields.filter(
|
|
76
|
-
(inneritem) => {
|
|
77
|
-
let innerKey = Array.isArray(inneritem.name) ? JSON.stringify(inneritem.name) : inneritem.name;
|
|
78
|
-
let itemKey = Array.isArray(item.name) ? JSON.stringify(item.name) : item.name;
|
|
79
|
-
return innerKey && innerKey === itemKey;
|
|
80
|
-
}
|
|
81
|
-
)[0];
|
|
82
90
|
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
91
|
+
/**
|
|
92
|
+
* 根据保存的配置和原始配置,获取设置的字段或列。
|
|
93
|
+
* @param savedConfig 保存的配置数组,可能包含字段或列的配置。
|
|
94
|
+
* @param originConfig 原始配置数组,包含完整的字段或列信息。
|
|
95
|
+
* @param type 字段或列的类型,用于确定配置的属性。
|
|
96
|
+
* @returns 返回根据保存的配置处理后的字段或列数组,如果未保存任何配置,则返回原始配置。
|
|
97
|
+
*/
|
|
98
|
+
const getSettingFieldOrColumn = (savedConfig, originConfig, type: string) => {
|
|
99
|
+
/**
|
|
100
|
+
* 判断值是否为字符串数组。
|
|
101
|
+
* @param value 待判断的值。
|
|
102
|
+
* @returns 如果值是字符串数组,则返回true,否则返回false。
|
|
103
|
+
*/
|
|
104
|
+
const isStringArray = (value: any): value is string[] => {
|
|
105
|
+
return Array.isArray(value) && value.every(v => typeof v === 'string');
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
/**
|
|
109
|
+
* 根据配置项和类型,获取配置项的键。
|
|
110
|
+
* @param config 配置项,可以是字段或列。
|
|
111
|
+
* @param type 配置项的类型。
|
|
112
|
+
* @returns 返回配置项的键,如果无法获取,则返回空字符串。
|
|
113
|
+
*/
|
|
114
|
+
const getItemKey = (config: Column | Field, type: string): string => {
|
|
115
|
+
try {
|
|
116
|
+
if (type === 'columns') {
|
|
117
|
+
return isStringArray(config.key) ? JSON.stringify(config.key) : isStringArray(config.dataIndex) ? JSON.stringify(config.dataIndex) : config.key || config.dataIndex || '';
|
|
118
|
+
}
|
|
119
|
+
return isStringArray(config.name) ? JSON.stringify(config.name) : config.name || '';
|
|
120
|
+
} catch(e) {}
|
|
121
|
+
return '';
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
const newConfig = [];
|
|
125
|
+
|
|
126
|
+
if (savedConfig.length) {
|
|
127
|
+
const hash = originConfig.reduce((prev, inneritem) => {
|
|
128
|
+
prev[getItemKey(inneritem, type)] = inneritem;
|
|
129
|
+
return prev;
|
|
130
|
+
}, {} as { [key: string]: Column | Field });
|
|
131
|
+
|
|
132
|
+
savedConfig.forEach((config, index) => {
|
|
133
|
+
let inner = hash[getItemKey(config, type)];
|
|
134
|
+
inner && newConfig.push({ ...inner, ...config });
|
|
135
|
+
})
|
|
89
136
|
}
|
|
137
|
+
|
|
138
|
+
if (newConfig.length) return newConfig;
|
|
139
|
+
|
|
140
|
+
if (type === 'columns') {
|
|
141
|
+
return originConfig.filter(column => {
|
|
142
|
+
const columnKey = getItemKey(column, type);
|
|
143
|
+
return column.notRegularCheckList || checkedList.indexOf(columnKey) > -1;
|
|
144
|
+
});
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
return [...originConfig];
|
|
148
|
+
}
|
|
90
149
|
const refs = useRef(null);
|
|
91
150
|
const [pagePath, setPagePath] = useState('');
|
|
92
|
-
// 获取 table columns中所有的 key 防止有的地方是 dataindex
|
|
93
|
-
const checkedList = useMemo(
|
|
94
|
-
() =>
|
|
95
|
-
props.columns
|
|
96
|
-
.filter((col: any) => !col.hidden)
|
|
97
|
-
.map((d: any) =>
|
|
98
|
-
Array.isArray(d.key || d.dataIndex)
|
|
99
|
-
? JSON.stringify(d.key || d.dataIndex)
|
|
100
|
-
: d.key || d.dataIndex,
|
|
101
|
-
),
|
|
102
|
-
[props.columns],
|
|
103
|
-
);
|
|
104
151
|
|
|
105
152
|
const { pathname, state = {} } = useLocation();
|
|
106
153
|
const [isFullScreen, setIsFnllScreen]: any = useState(false);
|
|
107
154
|
// @ts-nocheck
|
|
108
155
|
const value = props;
|
|
156
|
+
const { fields = [] } = props;
|
|
109
157
|
const [showColumn, setShowColumns] = useState([]); // 列字段
|
|
110
|
-
const originSearchFields =
|
|
158
|
+
const originSearchFields = getSettingFieldOrColumn(getConfigFromlocalstorage(ENUM.BROWSER_CACHE.SEARCH_FIELDS_CONDITION), fields, 'searchFields');
|
|
111
159
|
const [showSearchFields, setShowSearchFields] = useState(originSearchFields); //搜索项字段
|
|
112
160
|
const [showExportColumn, setShowExportColumns] = useState([]); // 导出列字段
|
|
113
161
|
|
|
@@ -117,6 +165,7 @@ export default (props: any) => {
|
|
|
117
165
|
const exportTableRef = useRef<any>(null);
|
|
118
166
|
|
|
119
167
|
const bsTableCodeExport = `${bsTableCode}___Export`; //设置导出列字段的唯一标识
|
|
168
|
+
|
|
120
169
|
// 获取table高度
|
|
121
170
|
const getTableHeight = () => {
|
|
122
171
|
setTimeout(() => {
|
|
@@ -217,49 +266,12 @@ export default (props: any) => {
|
|
|
217
266
|
let columnConfig = getConfigFromlocalstorage(ENUM.BROWSER_CACHE.COLUMN_CONDITION);
|
|
218
267
|
|
|
219
268
|
|
|
220
|
-
const isStringArray = (value: any): value is string[] => {
|
|
221
|
-
return Array.isArray(value) && value.every(v => typeof v === 'string');
|
|
222
|
-
}
|
|
223
|
-
|
|
224
|
-
const getColumnKey = (column: Column): string => {
|
|
225
|
-
if (isStringArray(column.key)) {
|
|
226
|
-
return JSON.stringify(column.key);
|
|
227
|
-
} else if (isStringArray(column.dataIndex)) {
|
|
228
|
-
return JSON.stringify(column.dataIndex);
|
|
229
|
-
} else {
|
|
230
|
-
return column.key || column.dataIndex || '';
|
|
231
|
-
}
|
|
232
|
-
}
|
|
233
|
-
|
|
234
269
|
const parseWidth = (widthStr: string): number => {
|
|
235
270
|
const parsedWidth = parseInt(widthStr.replace('px', ''));
|
|
236
271
|
return isNaN(parsedWidth) ? 0 : parsedWidth;
|
|
237
272
|
}
|
|
238
273
|
|
|
239
|
-
|
|
240
|
-
const getShowColumns = (columnConfig: Array<Column>) => {
|
|
241
|
-
const cols = [];
|
|
242
|
-
if (columnConfig.length) {
|
|
243
|
-
columnConfig.forEach((config, index) => {
|
|
244
|
-
const hash = columns.reduce((prev, inneritem) => {
|
|
245
|
-
prev[getColumnKey(inneritem)] = inneritem;
|
|
246
|
-
return prev;
|
|
247
|
-
}, {} as { [key: string]: Column });
|
|
248
|
-
|
|
249
|
-
let inner = hash[getColumnKey(config)];
|
|
250
|
-
inner && cols.push({ ...inner, ...config });
|
|
251
|
-
})
|
|
252
|
-
}
|
|
253
|
-
|
|
254
|
-
if (cols.length) return cols;
|
|
255
|
-
|
|
256
|
-
return columns.filter(column => {
|
|
257
|
-
const columnKey = getColumnKey(column);
|
|
258
|
-
return column.notRegularCheckList || checkedList.indexOf(columnKey) > -1;
|
|
259
|
-
});
|
|
260
|
-
}
|
|
261
|
-
|
|
262
|
-
let showColumns = getShowColumns(columnConfig);
|
|
274
|
+
let showColumns = getSettingFieldOrColumn(columnConfig, columns, 'columns');
|
|
263
275
|
|
|
264
276
|
showColumns.forEach((item, index) => {
|
|
265
277
|
item.width = item.width || getItemDefaultWidth(item);
|
|
@@ -278,7 +290,7 @@ export default (props: any) => {
|
|
|
278
290
|
ENUM.BROWSER_CACHE.COLUMN_CONDITION,
|
|
279
291
|
bsTableCodeExport,
|
|
280
292
|
);
|
|
281
|
-
let showExportColumns =
|
|
293
|
+
let showExportColumns = getSettingFieldOrColumn(exportColumnConfig, columns, 'columns');
|
|
282
294
|
|
|
283
295
|
showExportColumns.forEach((item, index) => {
|
|
284
296
|
item.width = item.width || getItemDefaultWidth(item);
|
|
@@ -301,24 +313,7 @@ export default (props: any) => {
|
|
|
301
313
|
let searchFieldsConfig = getConfigFromlocalstorage(
|
|
302
314
|
ENUM.BROWSER_CACHE.SEARCH_FIELDS_CONDITION,
|
|
303
315
|
);
|
|
304
|
-
|
|
305
|
-
? searchFieldsConfig.map((item) => {
|
|
306
|
-
let inner = fields.filter((inneritem) => {
|
|
307
|
-
let innerKey = Array.isArray(inneritem.name)
|
|
308
|
-
? JSON.stringify(inneritem.name)
|
|
309
|
-
: inneritem.name;
|
|
310
|
-
let itemKey = Array.isArray(item.name)
|
|
311
|
-
? JSON.stringify(item.name)
|
|
312
|
-
: item.name;
|
|
313
|
-
return innerKey && innerKey === itemKey;
|
|
314
|
-
})[0];
|
|
315
|
-
|
|
316
|
-
return {
|
|
317
|
-
...inner,
|
|
318
|
-
...item,
|
|
319
|
-
};
|
|
320
|
-
})
|
|
321
|
-
: fields;
|
|
316
|
+
const showSearchFields = getSettingFieldOrColumn(searchFieldsConfig, fields, 'searchFields');
|
|
322
317
|
setShowSearchFields([...showSearchFields]);
|
|
323
318
|
};
|
|
324
319
|
|
|
@@ -133,6 +133,27 @@ import React, { useState } from 'react';
|
|
|
133
133
|
import { BusinessTreeSearchSelect } from '../../../index';
|
|
134
134
|
|
|
135
135
|
export default () => {
|
|
136
|
+
// 'LJCaxiao01', ['LJCaxiao01', 'Store061201'],
|
|
137
|
+
// {
|
|
138
|
+
// "label": "上海七宝万科安正家居体验店",
|
|
139
|
+
// "value": "Store061201",
|
|
140
|
+
// "disabled": false,
|
|
141
|
+
// "key": "Store061201"
|
|
142
|
+
// },
|
|
143
|
+
// [
|
|
144
|
+
// {
|
|
145
|
+
// "label": "阿宵的逻辑仓02",
|
|
146
|
+
// "value": "LJCaxiao01",
|
|
147
|
+
// "disabled": false,
|
|
148
|
+
// "key": "LJCaxiao01"
|
|
149
|
+
// },
|
|
150
|
+
// {
|
|
151
|
+
// "label": "上海七宝万科安正家居体验店",
|
|
152
|
+
// "value": "Store061201",
|
|
153
|
+
// "disabled": false,
|
|
154
|
+
// "key": "Store061201"
|
|
155
|
+
// }
|
|
156
|
+
// ]
|
|
136
157
|
|
|
137
158
|
const [value, setValue] = useState();
|
|
138
159
|
|
|
@@ -140,7 +161,12 @@ export default () => {
|
|
|
140
161
|
mode: 'create',
|
|
141
162
|
value,
|
|
142
163
|
isChoose: false, // 控制是否父节点可选中,默认不可选中
|
|
164
|
+
// ctx: {},
|
|
165
|
+
// disabled: true,
|
|
166
|
+
// treeCheckable: true,
|
|
167
|
+
// labelInValue: true,
|
|
143
168
|
onChange: (v) => {
|
|
169
|
+
// console.log(v,'----v')
|
|
144
170
|
setValue(v)
|
|
145
171
|
},
|
|
146
172
|
businessType: 'settle-organization'
|
|
@@ -65,6 +65,7 @@ const mapping = new Map([
|
|
|
65
65
|
['assignQuantity', '按指定数量'],
|
|
66
66
|
['retainQuantity', ' 按保留数量'],
|
|
67
67
|
['priority', ' 优先级'],
|
|
68
|
+
['stockBizTypeCode', ' 库存类型'],
|
|
68
69
|
]);
|
|
69
70
|
|
|
70
71
|
// for dnd
|
|
@@ -420,12 +421,12 @@ class DataImport extends React.Component {
|
|
|
420
421
|
};
|
|
421
422
|
|
|
422
423
|
resetData = () => {
|
|
423
|
-
const { validDataUrl, validDataParams, updateData, columns, isBrandAuth, isCheckStockNum = true } = this.props;
|
|
424
|
+
const { validDataUrl, validDataParams, updateData, columns, isBrandAuth, isCheckStockNum = true, customerColumnsMapping } = this.props;
|
|
424
425
|
const resultData = this.getData().filter(d => {
|
|
425
426
|
return _.compact(Object.values(d)).length
|
|
426
427
|
})
|
|
428
|
+
const resultColumns = customerColumnsMapping?.length? customerColumnsMapping?.filter((c: any) => !c?.name)?.map((c: any) => c.name) : columns
|
|
427
429
|
|
|
428
|
-
|
|
429
430
|
// 处理业务参数
|
|
430
431
|
let otherParams={}
|
|
431
432
|
if(isBrandAuth){
|
|
@@ -436,7 +437,7 @@ class DataImport extends React.Component {
|
|
|
436
437
|
.post(validDataUrl, {
|
|
437
438
|
...otherParams,
|
|
438
439
|
...validDataParams,
|
|
439
|
-
columns:
|
|
440
|
+
columns: resultColumns,
|
|
440
441
|
data: resultData,
|
|
441
442
|
checkStockNum: isCheckStockNum
|
|
442
443
|
})
|
|
@@ -455,8 +456,8 @@ class DataImport extends React.Component {
|
|
|
455
456
|
sheetData.map((item, index) => {
|
|
456
457
|
if (!res[index]) return item;
|
|
457
458
|
|
|
458
|
-
const changeVMIndex =
|
|
459
|
-
if(
|
|
459
|
+
const changeVMIndex = resultColumns?.findIndex(i => i === 'skuCode');
|
|
460
|
+
if(resultColumns?.find(i => i === 'skuCode') && item[changeVMIndex].v !== res[index].skuCode) {
|
|
460
461
|
item[changeVMIndex].v = res[index].skuCode;
|
|
461
462
|
item[changeVMIndex].m = res[index].skuCode;
|
|
462
463
|
}
|
|
@@ -421,10 +421,11 @@ class DataValidation extends React.Component {
|
|
|
421
421
|
};
|
|
422
422
|
|
|
423
423
|
resetData = () => {
|
|
424
|
-
const { validDataUrl, validDataParams, updateData, columns, isBrandAuth, isCheckStockNum = true } = this.props;
|
|
424
|
+
const { validDataUrl, validDataParams, updateData, columns, isBrandAuth, isCheckStockNum = true, customerColumnsMapping } = this.props;
|
|
425
425
|
const resultData = this.getData().filter(d => {
|
|
426
426
|
return _.compact(Object.values(d)).length
|
|
427
427
|
})
|
|
428
|
+
const resultColumns = customerColumnsMapping?.length? customerColumnsMapping?.filter((c: any) => !c?.name)?.map((c: any) => c.name) : columns
|
|
428
429
|
|
|
429
430
|
// 处理业务参数
|
|
430
431
|
let otherParams={}
|
|
@@ -436,7 +437,7 @@ class DataValidation extends React.Component {
|
|
|
436
437
|
.post(validDataUrl, {
|
|
437
438
|
...otherParams,
|
|
438
439
|
...validDataParams,
|
|
439
|
-
columns:
|
|
440
|
+
columns: resultColumns,
|
|
440
441
|
data: resultData,
|
|
441
442
|
checkStockNum: isCheckStockNum
|
|
442
443
|
})
|
|
@@ -455,8 +456,8 @@ class DataValidation extends React.Component {
|
|
|
455
456
|
sheetData.map((item, index) => {
|
|
456
457
|
if (!res[index]) return item;
|
|
457
458
|
|
|
458
|
-
const changeVMIndex =
|
|
459
|
-
if(
|
|
459
|
+
const changeVMIndex = resultColumns?.findIndex(i => i === 'skuCode');
|
|
460
|
+
if(resultColumns?.find(i => i === 'skuCode') && item[changeVMIndex].v !== res[index].skuCode) {
|
|
460
461
|
item[changeVMIndex].v = res[index].skuCode;
|
|
461
462
|
item[changeVMIndex].m = res[index].skuCode;
|
|
462
463
|
}
|
|
@@ -776,18 +776,32 @@ const SearchSelect = forwardRef((props: any, ref: any) => {
|
|
|
776
776
|
}
|
|
777
777
|
};
|
|
778
778
|
|
|
779
|
+
const getShowLabelTextStr = (kongValue): string => {
|
|
780
|
+
if (selectMode) {
|
|
781
|
+
return value?.map(item => item.label || item.text || '')?.join(',') || kongValue;
|
|
782
|
+
}
|
|
783
|
+
return (value?.label || value?.text || kongValue) as string;
|
|
784
|
+
};
|
|
779
785
|
const getSelectValueText = (v: any) => {
|
|
780
786
|
return (items || []).filter(item => item.value === v)?.[0]?.text || v || '';
|
|
781
787
|
}
|
|
788
|
+
const getShowValueStr = (kongValue): string => {
|
|
789
|
+
if (selectMode) {
|
|
790
|
+
return value?.map(item => getSelectValueText(item))?.join(',') || kongValue;
|
|
791
|
+
}
|
|
792
|
+
return (getSelectValueText(value) || kongValue) as string;
|
|
793
|
+
}
|
|
782
794
|
const getShowStr = () => {
|
|
795
|
+
const kongValue = '无'
|
|
783
796
|
// 先判断labelInValue与否,labelInValue可以直接去value中获取字段名称,否则去下拉框数据里面去拿;
|
|
784
797
|
// 再判断是单选还是多选,数据类型不同取值方式也不同
|
|
785
|
-
if(labelInValue) {
|
|
786
|
-
return
|
|
798
|
+
if (labelInValue) {
|
|
799
|
+
return getShowLabelTextStr(kongValue);
|
|
787
800
|
}
|
|
788
|
-
return
|
|
801
|
+
return getShowValueStr(kongValue);
|
|
789
802
|
}
|
|
790
803
|
|
|
804
|
+
const isShouldShowStr = props.disabled && ctx
|
|
791
805
|
return (
|
|
792
806
|
<div className={'search_select'}>
|
|
793
807
|
{fieldComponent ? (
|
|
@@ -800,7 +814,7 @@ const SearchSelect = forwardRef((props: any, ref: any) => {
|
|
|
800
814
|
{fieldComponent}
|
|
801
815
|
</div>
|
|
802
816
|
) : (
|
|
803
|
-
|
|
817
|
+
isShouldShowStr ?
|
|
804
818
|
(<div title={getShowStr()} style={{overflow:'hidden',textOverflow:'ellipsis',whiteSpace:'nowrap'}} className={'search_select_show'}>
|
|
805
819
|
{getShowStr()}
|
|
806
820
|
</div>) :
|
|
@@ -174,31 +174,49 @@ const TreeSearchSelect = (props: any) => {
|
|
|
174
174
|
)
|
|
175
175
|
}
|
|
176
176
|
|
|
177
|
+
const getShowStr = () => {
|
|
178
|
+
const isMultiple = multiple || treeCheckable
|
|
179
|
+
const kongValue = '无';
|
|
180
|
+
const parallelTreeData = parallelData(treeData,[])
|
|
181
|
+
const currentItem = getSelectItem(parallelTreeData,value); // 得到选中的数据项
|
|
182
|
+
if(isMultiple) {
|
|
183
|
+
return currentItem?.map((i: any) => i?.['title']).join(',') || kongValue
|
|
184
|
+
}
|
|
185
|
+
return valueName || currentItem?.['title'] || kongValue
|
|
186
|
+
}
|
|
187
|
+
|
|
188
|
+
const isShouldShowStr = (disabled || mode==='view' || ctx?.mode === 'view') && ctx
|
|
177
189
|
return (
|
|
178
190
|
<div className={'tree_search_select'}>
|
|
179
|
-
|
|
180
|
-
{
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
191
|
+
{isShouldShowStr ? (
|
|
192
|
+
<div title={getShowStr()} style={{overflow:'hidden',textOverflow:'ellipsis',whiteSpace:'nowrap'}} className={'search_select_show'}>
|
|
193
|
+
{getShowStr()}
|
|
194
|
+
</div>
|
|
195
|
+
): (
|
|
196
|
+
<TreeSelect
|
|
197
|
+
{...restProps}
|
|
198
|
+
treeCheckable={treeCheckable}
|
|
199
|
+
maxTagCount={maxTagCount}
|
|
200
|
+
showSearch={showSearch}
|
|
201
|
+
style={style}
|
|
202
|
+
value={value}
|
|
203
|
+
dropdownStyle={{ maxHeight: 400, maxWidth: 100, overflow: 'auto' }}
|
|
204
|
+
treeData={treeData}
|
|
205
|
+
placeholder={placeholder}
|
|
206
|
+
allowClear={allowClear}
|
|
207
|
+
labelInValue={labelInValue}
|
|
208
|
+
showArrow={showArrow}
|
|
209
|
+
showCheckedStrategy={showCheckedStrategy}
|
|
210
|
+
treeNodeFilterProp={'title'}
|
|
211
|
+
treeDefaultExpandAll
|
|
212
|
+
multiple={multiple} // 支持多选(当设置 treeCheckable 时自动变为 true)
|
|
213
|
+
maxTagPlaceholder={maxTagPlaceholder}
|
|
214
|
+
onChange={handleChange}
|
|
215
|
+
disabled={disabled || mode==='view' || ctx?.mode === 'view'}
|
|
216
|
+
getPopupContainer={(triggerNode) => (getPopupContainer && getPopupContainer(triggerNode)) || document.body}
|
|
217
|
+
>
|
|
218
|
+
</TreeSelect>
|
|
219
|
+
)}
|
|
202
220
|
</div>
|
|
203
221
|
);
|
|
204
222
|
};
|