diff --git a/12069.1ccd3c5d.async.js b/12069.eb4cffb6.async.js
similarity index 92%
rename from 12069.1ccd3c5d.async.js
rename to 12069.eb4cffb6.async.js
index 35bb2f9bea..35e3613375 100644
--- a/12069.1ccd3c5d.async.js
+++ b/12069.eb4cffb6.async.js
@@ -726,14 +726,14 @@ var AddOrEditModal = function AddOrEditModal(_ref) {
description: '',
percent: 0,
status: 'uploading'
- };
- OSSUploadFiles(gather, {
- login: data === null || data === void 0 ? void 0 : data.login,
- container_type: 'DataSet',
- container_id: null,
- description: '',
- realFileName: true
- });
+ }; // OSSUploadFiles(gather, {
+ // login: data?.login,
+ // container_type: 'DataSet',
+ // container_id: null,
+ // description: '',
+ // realFileName: true
+ // })
+ LocalUploadFiles(gather);
setFileList(function (p) {
return [].concat(toConsumableArray_default()(p), [gather]);
});
@@ -752,35 +752,29 @@ var AddOrEditModal = function AddOrEditModal(_ref) {
};
var handleRemove = /*#__PURE__*/function () {
var _ref4 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee3(file) {
- var _currentFile$response;
- var currentFile, _currentFile$response2, _currentFile$client;
+ var currentFile, _currentFile$client;
return regeneratorRuntime_default()().wrap(function _callee3$(_context3) {
while (1) switch (_context3.prev = _context3.next) {
case 0:
currentFile = fileListRef.current.find(function (item) {
return item.name === file.name;
- });
- if (!(currentFile !== null && currentFile !== void 0 && (_currentFile$response = currentFile.response) !== null && _currentFile$response !== void 0 && _currentFile$response.attachment_id)) {
- _context3.next = 4;
- break;
- }
- _context3.next = 4;
- return (0,fetch/* default */.ZP)('/api/data_sets/single_destroy_files.json', {
- method: "delete",
- body: {
- attachment_id: currentFile === null || currentFile === void 0 || (_currentFile$response2 = currentFile.response) === null || _currentFile$response2 === void 0 ? void 0 : _currentFile$response2.attachment_id
- }
- });
- case 4:
+ }); // if (currentFile?.response?.attachment_id) {
+ // await Fetch('/api/data_sets/single_destroy_files.json', {
+ // method: "delete",
+ // body: {
+ // attachment_id: currentFile?.response?.attachment_id
+ // }
+ // })
+ // }
if (currentFile !== null && currentFile !== void 0 && currentFile.client) {
- currentFile === null || currentFile === void 0 || (_currentFile$client = currentFile.client) === null || _currentFile$client === void 0 || _currentFile$client.cancel();
+ currentFile === null || currentFile === void 0 || (_currentFile$client = currentFile.client) === null || _currentFile$client === void 0 || _currentFile$client.abort();
}
setFileList(function (p) {
return p.filter(function (item) {
return item.name !== file.name;
});
});
- case 6:
+ case 3:
case "end":
return _context3.stop();
}
@@ -795,7 +789,7 @@ var AddOrEditModal = function AddOrEditModal(_ref) {
(_fileListRef$current = fileListRef.current) === null || _fileListRef$current === void 0 || _fileListRef$current.forEach(function (e) {
if (e !== null && e !== void 0 && e.client) {
var _e$client;
- e === null || e === void 0 || (_e$client = e.client) === null || _e$client === void 0 || _e$client.cancel();
+ e === null || e === void 0 || (_e$client = e.client) === null || _e$client === void 0 || _e$client.abort();
}
});
};
@@ -908,6 +902,174 @@ var AddOrEditModal = function AddOrEditModal(_ref) {
return _ref5.apply(this, arguments);
};
}();
+ var LocalUploadFiles = /*#__PURE__*/function () {
+ var _ref6 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee5(gather) {
+ var file, fileSize, name, chunkSize, totalChunks, res, uploadId, chunk_count, client, promises, percent, _loop, i, completed, step, _promises$slice, subTasks, p, result;
+ return regeneratorRuntime_default()().wrap(function _callee5$(_context6) {
+ while (1) switch (_context6.prev = _context6.next) {
+ case 0:
+ file = gather.file;
+ fileSize = file.size;
+ name = file.name;
+ chunkSize = 1024 * 1024 * 2; // 2MB
+ totalChunks = Math.ceil(fileSize / chunkSize);
+ _context6.prev = 5;
+ _context6.next = 8;
+ return (0,fetch/* default */.ZP)("/api/attachments/multipart_breakpoint_upload_start", {
+ method: 'POST',
+ body: {
+ fileName: name,
+ chunkCount: totalChunks,
+ size: file === null || file === void 0 ? void 0 : file.size,
+ lastModified: file === null || file === void 0 ? void 0 : file.lastModified,
+ user_id: data === null || data === void 0 ? void 0 : data.user_id
+ }
+ });
+ case 8:
+ res = _context6.sent;
+ if (!((res === null || res === void 0 ? void 0 : res.status) !== 0)) {
+ _context6.next = 13;
+ break;
+ }
+ setFileList(function (p) {
+ p[p.findIndex(function (item) {
+ return item.name === name;
+ })]['status'] = 'error';
+ return toConsumableArray_default()(p);
+ });
+ message/* default */.ZP.warning("上传失败,请重新尝试");
+ return _context6.abrupt("return");
+ case 13:
+ uploadId = res.upload_id, chunk_count = res.chunk_count;
+ client = new AbortController();
+ promises = [];
+ percent = chunk_count;
+ _loop = /*#__PURE__*/regeneratorRuntime_default()().mark(function _loop() {
+ var start, end, chunk, formData;
+ return regeneratorRuntime_default()().wrap(function _loop$(_context5) {
+ while (1) switch (_context5.prev = _context5.next) {
+ case 0:
+ start = i * chunkSize;
+ end = Math.min(start + chunkSize, fileSize);
+ chunk = file.slice(start, end);
+ formData = new FormData();
+ formData.append('chunk', chunk);
+ formData.append('fileName', name);
+ formData.append('chunkIndex', (i + 1).toString());
+ formData.append('uploadId', uploadId);
+ formData.append('user_id', data === null || data === void 0 ? void 0 : data.user_id);
+ promises.push(function () {
+ return (0,fetch/* default */.ZP)("/api/attachments/multipart_upload", {
+ method: 'POST',
+ body: formData,
+ signal: client.signal
+ }, true).then(function (res) {
+ percent++;
+ var currentProgress = Math.round(percent / totalChunks * 100);
+ console.log("进度", currentProgress);
+ setFileList(function (p) {
+ var i = p.findIndex(function (item) {
+ return item.name === name;
+ });
+ p[i]['client'] = client;
+ p[i]['percent'] = currentProgress;
+ return toConsumableArray_default()(p);
+ });
+ });
+ });
+ case 10:
+ case "end":
+ return _context5.stop();
+ }
+ }, _loop);
+ });
+ i = chunk_count;
+ case 19:
+ if (!(i < totalChunks)) {
+ _context6.next = 24;
+ break;
+ }
+ return _context6.delegateYield(_loop(), "t0", 21);
+ case 21:
+ i++;
+ _context6.next = 19;
+ break;
+ case 24:
+ completed = 0;
+ step = 4;
+ case 26:
+ if (!(completed < promises.length)) {
+ _context6.next = 35;
+ break;
+ }
+ subTasks = (_promises$slice = promises.slice(completed, completed + step)) === null || _promises$slice === void 0 ? void 0 : _promises$slice.map(function (t) {
+ return t();
+ });
+ if (!(subTasks.length > 0)) {
+ _context6.next = 33;
+ break;
+ }
+ _context6.next = 31;
+ return Promise.all(subTasks);
+ case 31:
+ p = _context6.sent;
+ completed += step;
+ case 33:
+ _context6.next = 26;
+ break;
+ case 35:
+ _context6.next = 37;
+ return (0,fetch/* default */.ZP)("/api/attachments/multipart_upload_end", {
+ method: 'POST',
+ body: {
+ fileName: file.name,
+ chunkCount: totalChunks,
+ uploadId: uploadId
+ }
+ });
+ case 37:
+ result = _context6.sent;
+ setFileList(function (p) {
+ var i = p.findIndex(function (item) {
+ return item.name === name;
+ });
+ var status = 'done';
+ if ((result === null || result === void 0 ? void 0 : result.status) === 0) {
+ p[i].response = {
+ attachment_id: result === null || result === void 0 ? void 0 : result.id
+ };
+ } else {
+ message/* default */.ZP.warning(result === null || result === void 0 ? void 0 : result.message);
+ status = 'error';
+ }
+ p[i]['status'] = status;
+ return toConsumableArray_default()(p);
+ });
+ _context6.next = 45;
+ break;
+ case 41:
+ _context6.prev = 41;
+ _context6.t1 = _context6["catch"](5);
+ console.log('接口错误:', _context6.t1);
+ if ((_context6.t1 === null || _context6.t1 === void 0 ? void 0 : _context6.t1.name) !== 'cancel') {
+ setFileList(function (p) {
+ var i = p.findIndex(function (item) {
+ return item.name === name;
+ });
+ p[i]['status'] = 'error';
+ return toConsumableArray_default()(p);
+ });
+ }
+ case 45:
+ case "end":
+ return _context6.stop();
+ }
+ }, _callee5, null, [[5, 41]]);
+ }));
+ return function LocalUploadFiles(_x5) {
+ return _ref6.apply(this, arguments);
+ };
+ }();
var replaceTrim = function replaceTrim(str) {
str = str || '';
str = String(str);
@@ -916,10 +1078,10 @@ var AddOrEditModal = function AddOrEditModal(_ref) {
return str;
};
var handleFinish = /*#__PURE__*/function () {
- var _ref6 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee5() {
+ var _ref7 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee6() {
var value, title, is_public, desc, errorList, attachments, body, res, _res;
- return regeneratorRuntime_default()().wrap(function _callee5$(_context5) {
- while (1) switch (_context5.prev = _context5.next) {
+ return regeneratorRuntime_default()().wrap(function _callee6$(_context7) {
+ while (1) switch (_context7.prev = _context7.next) {
case 0:
value = form.getFieldsValue();
title = value.title, is_public = value.is_public, desc = value.desc;
@@ -943,11 +1105,11 @@ var AddOrEditModal = function AddOrEditModal(_ref) {
});
}
if (!errorList.length) {
- _context5.next = 9;
+ _context7.next = 9;
break;
}
form.setFields(errorList);
- return _context5.abrupt("return");
+ return _context7.abrupt("return");
case 9:
attachments = fileList.map(function (e) {
var _e$response;
@@ -967,26 +1129,26 @@ var AddOrEditModal = function AddOrEditModal(_ref) {
desc: desc
};
if (!dataSetInfo) {
- _context5.next = 18;
+ _context7.next = 18;
break;
}
- _context5.next = 15;
+ _context7.next = 15;
return (0,fetch/* default */.ZP)("/api/data_sets/".concat(dataSetInfo === null || dataSetInfo === void 0 ? void 0 : dataSetInfo.id, ".json"), {
method: "put",
body: body
});
case 15:
- res = _context5.sent;
- _context5.next = 21;
+ res = _context7.sent;
+ _context7.next = 21;
break;
case 18:
- _context5.next = 20;
+ _context7.next = 20;
return (0,fetch/* default */.ZP)('/api/data_sets.json', {
method: "post",
body: body
});
case 20:
- res = _context5.sent;
+ res = _context7.sent;
case 21:
if (res.status === 0) {
message/* default */.ZP.success('操作成功');
@@ -995,12 +1157,12 @@ var AddOrEditModal = function AddOrEditModal(_ref) {
setBtnLoading(false);
case 23:
case "end":
- return _context5.stop();
+ return _context7.stop();
}
- }, _callee5);
+ }, _callee6);
}));
return function handleFinish() {
- return _ref6.apply(this, arguments);
+ return _ref7.apply(this, arguments);
};
}();
diff --git a/index.html b/index.html
index 20d66c1515..3dc52c6011 100644
--- a/index.html
+++ b/index.html
@@ -26,7 +26,7 @@
display: block !important;
}
-
+