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