@bit-sun/business-component 2.0.33 → 2.0.34
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
CHANGED
|
@@ -4827,7 +4827,13 @@ var InputElement = function InputElement(_ref) {
|
|
|
4827
4827
|
};
|
|
4828
4828
|
|
|
4829
4829
|
var BillEntry = function BillEntry(_ref3) {
|
|
4830
|
-
var onSaveCallback = _ref3.onSaveCallback
|
|
4830
|
+
var onSaveCallback = _ref3.onSaveCallback,
|
|
4831
|
+
_ref3$validDataUrl = _ref3.validDataUrl,
|
|
4832
|
+
validDataUrl = _ref3$validDataUrl === void 0 ? "/items/sku/import/check" : _ref3$validDataUrl,
|
|
4833
|
+
_ref3$isBrandAuth = _ref3.isBrandAuth,
|
|
4834
|
+
isBrandAuth = _ref3$isBrandAuth === void 0 ? true : _ref3$isBrandAuth,
|
|
4835
|
+
_ref3$isCheckStockNum = _ref3.isCheckStockNum,
|
|
4836
|
+
isCheckStockNum = _ref3$isCheckStockNum === void 0 ? true : _ref3$isCheckStockNum;
|
|
4831
4837
|
var columns = [{
|
|
4832
4838
|
title: 'SKU编码',
|
|
4833
4839
|
width: 150,
|
|
@@ -4909,6 +4915,11 @@ var BillEntry = function BillEntry(_ref3) {
|
|
|
4909
4915
|
|
|
4910
4916
|
var tableRef = useRef(null);
|
|
4911
4917
|
|
|
4918
|
+
var _useState13 = useState(false),
|
|
4919
|
+
_useState14 = _slicedToArray(_useState13, 2),
|
|
4920
|
+
loading = _useState14[0],
|
|
4921
|
+
setLoading = _useState14[1];
|
|
4922
|
+
|
|
4912
4923
|
var callSelectItem = function callSelectItem(index, item) {
|
|
4913
4924
|
var _tableRef$current2;
|
|
4914
4925
|
|
|
@@ -4983,6 +4994,136 @@ var BillEntry = function BillEntry(_ref3) {
|
|
|
4983
4994
|
}
|
|
4984
4995
|
}
|
|
4985
4996
|
}]);
|
|
4997
|
+
|
|
4998
|
+
var isSkuCanEntry = function isSkuCanEntry(resultData) {
|
|
4999
|
+
// 处理业务参数
|
|
5000
|
+
var otherParams = {};
|
|
5001
|
+
|
|
5002
|
+
if (isBrandAuth) {
|
|
5003
|
+
otherParams = {
|
|
5004
|
+
brandAuth: 'ctl-withAuth'
|
|
5005
|
+
};
|
|
5006
|
+
}
|
|
5007
|
+
|
|
5008
|
+
return axios.post(validDataUrl, _objectSpread2(_objectSpread2({}, otherParams), {}, {
|
|
5009
|
+
columns: ["skuCode", "quantity"],
|
|
5010
|
+
data: resultData.map(function (i) {
|
|
5011
|
+
return {
|
|
5012
|
+
skuCode: i.skuCode,
|
|
5013
|
+
quality: i.count
|
|
5014
|
+
};
|
|
5015
|
+
}),
|
|
5016
|
+
checkStockNum: isCheckStockNum
|
|
5017
|
+
})).then(function (result) {
|
|
5018
|
+
result = result.data;
|
|
5019
|
+
|
|
5020
|
+
if (result.status !== '0') {
|
|
5021
|
+
message.error(result.msg);
|
|
5022
|
+
return {
|
|
5023
|
+
flag: false
|
|
5024
|
+
};
|
|
5025
|
+
} else {
|
|
5026
|
+
var res = result.data || [];
|
|
5027
|
+
var errorList = res.filter(function (i) {
|
|
5028
|
+
return !i.flag;
|
|
5029
|
+
});
|
|
5030
|
+
return {
|
|
5031
|
+
flag: !(errorList === null || errorList === void 0 ? void 0 : errorList.length),
|
|
5032
|
+
errorList: errorList
|
|
5033
|
+
};
|
|
5034
|
+
}
|
|
5035
|
+
}).catch(function () {
|
|
5036
|
+
return {
|
|
5037
|
+
flag: false
|
|
5038
|
+
};
|
|
5039
|
+
});
|
|
5040
|
+
};
|
|
5041
|
+
|
|
5042
|
+
var handleSubmit = /*#__PURE__*/function () {
|
|
5043
|
+
var _ref4 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
|
|
5044
|
+
var canEntryObject, _canEntryObject$error, messageInfo;
|
|
5045
|
+
|
|
5046
|
+
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
|
5047
|
+
while (1) {
|
|
5048
|
+
switch (_context.prev = _context.next) {
|
|
5049
|
+
case 0:
|
|
5050
|
+
if (data === null || data === void 0 ? void 0 : data.length) {
|
|
5051
|
+
_context.next = 3;
|
|
5052
|
+
break;
|
|
5053
|
+
}
|
|
5054
|
+
|
|
5055
|
+
message.warning('至少录入一条数据');
|
|
5056
|
+
return _context.abrupt("return");
|
|
5057
|
+
|
|
5058
|
+
case 3:
|
|
5059
|
+
if (data === null || data === void 0 ? void 0 : data.every(function (d) {
|
|
5060
|
+
return d.skuCode && d.name;
|
|
5061
|
+
})) {
|
|
5062
|
+
_context.next = 6;
|
|
5063
|
+
break;
|
|
5064
|
+
}
|
|
5065
|
+
|
|
5066
|
+
message.warning('请选择商品!');
|
|
5067
|
+
return _context.abrupt("return");
|
|
5068
|
+
|
|
5069
|
+
case 6:
|
|
5070
|
+
if (data === null || data === void 0 ? void 0 : data.every(function (d) {
|
|
5071
|
+
return d.count;
|
|
5072
|
+
})) {
|
|
5073
|
+
_context.next = 9;
|
|
5074
|
+
break;
|
|
5075
|
+
}
|
|
5076
|
+
|
|
5077
|
+
message.warning('请填写商品数量!');
|
|
5078
|
+
return _context.abrupt("return");
|
|
5079
|
+
|
|
5080
|
+
case 9:
|
|
5081
|
+
_context.next = 11;
|
|
5082
|
+
return isSkuCanEntry(data);
|
|
5083
|
+
|
|
5084
|
+
case 11:
|
|
5085
|
+
canEntryObject = _context.sent;
|
|
5086
|
+
|
|
5087
|
+
if (!((canEntryObject === null || canEntryObject === void 0 ? void 0 : canEntryObject.flag) === false)) {
|
|
5088
|
+
_context.next = 16;
|
|
5089
|
+
break;
|
|
5090
|
+
}
|
|
5091
|
+
|
|
5092
|
+
messageInfo = (canEntryObject === null || canEntryObject === void 0 ? void 0 : (_canEntryObject$error = canEntryObject.errorList) === null || _canEntryObject$error === void 0 ? void 0 : _canEntryObject$error.length) && (canEntryObject === null || canEntryObject === void 0 ? void 0 : canEntryObject.errorList.map(function (i) {
|
|
5093
|
+
return /*#__PURE__*/React.createElement("div", null, i.skuCode, "\u6821\u9A8C\u5931\u8D25\uFF1A", i.checkResults);
|
|
5094
|
+
}));
|
|
5095
|
+
messageInfo && message.warning({
|
|
5096
|
+
content: messageInfo,
|
|
5097
|
+
duration: 6
|
|
5098
|
+
});
|
|
5099
|
+
return _context.abrupt("return");
|
|
5100
|
+
|
|
5101
|
+
case 16:
|
|
5102
|
+
setLoading(true);
|
|
5103
|
+
onSaveCallback(data).then(function (res) {
|
|
5104
|
+
{
|
|
5105
|
+
message.success('保存成功');
|
|
5106
|
+
}
|
|
5107
|
+
|
|
5108
|
+
setLoading(false);
|
|
5109
|
+
}).catch(function (Error) {
|
|
5110
|
+
message.error(Error);
|
|
5111
|
+
setLoading(false);
|
|
5112
|
+
});
|
|
5113
|
+
|
|
5114
|
+
case 18:
|
|
5115
|
+
case "end":
|
|
5116
|
+
return _context.stop();
|
|
5117
|
+
}
|
|
5118
|
+
}
|
|
5119
|
+
}, _callee);
|
|
5120
|
+
}));
|
|
5121
|
+
|
|
5122
|
+
return function handleSubmit() {
|
|
5123
|
+
return _ref4.apply(this, arguments);
|
|
5124
|
+
};
|
|
5125
|
+
}();
|
|
5126
|
+
|
|
4986
5127
|
return /*#__PURE__*/React.createElement("div", {
|
|
4987
5128
|
className: 'add_select'
|
|
4988
5129
|
}, /*#__PURE__*/React.createElement("div", {
|
|
@@ -4992,8 +5133,9 @@ var BillEntry = function BillEntry(_ref3) {
|
|
|
4992
5133
|
}, /*#__PURE__*/React.createElement("div", null, "\u5FEB\u901F\u5F55\u5165"), /*#__PURE__*/React.createElement(Button, {
|
|
4993
5134
|
type: "primary",
|
|
4994
5135
|
onClick: function onClick() {
|
|
4995
|
-
|
|
4996
|
-
}
|
|
5136
|
+
return handleSubmit();
|
|
5137
|
+
},
|
|
5138
|
+
loading: loading
|
|
4997
5139
|
}, "\u63D0\u4EA4")), /*#__PURE__*/React.createElement("span", null, /*#__PURE__*/React.createElement("span", null, "*"), " \xA0\u5FEB\u6377\u952E\uFF1A\u3010Tab\u3011-\u8DF3\u683C\u5207\u6362\uFF1B\u3010Shift+\u2190\u3001\u2192\u3011-\u5F53\u524D\u884C\u5DE6\u3001\u53F3\u79FB\u52A8\uFF1B\u3010 \u2191\u3001\u2193\u3011-\u5F53\u524D\u5217\u4E0A\u3001\u4E0B\u79FB\u52A8\uFF1B\u3010ctrl+Delete\u3011-\u5220\u9664\u5F53\u524D\u884C\uFF1B")), /*#__PURE__*/React.createElement("div", {
|
|
4998
5140
|
className: 'add_select_wrapper_select add_select_wrapper_select_quick'
|
|
4999
5141
|
}, /*#__PURE__*/React.createElement(Table, _defineProperty({
|
package/dist/index.js
CHANGED
|
@@ -4837,7 +4837,13 @@ var InputElement = function InputElement(_ref) {
|
|
|
4837
4837
|
};
|
|
4838
4838
|
|
|
4839
4839
|
var BillEntry = function BillEntry(_ref3) {
|
|
4840
|
-
var onSaveCallback = _ref3.onSaveCallback
|
|
4840
|
+
var onSaveCallback = _ref3.onSaveCallback,
|
|
4841
|
+
_ref3$validDataUrl = _ref3.validDataUrl,
|
|
4842
|
+
validDataUrl = _ref3$validDataUrl === void 0 ? "/items/sku/import/check" : _ref3$validDataUrl,
|
|
4843
|
+
_ref3$isBrandAuth = _ref3.isBrandAuth,
|
|
4844
|
+
isBrandAuth = _ref3$isBrandAuth === void 0 ? true : _ref3$isBrandAuth,
|
|
4845
|
+
_ref3$isCheckStockNum = _ref3.isCheckStockNum,
|
|
4846
|
+
isCheckStockNum = _ref3$isCheckStockNum === void 0 ? true : _ref3$isCheckStockNum;
|
|
4841
4847
|
var columns = [{
|
|
4842
4848
|
title: 'SKU编码',
|
|
4843
4849
|
width: 150,
|
|
@@ -4919,6 +4925,11 @@ var BillEntry = function BillEntry(_ref3) {
|
|
|
4919
4925
|
|
|
4920
4926
|
var tableRef = React.useRef(null);
|
|
4921
4927
|
|
|
4928
|
+
var _useState13 = React.useState(false),
|
|
4929
|
+
_useState14 = _slicedToArray(_useState13, 2),
|
|
4930
|
+
loading = _useState14[0],
|
|
4931
|
+
setLoading = _useState14[1];
|
|
4932
|
+
|
|
4922
4933
|
var callSelectItem = function callSelectItem(index, item) {
|
|
4923
4934
|
var _tableRef$current2;
|
|
4924
4935
|
|
|
@@ -4993,6 +5004,136 @@ var BillEntry = function BillEntry(_ref3) {
|
|
|
4993
5004
|
}
|
|
4994
5005
|
}
|
|
4995
5006
|
}]);
|
|
5007
|
+
|
|
5008
|
+
var isSkuCanEntry = function isSkuCanEntry(resultData) {
|
|
5009
|
+
// 处理业务参数
|
|
5010
|
+
var otherParams = {};
|
|
5011
|
+
|
|
5012
|
+
if (isBrandAuth) {
|
|
5013
|
+
otherParams = {
|
|
5014
|
+
brandAuth: 'ctl-withAuth'
|
|
5015
|
+
};
|
|
5016
|
+
}
|
|
5017
|
+
|
|
5018
|
+
return axios__default['default'].post(validDataUrl, _objectSpread2(_objectSpread2({}, otherParams), {}, {
|
|
5019
|
+
columns: ["skuCode", "quantity"],
|
|
5020
|
+
data: resultData.map(function (i) {
|
|
5021
|
+
return {
|
|
5022
|
+
skuCode: i.skuCode,
|
|
5023
|
+
quality: i.count
|
|
5024
|
+
};
|
|
5025
|
+
}),
|
|
5026
|
+
checkStockNum: isCheckStockNum
|
|
5027
|
+
})).then(function (result) {
|
|
5028
|
+
result = result.data;
|
|
5029
|
+
|
|
5030
|
+
if (result.status !== '0') {
|
|
5031
|
+
antd.message.error(result.msg);
|
|
5032
|
+
return {
|
|
5033
|
+
flag: false
|
|
5034
|
+
};
|
|
5035
|
+
} else {
|
|
5036
|
+
var res = result.data || [];
|
|
5037
|
+
var errorList = res.filter(function (i) {
|
|
5038
|
+
return !i.flag;
|
|
5039
|
+
});
|
|
5040
|
+
return {
|
|
5041
|
+
flag: !(errorList === null || errorList === void 0 ? void 0 : errorList.length),
|
|
5042
|
+
errorList: errorList
|
|
5043
|
+
};
|
|
5044
|
+
}
|
|
5045
|
+
}).catch(function () {
|
|
5046
|
+
return {
|
|
5047
|
+
flag: false
|
|
5048
|
+
};
|
|
5049
|
+
});
|
|
5050
|
+
};
|
|
5051
|
+
|
|
5052
|
+
var handleSubmit = /*#__PURE__*/function () {
|
|
5053
|
+
var _ref4 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
|
|
5054
|
+
var canEntryObject, _canEntryObject$error, messageInfo;
|
|
5055
|
+
|
|
5056
|
+
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
|
5057
|
+
while (1) {
|
|
5058
|
+
switch (_context.prev = _context.next) {
|
|
5059
|
+
case 0:
|
|
5060
|
+
if (data === null || data === void 0 ? void 0 : data.length) {
|
|
5061
|
+
_context.next = 3;
|
|
5062
|
+
break;
|
|
5063
|
+
}
|
|
5064
|
+
|
|
5065
|
+
antd.message.warning('至少录入一条数据');
|
|
5066
|
+
return _context.abrupt("return");
|
|
5067
|
+
|
|
5068
|
+
case 3:
|
|
5069
|
+
if (data === null || data === void 0 ? void 0 : data.every(function (d) {
|
|
5070
|
+
return d.skuCode && d.name;
|
|
5071
|
+
})) {
|
|
5072
|
+
_context.next = 6;
|
|
5073
|
+
break;
|
|
5074
|
+
}
|
|
5075
|
+
|
|
5076
|
+
antd.message.warning('请选择商品!');
|
|
5077
|
+
return _context.abrupt("return");
|
|
5078
|
+
|
|
5079
|
+
case 6:
|
|
5080
|
+
if (data === null || data === void 0 ? void 0 : data.every(function (d) {
|
|
5081
|
+
return d.count;
|
|
5082
|
+
})) {
|
|
5083
|
+
_context.next = 9;
|
|
5084
|
+
break;
|
|
5085
|
+
}
|
|
5086
|
+
|
|
5087
|
+
antd.message.warning('请填写商品数量!');
|
|
5088
|
+
return _context.abrupt("return");
|
|
5089
|
+
|
|
5090
|
+
case 9:
|
|
5091
|
+
_context.next = 11;
|
|
5092
|
+
return isSkuCanEntry(data);
|
|
5093
|
+
|
|
5094
|
+
case 11:
|
|
5095
|
+
canEntryObject = _context.sent;
|
|
5096
|
+
|
|
5097
|
+
if (!((canEntryObject === null || canEntryObject === void 0 ? void 0 : canEntryObject.flag) === false)) {
|
|
5098
|
+
_context.next = 16;
|
|
5099
|
+
break;
|
|
5100
|
+
}
|
|
5101
|
+
|
|
5102
|
+
messageInfo = (canEntryObject === null || canEntryObject === void 0 ? void 0 : (_canEntryObject$error = canEntryObject.errorList) === null || _canEntryObject$error === void 0 ? void 0 : _canEntryObject$error.length) && (canEntryObject === null || canEntryObject === void 0 ? void 0 : canEntryObject.errorList.map(function (i) {
|
|
5103
|
+
return /*#__PURE__*/React__default['default'].createElement("div", null, i.skuCode, "\u6821\u9A8C\u5931\u8D25\uFF1A", i.checkResults);
|
|
5104
|
+
}));
|
|
5105
|
+
messageInfo && antd.message.warning({
|
|
5106
|
+
content: messageInfo,
|
|
5107
|
+
duration: 6
|
|
5108
|
+
});
|
|
5109
|
+
return _context.abrupt("return");
|
|
5110
|
+
|
|
5111
|
+
case 16:
|
|
5112
|
+
setLoading(true);
|
|
5113
|
+
onSaveCallback(data).then(function (res) {
|
|
5114
|
+
{
|
|
5115
|
+
antd.message.success('保存成功');
|
|
5116
|
+
}
|
|
5117
|
+
|
|
5118
|
+
setLoading(false);
|
|
5119
|
+
}).catch(function (Error) {
|
|
5120
|
+
antd.message.error(Error);
|
|
5121
|
+
setLoading(false);
|
|
5122
|
+
});
|
|
5123
|
+
|
|
5124
|
+
case 18:
|
|
5125
|
+
case "end":
|
|
5126
|
+
return _context.stop();
|
|
5127
|
+
}
|
|
5128
|
+
}
|
|
5129
|
+
}, _callee);
|
|
5130
|
+
}));
|
|
5131
|
+
|
|
5132
|
+
return function handleSubmit() {
|
|
5133
|
+
return _ref4.apply(this, arguments);
|
|
5134
|
+
};
|
|
5135
|
+
}();
|
|
5136
|
+
|
|
4996
5137
|
return /*#__PURE__*/React__default['default'].createElement("div", {
|
|
4997
5138
|
className: 'add_select'
|
|
4998
5139
|
}, /*#__PURE__*/React__default['default'].createElement("div", {
|
|
@@ -5002,8 +5143,9 @@ var BillEntry = function BillEntry(_ref3) {
|
|
|
5002
5143
|
}, /*#__PURE__*/React__default['default'].createElement("div", null, "\u5FEB\u901F\u5F55\u5165"), /*#__PURE__*/React__default['default'].createElement(antd.Button, {
|
|
5003
5144
|
type: "primary",
|
|
5004
5145
|
onClick: function onClick() {
|
|
5005
|
-
|
|
5006
|
-
}
|
|
5146
|
+
return handleSubmit();
|
|
5147
|
+
},
|
|
5148
|
+
loading: loading
|
|
5007
5149
|
}, "\u63D0\u4EA4")), /*#__PURE__*/React__default['default'].createElement("span", null, /*#__PURE__*/React__default['default'].createElement("span", null, "*"), " \xA0\u5FEB\u6377\u952E\uFF1A\u3010Tab\u3011-\u8DF3\u683C\u5207\u6362\uFF1B\u3010Shift+\u2190\u3001\u2192\u3011-\u5F53\u524D\u884C\u5DE6\u3001\u53F3\u79FB\u52A8\uFF1B\u3010 \u2191\u3001\u2193\u3011-\u5F53\u524D\u5217\u4E0A\u3001\u4E0B\u79FB\u52A8\uFF1B\u3010ctrl+Delete\u3011-\u5220\u9664\u5F53\u524D\u884C\uFF1B")), /*#__PURE__*/React__default['default'].createElement("div", {
|
|
5008
5150
|
className: 'add_select_wrapper_select add_select_wrapper_select_quick'
|
|
5009
5151
|
}, /*#__PURE__*/React__default['default'].createElement(antd.Table, _defineProperty({
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bit-sun/business-component",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.34",
|
|
4
4
|
"scripts": {
|
|
5
5
|
"start": "dumi dev",
|
|
6
6
|
"docs:build": "dumi build",
|
|
@@ -28,7 +28,8 @@
|
|
|
28
28
|
},
|
|
29
29
|
"peerDependencies": {
|
|
30
30
|
"bssula": "^2.0.0",
|
|
31
|
-
"umi-plugin-bssula": "1.0.13"
|
|
31
|
+
"umi-plugin-bssula": "1.0.13",
|
|
32
|
+
"umi": "^3.5.20"
|
|
32
33
|
},
|
|
33
34
|
"dependencies": {
|
|
34
35
|
"@ant-design/icons": "^4.7.0",
|
|
@@ -41,6 +42,8 @@
|
|
|
41
42
|
"bssula": "^2.0.0",
|
|
42
43
|
"classnames": "^2.3.1",
|
|
43
44
|
"lodash": "^4.17.21",
|
|
45
|
+
"memoize-one": "^6.0.0",
|
|
46
|
+
"path-to-regexp": "^6.2.1",
|
|
44
47
|
"querystring": "^0.2.1",
|
|
45
48
|
"react": "^16.12.0",
|
|
46
49
|
"react-beautiful-dnd": "10.0.0",
|
|
@@ -390,7 +390,7 @@ const InputElement = ({
|
|
|
390
390
|
)
|
|
391
391
|
}
|
|
392
392
|
|
|
393
|
-
const BillEntry: React.FC = ({ onSaveCallback }) => {
|
|
393
|
+
const BillEntry: React.FC = ({ onSaveCallback, validDataUrl="/items/sku/import/check", isBrandAuth=true, isCheckStockNum=true }) => {
|
|
394
394
|
const columns = [
|
|
395
395
|
{
|
|
396
396
|
title: 'SKU编码',
|
|
@@ -464,6 +464,8 @@ const BillEntry: React.FC = ({ onSaveCallback }) => {
|
|
|
464
464
|
const [data, setData] = useState([{ hovered: false }]);
|
|
465
465
|
const tableRef = useRef(null)
|
|
466
466
|
|
|
467
|
+
const [loading, setLoading] = useState(false);
|
|
468
|
+
|
|
467
469
|
const callSelectItem = (index, item) => {
|
|
468
470
|
if (item) {
|
|
469
471
|
let newData = [].concat(data)
|
|
@@ -516,13 +518,71 @@ const BillEntry: React.FC = ({ onSaveCallback }) => {
|
|
|
516
518
|
}
|
|
517
519
|
}]
|
|
518
520
|
|
|
521
|
+
const isSkuCanEntry = (resultData) => {
|
|
522
|
+
// 处理业务参数
|
|
523
|
+
let otherParams={}
|
|
524
|
+
if(isBrandAuth){
|
|
525
|
+
otherParams = { brandAuth: 'ctl-withAuth' }
|
|
526
|
+
}
|
|
527
|
+
return axios
|
|
528
|
+
.post(validDataUrl, {
|
|
529
|
+
...otherParams,
|
|
530
|
+
columns: ["skuCode", "quantity"],
|
|
531
|
+
data: resultData.map((i:any) => ({ skuCode: i.skuCode, quality: i.count })),
|
|
532
|
+
checkStockNum: isCheckStockNum,
|
|
533
|
+
})
|
|
534
|
+
.then((result) => {
|
|
535
|
+
result = result.data;
|
|
536
|
+
if (result.status !== '0') {
|
|
537
|
+
message.error(result.msg);
|
|
538
|
+
return { flag: false }
|
|
539
|
+
} else {
|
|
540
|
+
let res = result.data || [];
|
|
541
|
+
const errorList = res.filter((i: any) => !i.flag);
|
|
542
|
+
return { flag: !errorList?.length, errorList }
|
|
543
|
+
}
|
|
544
|
+
}).catch(() => {
|
|
545
|
+
return { flag:false }
|
|
546
|
+
})
|
|
547
|
+
}
|
|
548
|
+
|
|
549
|
+
const handleSubmit = async () => {
|
|
550
|
+
// 加校验逻辑
|
|
551
|
+
if (!data?.length) {
|
|
552
|
+
message.warning('至少录入一条数据');
|
|
553
|
+
return;
|
|
554
|
+
}
|
|
555
|
+
if (!data?.every((d: any) => d.skuCode && d.name)) {
|
|
556
|
+
message.warning('请选择商品!');
|
|
557
|
+
return;
|
|
558
|
+
}
|
|
559
|
+
if (!data?.every((d: any) => d.count)) {
|
|
560
|
+
message.warning('请填写商品数量!');
|
|
561
|
+
return;
|
|
562
|
+
}
|
|
563
|
+
const canEntryObject = await isSkuCanEntry(data)
|
|
564
|
+
if(canEntryObject?.flag === false) {
|
|
565
|
+
const messageInfo = canEntryObject?.errorList?.length && canEntryObject?.errorList.map((i: any) => <div>{i.skuCode}校验失败:{i.checkResults}</div>)
|
|
566
|
+
messageInfo && message.warning({ content: messageInfo, duration: 6 });
|
|
567
|
+
return;
|
|
568
|
+
}
|
|
569
|
+
|
|
570
|
+
setLoading(true)
|
|
571
|
+
onSaveCallback(data).then(res => {
|
|
572
|
+
if(true) {
|
|
573
|
+
message.success('保存成功')
|
|
574
|
+
}
|
|
575
|
+
setLoading(false)
|
|
576
|
+
}).catch(Error => {
|
|
577
|
+
message.error(Error);
|
|
578
|
+
setLoading(false)
|
|
579
|
+
})
|
|
580
|
+
}
|
|
519
581
|
|
|
520
582
|
return (
|
|
521
583
|
<div className='add_select'>
|
|
522
584
|
<div className='add_select_quick_header'>
|
|
523
|
-
<div className='add_select_quick_header_title'><div>快速录入</div><Button type="primary" onClick={() => {
|
|
524
|
-
onSaveCallback(data)
|
|
525
|
-
}}>提交</Button></div>
|
|
585
|
+
<div className='add_select_quick_header_title'><div>快速录入</div><Button type="primary" onClick={() => handleSubmit()} loading={loading}>提交</Button></div>
|
|
526
586
|
<span><span>*</span> 快捷键:【Tab】-跳格切换;【Shift+←、→】-当前行左、右移动;【 ↑、↓】-当前列上、下移动;【ctrl+Delete】-删除当前行;</span>
|
|
527
587
|
</div>
|
|
528
588
|
<div className={'add_select_wrapper_select add_select_wrapper_select_quick'}>
|