ls-pro-common 3.0.97 → 3.0.99
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/common.css +63 -0
- package/dist/common.js +1 -1
- package/dist/common.less +2 -1
- package/dist/common.min.css +63 -0
- package/dist/common.min.js +1 -1
- package/es/components/InputTable.js +59 -27
- package/es/components/ProButton/index.d.ts +10 -0
- package/es/components/ProButton/index.js +40 -0
- package/es/components/RecordLog/index.d.ts +16 -0
- package/es/components/RecordLog/index.js +114 -0
- package/es/components/RecordLog/index.less +71 -0
- package/es/hooks/useMdm.d.ts +7 -0
- package/es/hooks/useMdm.js +47 -0
- package/es/http/index.d.ts +2 -1
- package/es/http/index.js +2 -7
- package/es/http/mdmRequest.d.ts +184 -0
- package/es/http/mdmRequest.js +351 -0
- package/es/index.d.ts +6 -2
- package/es/index.js +6 -2
- package/es/utils/array.d.ts +26 -0
- package/es/utils/array.js +74 -0
- package/es/utils/format.d.ts +82 -0
- package/es/utils/format.js +148 -0
- package/es/utils/index.d.ts +6 -132
- package/es/utils/index.js +9 -511
- package/es/utils/modal.d.ts +43 -0
- package/es/utils/modal.js +225 -0
- package/es/utils/size.d.ts +9 -0
- package/es/utils/size.js +81 -0
- package/lib/components/InputTable.js +59 -27
- package/lib/components/ProButton/index.d.ts +10 -0
- package/lib/components/ProButton/index.js +40 -0
- package/lib/components/RecordLog/index.d.ts +16 -0
- package/lib/components/RecordLog/index.js +114 -0
- package/lib/components/RecordLog/index.less +71 -0
- package/lib/hooks/useMdm.d.ts +7 -0
- package/lib/hooks/useMdm.js +47 -0
- package/lib/http/index.d.ts +2 -1
- package/lib/http/index.js +2 -7
- package/lib/http/mdmRequest.d.ts +184 -0
- package/lib/http/mdmRequest.js +351 -0
- package/lib/index.d.ts +6 -2
- package/lib/index.js +6 -2
- package/lib/utils/array.d.ts +26 -0
- package/lib/utils/array.js +74 -0
- package/lib/utils/format.d.ts +82 -0
- package/lib/utils/format.js +148 -0
- package/lib/utils/index.d.ts +6 -132
- package/lib/utils/index.js +9 -511
- package/lib/utils/modal.d.ts +43 -0
- package/lib/utils/modal.js +225 -0
- package/lib/utils/size.d.ts +9 -0
- package/lib/utils/size.js +81 -0
- package/package.json +2 -1
package/lib/utils/index.js
CHANGED
|
@@ -1,20 +1,12 @@
|
|
|
1
|
-
import _asyncToGenerator from "@babel/runtime/helpers/esm/asyncToGenerator";
|
|
2
|
-
import "antd/es/spin/style";
|
|
3
|
-
import _Spin from "antd/es/spin";
|
|
4
|
-
import _createForOfIteratorHelper from "@babel/runtime/helpers/esm/createForOfIteratorHelper";
|
|
5
|
-
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
|
|
6
|
-
import "antd/es/modal/style";
|
|
7
|
-
import _Modal from "antd/es/modal";
|
|
8
|
-
import "antd/es/message/style";
|
|
9
|
-
import _message from "antd/es/message";
|
|
10
1
|
import _typeof from "@babel/runtime/helpers/esm/typeof";
|
|
11
|
-
import _regeneratorRuntime from "@babel/runtime/regenerator";
|
|
12
|
-
import ReactDOM from 'react-dom';
|
|
13
|
-
import { QuestionCircleOutlined } from '@ant-design/icons';
|
|
14
2
|
import { httpPost } from '../http';
|
|
15
|
-
import
|
|
16
|
-
|
|
17
|
-
export
|
|
3
|
+
import { cloneDeep } from 'lodash';
|
|
4
|
+
export { throttle, debounce, cloneDeep } from 'lodash';
|
|
5
|
+
export * from './modal';
|
|
6
|
+
export * from './array';
|
|
7
|
+
export * from './format';
|
|
8
|
+
export * from './size';
|
|
9
|
+
export { getBrowserId } from 'ls-pro-tools';
|
|
18
10
|
/**
|
|
19
11
|
* 获取 url 参数
|
|
20
12
|
*
|
|
@@ -76,22 +68,6 @@ export var setUrlQuery = function setUrlQuery(url) {
|
|
|
76
68
|
}
|
|
77
69
|
return newUrl;
|
|
78
70
|
};
|
|
79
|
-
/**
|
|
80
|
-
* 日期格式化
|
|
81
|
-
*
|
|
82
|
-
* @param dt 日期
|
|
83
|
-
* @param showTime 是否显示时间 默认为 true
|
|
84
|
-
* @returns YYYY-MM-DD
|
|
85
|
-
*/
|
|
86
|
-
export var dateFormat = function dateFormat(dt) {
|
|
87
|
-
var showTime = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
|
|
88
|
-
var ct = dt ? dt : new Date(Date.now());
|
|
89
|
-
var str = ct.getFullYear() + '-' + ('' + (ct.getMonth() + 1)).padStart(2, '0') + '-' + ('' + ct.getDate()).padStart(2, '0');
|
|
90
|
-
if (showTime) {
|
|
91
|
-
str += ' ' + (ct.getHours() + '').padStart(2, '0') + ':' + (ct.getMinutes() + '').padStart(2, '0') + ':' + (ct.getSeconds() + '').padStart(2, '0');
|
|
92
|
-
}
|
|
93
|
-
return str;
|
|
94
|
-
};
|
|
95
71
|
/**
|
|
96
72
|
* 给 url 添加网关
|
|
97
73
|
*
|
|
@@ -142,103 +118,6 @@ export var setTitle = function setTitle(title) {
|
|
|
142
118
|
if (!title) return;
|
|
143
119
|
document.title = title;
|
|
144
120
|
};
|
|
145
|
-
/**
|
|
146
|
-
* 日期格式化
|
|
147
|
-
*
|
|
148
|
-
* @param dt 日期
|
|
149
|
-
* @param showTime 是否显示时间 默认true
|
|
150
|
-
* @returns YYYY-MM-DD hh:mm:ss
|
|
151
|
-
*/
|
|
152
|
-
export var formatDate = dateFormat;
|
|
153
|
-
/**
|
|
154
|
-
* 返回当前日期
|
|
155
|
-
*
|
|
156
|
-
* @returns YYYY-MM-DD
|
|
157
|
-
*/
|
|
158
|
-
export var today = function today() {
|
|
159
|
-
return dateFormat(null, false);
|
|
160
|
-
};
|
|
161
|
-
/**
|
|
162
|
-
* 返回当前日期时间
|
|
163
|
-
*
|
|
164
|
-
* @returns YYYY-MM-DD hh:mm:ss
|
|
165
|
-
*/
|
|
166
|
-
export var now = function now() {
|
|
167
|
-
return dateFormat(null, true);
|
|
168
|
-
};
|
|
169
|
-
/**
|
|
170
|
-
* 时间加减
|
|
171
|
-
*
|
|
172
|
-
* @param dt 原始时间,传 null 为当前时间
|
|
173
|
-
* @param addDay 添加添数,可为负数
|
|
174
|
-
* @param addMonth 添加月数,可为负数
|
|
175
|
-
* @param addYear 添加年数,可以负责
|
|
176
|
-
* @returns YYYY-MM-DD hh:mm:ss
|
|
177
|
-
*/
|
|
178
|
-
export var dateAdd = function dateAdd(dt, addDay) {
|
|
179
|
-
var addMonth = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;
|
|
180
|
-
var addYear = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 0;
|
|
181
|
-
if (!dt) {
|
|
182
|
-
dt = new Date();
|
|
183
|
-
}
|
|
184
|
-
if (addDay) {
|
|
185
|
-
dt.setDate(dt.getDate() + addDay);
|
|
186
|
-
}
|
|
187
|
-
if (addMonth) {
|
|
188
|
-
dt.setMonth(dt.getMonth() + addMonth);
|
|
189
|
-
}
|
|
190
|
-
if (addYear) {
|
|
191
|
-
dt.setFullYear(dt.getFullYear() + addYear);
|
|
192
|
-
}
|
|
193
|
-
return dateFormat(dt, true);
|
|
194
|
-
};
|
|
195
|
-
/**
|
|
196
|
-
* 当前时间加减
|
|
197
|
-
*
|
|
198
|
-
* @param addDay 添加添数,可为负数
|
|
199
|
-
* @param addMonth 添加月数,可为负数
|
|
200
|
-
* @param addYear 添加年数,可以负责
|
|
201
|
-
* @returns YYYY-MM-DD hh:mm:ss
|
|
202
|
-
*/
|
|
203
|
-
export var nowAdd = function nowAdd(addDay) {
|
|
204
|
-
var addMonth = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
|
|
205
|
-
var addYear = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;
|
|
206
|
-
return dateAdd(null, addDay, addMonth, addYear);
|
|
207
|
-
};
|
|
208
|
-
/**
|
|
209
|
-
* 当前日期加减
|
|
210
|
-
*
|
|
211
|
-
* @param addDay 添加添数,可为负数
|
|
212
|
-
* @param addMonth 添加月数,可为负数
|
|
213
|
-
* @param addYear 添加年数,可以负责
|
|
214
|
-
* @returns YYYY-MM-DD
|
|
215
|
-
*/
|
|
216
|
-
export var todayAdd = function todayAdd(addDay) {
|
|
217
|
-
var addMonth = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
|
|
218
|
-
var addYear = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;
|
|
219
|
-
return nowAdd(addDay, addMonth, addYear).split(' ')[0];
|
|
220
|
-
};
|
|
221
|
-
/**
|
|
222
|
-
* 千位符格式化数值
|
|
223
|
-
*
|
|
224
|
-
* @param num 数值
|
|
225
|
-
* @param dec 小数位数,默认为2位小数
|
|
226
|
-
* @returns Xx,xxx.xx
|
|
227
|
-
*/
|
|
228
|
-
export var formatMoney = function formatMoney(num) {
|
|
229
|
-
var dec = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 2;
|
|
230
|
-
if (typeof num !== 'number') {
|
|
231
|
-
num = Number(num);
|
|
232
|
-
if (Number.isNaN(num)) {
|
|
233
|
-
num = 0;
|
|
234
|
-
}
|
|
235
|
-
}
|
|
236
|
-
var str = num.toFixed(dec);
|
|
237
|
-
if (str.indexOf('.') === -1) {
|
|
238
|
-
str += '.';
|
|
239
|
-
}
|
|
240
|
-
return str.replace(/(\d)(?=(\d{3})+\.)/g, '$1,').replace(/\.$/, '');
|
|
241
|
-
};
|
|
242
121
|
/**
|
|
243
122
|
* 获取Cookie
|
|
244
123
|
*
|
|
@@ -283,16 +162,6 @@ export var setCookie = function setCookie(key, value) {
|
|
|
283
162
|
export var isLogin = function isLogin() {
|
|
284
163
|
return !!getCookie('online');
|
|
285
164
|
};
|
|
286
|
-
export var getFullScreenElement = function getFullScreenElement() {
|
|
287
|
-
//@ts-ignore
|
|
288
|
-
return document.fullscreenElement ||
|
|
289
|
-
//@ts-ignore
|
|
290
|
-
document.mozFullScreenElement ||
|
|
291
|
-
//@ts-ignore
|
|
292
|
-
document.msFullScreenElement ||
|
|
293
|
-
//@ts-ignore
|
|
294
|
-
document.webkitFullscreenElement || undefined;
|
|
295
|
-
};
|
|
296
165
|
/**
|
|
297
166
|
* 设置本地缓存
|
|
298
167
|
*
|
|
@@ -355,180 +224,6 @@ export var clearCache = function clearCache(key) {
|
|
|
355
224
|
}
|
|
356
225
|
}
|
|
357
226
|
};
|
|
358
|
-
_message.config({
|
|
359
|
-
maxCount: 1
|
|
360
|
-
});
|
|
361
|
-
/** @name 显示错误 */
|
|
362
|
-
export var showError = function showError(text) {
|
|
363
|
-
var duration = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 3;
|
|
364
|
-
if (!text) {
|
|
365
|
-
text = '出错了!!';
|
|
366
|
-
}
|
|
367
|
-
_message.error({
|
|
368
|
-
content: text,
|
|
369
|
-
duration: duration,
|
|
370
|
-
getPopupContainer: function getPopupContainer(e) {
|
|
371
|
-
return getFullScreenElement() || document.body;
|
|
372
|
-
},
|
|
373
|
-
onClick: function onClick(e) {
|
|
374
|
-
var _e$target;
|
|
375
|
-
var tag = (_e$target = e.target) === null || _e$target === void 0 ? void 0 : _e$target.tagName.toLowerCase();
|
|
376
|
-
if (tag === 'img' || tag === 'path' || tag === 'svg') {
|
|
377
|
-
try {
|
|
378
|
-
_message.destroy();
|
|
379
|
-
} catch (e) {}
|
|
380
|
-
try {
|
|
381
|
-
var _e$target2, _e$target2$closest;
|
|
382
|
-
var msg = (_e$target2 = e.target) === null || _e$target2 === void 0 ? void 0 : (_e$target2$closest = _e$target2.closest('.ant-message')) === null || _e$target2$closest === void 0 ? void 0 : _e$target2$closest.parentNode;
|
|
383
|
-
if (msg) {
|
|
384
|
-
var _msg$parentNode;
|
|
385
|
-
(_msg$parentNode = msg.parentNode) === null || _msg$parentNode === void 0 ? void 0 : _msg$parentNode.removeChild(msg);
|
|
386
|
-
}
|
|
387
|
-
} catch (e) {}
|
|
388
|
-
}
|
|
389
|
-
}
|
|
390
|
-
});
|
|
391
|
-
};
|
|
392
|
-
/** @name 显示警示 */
|
|
393
|
-
export var showWarn = function showWarn(text) {
|
|
394
|
-
var duration = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 3;
|
|
395
|
-
if (!text) {
|
|
396
|
-
text = '请注意!';
|
|
397
|
-
}
|
|
398
|
-
_message.warn({
|
|
399
|
-
content: text,
|
|
400
|
-
duration: duration,
|
|
401
|
-
getPopupContainer: function getPopupContainer(e) {
|
|
402
|
-
return getFullScreenElement() || document.body;
|
|
403
|
-
},
|
|
404
|
-
onClick: function onClick(e) {
|
|
405
|
-
var _e$target3;
|
|
406
|
-
var tag = (_e$target3 = e.target) === null || _e$target3 === void 0 ? void 0 : _e$target3.tagName.toLowerCase();
|
|
407
|
-
if (tag === 'img' || tag === 'path' || tag === 'svg') {
|
|
408
|
-
try {
|
|
409
|
-
_message.destroy();
|
|
410
|
-
} catch (e) {}
|
|
411
|
-
try {
|
|
412
|
-
var _e$target4, _e$target4$closest;
|
|
413
|
-
var msg = (_e$target4 = e.target) === null || _e$target4 === void 0 ? void 0 : (_e$target4$closest = _e$target4.closest('.ant-message')) === null || _e$target4$closest === void 0 ? void 0 : _e$target4$closest.parentNode;
|
|
414
|
-
if (msg) {
|
|
415
|
-
var _msg$parentNode2;
|
|
416
|
-
(_msg$parentNode2 = msg.parentNode) === null || _msg$parentNode2 === void 0 ? void 0 : _msg$parentNode2.removeChild(msg);
|
|
417
|
-
}
|
|
418
|
-
} catch (e) {}
|
|
419
|
-
}
|
|
420
|
-
}
|
|
421
|
-
});
|
|
422
|
-
};
|
|
423
|
-
/** @name 显示成功 */
|
|
424
|
-
export var showSuccess = function showSuccess(text) {
|
|
425
|
-
var duration = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 3;
|
|
426
|
-
if (!text) {
|
|
427
|
-
text = '操作成功!';
|
|
428
|
-
}
|
|
429
|
-
_message.success({
|
|
430
|
-
content: text,
|
|
431
|
-
duration: duration,
|
|
432
|
-
getPopupContainer: function getPopupContainer(e) {
|
|
433
|
-
return getFullScreenElement() || document.body;
|
|
434
|
-
},
|
|
435
|
-
onClick: function onClick(e) {
|
|
436
|
-
var _e$target5;
|
|
437
|
-
var tag = (_e$target5 = e.target) === null || _e$target5 === void 0 ? void 0 : _e$target5.tagName.toLowerCase();
|
|
438
|
-
if (tag === 'img' || tag === 'path' || tag === 'svg') {
|
|
439
|
-
try {
|
|
440
|
-
_message.destroy();
|
|
441
|
-
} catch (e) {}
|
|
442
|
-
try {
|
|
443
|
-
var _e$target6, _e$target6$closest;
|
|
444
|
-
var msg = (_e$target6 = e.target) === null || _e$target6 === void 0 ? void 0 : (_e$target6$closest = _e$target6.closest('.ant-message')) === null || _e$target6$closest === void 0 ? void 0 : _e$target6$closest.parentNode;
|
|
445
|
-
if (msg) {
|
|
446
|
-
var _msg$parentNode3;
|
|
447
|
-
(_msg$parentNode3 = msg.parentNode) === null || _msg$parentNode3 === void 0 ? void 0 : _msg$parentNode3.removeChild(msg);
|
|
448
|
-
}
|
|
449
|
-
} catch (e) {}
|
|
450
|
-
}
|
|
451
|
-
}
|
|
452
|
-
});
|
|
453
|
-
};
|
|
454
|
-
/**
|
|
455
|
-
* 弹框提示
|
|
456
|
-
*
|
|
457
|
-
* @param text 提示信息
|
|
458
|
-
* @param title 标题,默认 系统提示
|
|
459
|
-
* @param type 类型
|
|
460
|
-
* @param opts 附加参数
|
|
461
|
-
* @returns Promise<Boolean>
|
|
462
|
-
*/
|
|
463
|
-
export var showAlert = function showAlert(text) {
|
|
464
|
-
var title = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '系统提示';
|
|
465
|
-
var type = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'error';
|
|
466
|
-
var opts = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
|
|
467
|
-
return new Promise(function (resolve, reject) {
|
|
468
|
-
_Modal[type](_objectSpread({
|
|
469
|
-
content: text,
|
|
470
|
-
title: title,
|
|
471
|
-
getContainer: getFullScreenElement() || document.body,
|
|
472
|
-
onOk: function onOk() {
|
|
473
|
-
resolve(true);
|
|
474
|
-
},
|
|
475
|
-
onCancel: function onCancel() {
|
|
476
|
-
reject(false);
|
|
477
|
-
}
|
|
478
|
-
}, opts));
|
|
479
|
-
});
|
|
480
|
-
};
|
|
481
|
-
export var httpError = function httpError(retMsg, retCode, faultCode) {
|
|
482
|
-
var opts = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
|
|
483
|
-
var msg = /*#__PURE__*/React.createElement(React.Fragment, null, "\u9519\u8BEF\u539F\u56E0:", /*#__PURE__*/React.createElement("b", null, retMsg), /*#__PURE__*/React.createElement("br", null), "\u9519\u8BEF\u7801:", /*#__PURE__*/React.createElement("b", null, retCode), /*#__PURE__*/React.createElement("br", null), "\u6545\u969C\u7801:", /*#__PURE__*/React.createElement("b", null, faultCode));
|
|
484
|
-
return showAlert(msg, '请求接口出错', 'error', opts);
|
|
485
|
-
};
|
|
486
|
-
export var exitAlert = function exitAlert() {
|
|
487
|
-
_Modal.destroyAll();
|
|
488
|
-
};
|
|
489
|
-
/** @name 显示确认 */
|
|
490
|
-
export var showConfirm = function showConfirm(text) {
|
|
491
|
-
var title = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '系统提示';
|
|
492
|
-
return new Promise(function (resolve, reject) {
|
|
493
|
-
_Modal.confirm({
|
|
494
|
-
title: title,
|
|
495
|
-
content: text,
|
|
496
|
-
icon: /*#__PURE__*/React.createElement(QuestionCircleOutlined, null),
|
|
497
|
-
okType: 'danger',
|
|
498
|
-
closable: true,
|
|
499
|
-
cancelButtonProps: {
|
|
500
|
-
className: 'ant-btn-gray'
|
|
501
|
-
},
|
|
502
|
-
getContainer: getFullScreenElement() || document.body,
|
|
503
|
-
onOk: function onOk() {
|
|
504
|
-
resolve(true);
|
|
505
|
-
},
|
|
506
|
-
onCancel: function onCancel() {
|
|
507
|
-
reject(false);
|
|
508
|
-
}
|
|
509
|
-
});
|
|
510
|
-
});
|
|
511
|
-
};
|
|
512
|
-
var timeout = false;
|
|
513
|
-
/**
|
|
514
|
-
* Token过期重新登录
|
|
515
|
-
*
|
|
516
|
-
* @returns
|
|
517
|
-
*/
|
|
518
|
-
export var reLogin = function reLogin() {
|
|
519
|
-
if (timeout) return;
|
|
520
|
-
timeout = true;
|
|
521
|
-
_Modal.warning({
|
|
522
|
-
title: '登录状态已过期,请重新登录',
|
|
523
|
-
okText: '重新登录',
|
|
524
|
-
maskClosable: false,
|
|
525
|
-
getContainer: getFullScreenElement() || document.body,
|
|
526
|
-
afterClose: function afterClose() {
|
|
527
|
-
timeout = false;
|
|
528
|
-
(window.top || window).location.href = location.pathname === '/' ? '/login' : '/login?redirect=' + encodeURIComponent(location.href);
|
|
529
|
-
}
|
|
530
|
-
});
|
|
531
|
-
};
|
|
532
227
|
/**
|
|
533
228
|
* 日期组选择转换
|
|
534
229
|
*
|
|
@@ -570,139 +265,6 @@ export var yesnoList = [{
|
|
|
570
265
|
text: '否',
|
|
571
266
|
label: '0→否'
|
|
572
267
|
}];
|
|
573
|
-
/**
|
|
574
|
-
* 遍历树
|
|
575
|
-
*
|
|
576
|
-
* @param list 树对象
|
|
577
|
-
* @param fn 回调函数
|
|
578
|
-
* @param children 树属性字段
|
|
579
|
-
*/
|
|
580
|
-
export var treeEach = function treeEach(list, fn) {
|
|
581
|
-
var children = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'children';
|
|
582
|
-
list.forEach(function (item, index) {
|
|
583
|
-
fn(item, index, list);
|
|
584
|
-
// @ts-ignore
|
|
585
|
-
if (Array.isArray(item[children]) && item[children].length) {
|
|
586
|
-
// @ts-ignore
|
|
587
|
-
treeEach(item[children], fn, children);
|
|
588
|
-
}
|
|
589
|
-
});
|
|
590
|
-
};
|
|
591
|
-
/**
|
|
592
|
-
* 查询数
|
|
593
|
-
*
|
|
594
|
-
* @param list 树对象
|
|
595
|
-
* @param key 查询属性
|
|
596
|
-
* @param val 查询值
|
|
597
|
-
* @param children 树属性字段
|
|
598
|
-
* @returns 返回符合条件的第一条对象
|
|
599
|
-
*/
|
|
600
|
-
export var treeFind = function treeFind(list, key, val) {
|
|
601
|
-
var children = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 'children';
|
|
602
|
-
var item = null;
|
|
603
|
-
var _iterator = _createForOfIteratorHelper(list),
|
|
604
|
-
_step;
|
|
605
|
-
try {
|
|
606
|
-
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
607
|
-
var row = _step.value;
|
|
608
|
-
if (row[key] === val) {
|
|
609
|
-
item = row;
|
|
610
|
-
break;
|
|
611
|
-
} else if (row[children] && row[children].length) {
|
|
612
|
-
item = treeFind(row[children], key, val);
|
|
613
|
-
if (item) {
|
|
614
|
-
break;
|
|
615
|
-
}
|
|
616
|
-
}
|
|
617
|
-
}
|
|
618
|
-
} catch (err) {
|
|
619
|
-
_iterator.e(err);
|
|
620
|
-
} finally {
|
|
621
|
-
_iterator.f();
|
|
622
|
-
}
|
|
623
|
-
return item;
|
|
624
|
-
};
|
|
625
|
-
/**
|
|
626
|
-
* 处理普通的尺码横排
|
|
627
|
-
*
|
|
628
|
-
* @param orgSizeHeader 后端返回的原始尺码组表头
|
|
629
|
-
* @param typeWidth 尺码组宽 sizeTypeNo,默认120
|
|
630
|
-
* @param sizeWidth 尺码宽f1~f100, 默认100
|
|
631
|
-
* @returns 返回已处理好的表头[{dataIndex:sizeTypeNo,title:'国标码',width:120,children[...]},{dataIndex:'f1',...}...]
|
|
632
|
-
*/
|
|
633
|
-
export var handleSizeCols = function handleSizeCols(orgSizeHeader) {
|
|
634
|
-
var typeWidth = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 120;
|
|
635
|
-
var sizeWidth = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 100;
|
|
636
|
-
// f1~f100 当所有尺码组都为null时,删除不需要的尺码。
|
|
637
|
-
var arr = orgSizeHeader.map(function (o) {
|
|
638
|
-
var _loop = function _loop(key) {
|
|
639
|
-
if (orgSizeHeader.every(function (item) {
|
|
640
|
-
return !item['f' + key];
|
|
641
|
-
})) {
|
|
642
|
-
delete o['f' + key];
|
|
643
|
-
}
|
|
644
|
-
};
|
|
645
|
-
for (var key = 1; key <= 100; key++) {
|
|
646
|
-
_loop(key);
|
|
647
|
-
}
|
|
648
|
-
return o;
|
|
649
|
-
});
|
|
650
|
-
// 多表头时找到最底层的表头
|
|
651
|
-
var findNext = function findNext(item) {
|
|
652
|
-
if (item.children.length) {
|
|
653
|
-
return findNext(item.children[0]);
|
|
654
|
-
}
|
|
655
|
-
return item;
|
|
656
|
-
};
|
|
657
|
-
var headers = []; // 用于保存返回表头
|
|
658
|
-
var header; // 用于保存每个配码的表头信息
|
|
659
|
-
arr.forEach(function (h, i) {
|
|
660
|
-
// 先处理尺码组
|
|
661
|
-
header = {
|
|
662
|
-
dataIndex: 'sizeTypeNo',
|
|
663
|
-
title: h.sizeTypeNo,
|
|
664
|
-
width: typeWidth,
|
|
665
|
-
ellipsis: true
|
|
666
|
-
};
|
|
667
|
-
//当返回多个尺码组时,需要用children支持多表头
|
|
668
|
-
if (arr.length > i + 1) {
|
|
669
|
-
header.children = [];
|
|
670
|
-
}
|
|
671
|
-
// 第一个尺码组,直接添加,第二个之后,加到上一个的children中。
|
|
672
|
-
if (i === 0) {
|
|
673
|
-
headers.push(header);
|
|
674
|
-
} else {
|
|
675
|
-
findNext(headers.find(function (o) {
|
|
676
|
-
return o.dataIndex === 'sizeTypeNo';
|
|
677
|
-
})).children.push(header);
|
|
678
|
-
}
|
|
679
|
-
// 处理 f1~f100
|
|
680
|
-
var _loop2 = function _loop2(k) {
|
|
681
|
-
if (k === 'sizeTypeNo') return "continue";
|
|
682
|
-
header = {
|
|
683
|
-
dataIndex: k,
|
|
684
|
-
title: h[k] || ' ',
|
|
685
|
-
width: sizeWidth,
|
|
686
|
-
ellipsis: true
|
|
687
|
-
};
|
|
688
|
-
if (arr.length > i + 1) {
|
|
689
|
-
header.children = [];
|
|
690
|
-
}
|
|
691
|
-
if (i === 0) {
|
|
692
|
-
headers.push(header);
|
|
693
|
-
} else {
|
|
694
|
-
findNext(headers.find(function (o) {
|
|
695
|
-
return o.dataIndex === k;
|
|
696
|
-
})).children.push(header);
|
|
697
|
-
}
|
|
698
|
-
};
|
|
699
|
-
for (var k in h) {
|
|
700
|
-
var _ret = _loop2(k);
|
|
701
|
-
if (_ret === "continue") continue;
|
|
702
|
-
}
|
|
703
|
-
});
|
|
704
|
-
return headers;
|
|
705
|
-
};
|
|
706
268
|
/**
|
|
707
269
|
* 绑定事件
|
|
708
270
|
*
|
|
@@ -841,20 +403,7 @@ export var appPath = function appPath() {
|
|
|
841
403
|
* @returns
|
|
842
404
|
*/
|
|
843
405
|
export var deepClone = function deepClone(obj) {
|
|
844
|
-
|
|
845
|
-
var target = obj;
|
|
846
|
-
if (otype === '[object Array]') {
|
|
847
|
-
target = [];
|
|
848
|
-
for (var i = 0; i < obj.length; i++) {
|
|
849
|
-
target.push(deepClone(obj[i]));
|
|
850
|
-
}
|
|
851
|
-
} else if (otype === '[object Object]') {
|
|
852
|
-
target = {};
|
|
853
|
-
for (var key in obj) {
|
|
854
|
-
target[key] = deepClone(obj[key]);
|
|
855
|
-
}
|
|
856
|
-
}
|
|
857
|
-
return target;
|
|
406
|
+
return cloneDeep(obj);
|
|
858
407
|
};
|
|
859
408
|
/**
|
|
860
409
|
* 在主工程中打开模块
|
|
@@ -868,27 +417,6 @@ export var openPageInMain = function openPageInMain(option) {
|
|
|
868
417
|
param: option
|
|
869
418
|
});
|
|
870
419
|
};
|
|
871
|
-
/** 显示加载 */
|
|
872
|
-
export var showLoading = function showLoading() {
|
|
873
|
-
var text = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '处理中...';
|
|
874
|
-
var loading = document.getElementById('myloading');
|
|
875
|
-
if (loading) return;
|
|
876
|
-
var loadWrapper = document.createElement('div');
|
|
877
|
-
loadWrapper.setAttribute('id', 'myloading');
|
|
878
|
-
ReactDOM.render( /*#__PURE__*/React.createElement(_Spin, {
|
|
879
|
-
tip: text
|
|
880
|
-
}), loadWrapper);
|
|
881
|
-
var pNode = getFullScreenElement() || document.body;
|
|
882
|
-
pNode.appendChild(loadWrapper);
|
|
883
|
-
};
|
|
884
|
-
/** 退出加载 */
|
|
885
|
-
export var exitLoading = function exitLoading() {
|
|
886
|
-
var loading = document.getElementById('myloading');
|
|
887
|
-
if (loading) {
|
|
888
|
-
var _loading$parentNode;
|
|
889
|
-
(_loading$parentNode = loading.parentNode) === null || _loading$parentNode === void 0 ? void 0 : _loading$parentNode.removeChild(loading);
|
|
890
|
-
}
|
|
891
|
-
};
|
|
892
420
|
/** 处理主题 */
|
|
893
421
|
export var handleTheme = function handleTheme() {
|
|
894
422
|
var theme = getCache('theme');
|
|
@@ -933,34 +461,4 @@ export var downloadFile = function downloadFile(url, fileName) {
|
|
|
933
461
|
document.body.appendChild(a);
|
|
934
462
|
a.click();
|
|
935
463
|
document.body.removeChild(a);
|
|
936
|
-
};
|
|
937
|
-
/**
|
|
938
|
-
* 获取浏览器指纹 基于fingerprintjs
|
|
939
|
-
*
|
|
940
|
-
* @returns 浏览器指纹
|
|
941
|
-
*/
|
|
942
|
-
export var getBrowserId = /*#__PURE__*/function () {
|
|
943
|
-
var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
|
|
944
|
-
var fp, fingerprint;
|
|
945
|
-
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
946
|
-
while (1) switch (_context.prev = _context.next) {
|
|
947
|
-
case 0:
|
|
948
|
-
_context.next = 2;
|
|
949
|
-
return FingerprintJS.load();
|
|
950
|
-
case 2:
|
|
951
|
-
fp = _context.sent;
|
|
952
|
-
_context.next = 5;
|
|
953
|
-
return fp.get();
|
|
954
|
-
case 5:
|
|
955
|
-
fingerprint = _context.sent;
|
|
956
|
-
return _context.abrupt("return", fingerprint.visitorId);
|
|
957
|
-
case 7:
|
|
958
|
-
case "end":
|
|
959
|
-
return _context.stop();
|
|
960
|
-
}
|
|
961
|
-
}, _callee);
|
|
962
|
-
}));
|
|
963
|
-
return function getBrowserId() {
|
|
964
|
-
return _ref.apply(this, arguments);
|
|
965
|
-
};
|
|
966
|
-
}();
|
|
464
|
+
};
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { ModalFuncProps } from 'antd';
|
|
2
|
+
import ReactDOM from 'react-dom';
|
|
3
|
+
/** @name 获取全屏元素 */
|
|
4
|
+
export declare const getFullScreenElement: () => any;
|
|
5
|
+
/** @name 显示错误 */
|
|
6
|
+
export declare const showError: (text: string, duration?: number) => void;
|
|
7
|
+
/** @name 显示警示 */
|
|
8
|
+
export declare const showWarn: (text: string, duration?: number) => void;
|
|
9
|
+
/** @name 显示成功 */
|
|
10
|
+
export declare const showSuccess: (text: string, duration?: number) => void;
|
|
11
|
+
/**
|
|
12
|
+
* 弹框提示
|
|
13
|
+
*
|
|
14
|
+
* @param text 提示信息
|
|
15
|
+
* @param title 标题,默认 系统提示
|
|
16
|
+
* @param type 类型
|
|
17
|
+
* @param opts 附加参数
|
|
18
|
+
* @returns Promise<Boolean>
|
|
19
|
+
*/
|
|
20
|
+
export declare const showAlert: (text: React.ReactDOM | string, title?: string, type?: 'error' | 'info' | 'success' | 'warn', opts?: ModalFuncProps) => Promise<unknown>;
|
|
21
|
+
/**
|
|
22
|
+
* 请求接口出错
|
|
23
|
+
*
|
|
24
|
+
* @param retMsg 错误原因
|
|
25
|
+
* @param retCode 错误码
|
|
26
|
+
* @param faultCode 故障码
|
|
27
|
+
* @param opts 附加参数
|
|
28
|
+
*/
|
|
29
|
+
export declare const httpError: (retMsg?: string | undefined, retCode?: string | undefined, faultCode?: string | undefined, opts?: ModalFuncProps) => Promise<unknown>;
|
|
30
|
+
/** 销毁所有弹框 */
|
|
31
|
+
export declare const exitAlert: () => void;
|
|
32
|
+
/** @name 显示确认 */
|
|
33
|
+
export declare const showConfirm: (text: string, title?: string) => Promise<unknown>;
|
|
34
|
+
/**
|
|
35
|
+
* Token过期重新登录
|
|
36
|
+
*
|
|
37
|
+
* @returns
|
|
38
|
+
*/
|
|
39
|
+
export declare const reLogin: () => void;
|
|
40
|
+
/** 显示加载 */
|
|
41
|
+
export declare const showLoading: (text?: string) => void;
|
|
42
|
+
/** 退出加载 */
|
|
43
|
+
export declare const exitLoading: () => void;
|