@zgfe/business-lib 1.0.7 → 1.0.10
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/es/addToPanel/components/addPanel.d.ts +7 -0
- package/es/addToPanel/components/addPanel.js +101 -0
- package/es/addToPanel/components/radioGroup.d.ts +7 -0
- package/es/addToPanel/components/radioGroup.js +29 -0
- package/es/addToPanel/components/styleList.d.ts +5 -0
- package/es/{dialog/components/tab.js → addToPanel/components/styleList.js} +10 -6
- package/es/{dialog/demo/index2.d.ts → addToPanel/demo/edit.d.ts} +0 -0
- package/es/{dialog/components/list.js → addToPanel/demo/edit.js} +63 -44
- package/es/{dialog/demo/index3.d.ts → addToPanel/demo/index.d.ts} +0 -0
- package/es/addToPanel/demo/index.js +78 -0
- package/es/addToPanel/index.d.ts +6 -0
- package/es/addToPanel/index.js +233 -0
- package/es/addToPanel/styles/addPanel.less +25 -0
- package/es/addToPanel/styles/index.less +6 -0
- package/es/{dialog/components/styles/tab.less → addToPanel/styles/style.less} +7 -2
- package/es/addToPanel/types.d.ts +56 -0
- package/es/addToPanel/types.js +1 -0
- package/es/addToScene/addGroup.d.ts +11 -0
- package/es/addToScene/addGroup.js +34 -0
- package/es/addToScene/demo/index.d.ts +2 -0
- package/es/addToScene/demo/index.js +34 -0
- package/es/addToScene/index.d.ts +6 -0
- package/es/addToScene/index.js +187 -0
- package/es/addToScene/styles/index.less +23 -0
- package/es/addToScene/types.d.ts +29 -0
- package/es/addToScene/types.js +1 -0
- package/es/analysisLayout/demo/index.js +6 -1
- package/es/analysisLayout/index.d.ts +1 -0
- package/es/analysisLayout/index.js +1 -0
- package/es/assets/styles/chunks.less +14 -2
- package/es/attrConditions/components/stringList.js +3 -3
- package/es/attrConditions/demo/group.js +2 -2
- package/es/attrConditions/demo/index.js +1 -1
- package/es/attrConditions/index.js +2 -2
- package/es/attrConditions/types.d.ts +1 -1
- package/es/attributeSelector/demo/index.js +1 -1
- package/es/attributeSelector/index.js +12 -2
- package/es/attributeSelector/styles/index.less +0 -1
- package/es/chart/demo/index.js +36 -4
- package/es/chart/index.d.ts +1 -1
- package/es/chart/index.js +16 -5
- package/es/constants/apis.d.ts +8 -0
- package/es/constants/apis.js +8 -0
- package/es/dialog/demo/index.d.ts +0 -23
- package/es/dialog/demo/index.js +6 -129
- package/es/dialog/index.d.ts +1 -2
- package/es/dialog/index.js +14 -183
- package/es/dialog/types.d.ts +2 -74
- package/es/index.d.ts +3 -1
- package/es/index.js +3 -1
- package/es/select/index.js +4 -2
- package/es/select/overlay.js +3 -1
- package/es/select/styles/handle.less +1 -0
- package/es/select/types.d.ts +2 -0
- package/es/targetConditionGroup/demo/index.js +1 -1
- package/es/userCondition/conditions/propCondition.js +3 -3
- package/es/userGroup/demo/index.js +4 -1
- package/es/userGroup/index.js +1 -1
- package/es/utils/ajax.d.ts +21 -7
- package/es/utils/ajax.js +205 -111
- package/package.json +3 -2
- package/es/dialog/components/itemNode.d.ts +0 -10
- package/es/dialog/components/itemNode.js +0 -109
- package/es/dialog/components/list.d.ts +0 -5
- package/es/dialog/components/selectToInput.d.ts +0 -6
- package/es/dialog/components/selectToInput.js +0 -175
- package/es/dialog/components/styles/handle.less +0 -39
- package/es/dialog/components/styles/list.less +0 -60
- package/es/dialog/components/tab.d.ts +0 -5
- package/es/dialog/data/data.d.ts +0 -20
- package/es/dialog/data/data.js +0 -73
- package/es/dialog/demo/index2.js +0 -109
- package/es/dialog/demo/index3.js +0 -61
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
2
|
+
|
|
3
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
4
|
+
|
|
5
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
6
|
+
|
|
7
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
8
|
+
|
|
9
|
+
function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
|
|
10
|
+
|
|
11
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
12
|
+
|
|
13
|
+
import { Input, Tooltip, Radio, Space } from 'antd';
|
|
14
|
+
import React, { useState } from 'react';
|
|
15
|
+
import IconFont from '../../icon/iconFont';
|
|
16
|
+
import '../styles/addPanel.less';
|
|
17
|
+
var inputOptions = [{
|
|
18
|
+
label: '公开',
|
|
19
|
+
value: 1
|
|
20
|
+
}, {
|
|
21
|
+
label: '指定人员明显',
|
|
22
|
+
value: 2,
|
|
23
|
+
title: '通过看板的共享功能指定可见成员'
|
|
24
|
+
}, {
|
|
25
|
+
label: '仅自己可见',
|
|
26
|
+
value: 3
|
|
27
|
+
}];
|
|
28
|
+
|
|
29
|
+
var AddPanel = function AddPanel(props) {
|
|
30
|
+
var classPrefix = 'biz-addpanel';
|
|
31
|
+
|
|
32
|
+
var _useState = useState(3),
|
|
33
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
34
|
+
radioData = _useState2[0],
|
|
35
|
+
setRadioData = _useState2[1];
|
|
36
|
+
|
|
37
|
+
var _useState3 = useState(''),
|
|
38
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
39
|
+
inputData = _useState4[0],
|
|
40
|
+
setInputData = _useState4[1];
|
|
41
|
+
|
|
42
|
+
var onChangeRadio = function onChangeRadio(e) {
|
|
43
|
+
var value = e.target.value;
|
|
44
|
+
setRadioData(value);
|
|
45
|
+
if (props.onChange) props.onChange({
|
|
46
|
+
id: 0,
|
|
47
|
+
name: inputData,
|
|
48
|
+
open_type: value
|
|
49
|
+
});
|
|
50
|
+
};
|
|
51
|
+
|
|
52
|
+
var onInput = function onInput(e) {
|
|
53
|
+
e.persist();
|
|
54
|
+
var value = e.target.value;
|
|
55
|
+
setInputData(value);
|
|
56
|
+
if (props.onChange) props.onChange({
|
|
57
|
+
id: 0,
|
|
58
|
+
name: value,
|
|
59
|
+
open_type: radioData
|
|
60
|
+
});
|
|
61
|
+
};
|
|
62
|
+
|
|
63
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
64
|
+
className: classPrefix
|
|
65
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
66
|
+
className: "".concat(classPrefix, "-input-row")
|
|
67
|
+
}, /*#__PURE__*/React.createElement(Input, {
|
|
68
|
+
className: "".concat(classPrefix, "-input"),
|
|
69
|
+
placeholder: "\u8F93\u5165\u770B\u677F\u540D\u79F0",
|
|
70
|
+
autoFocus: true,
|
|
71
|
+
allowClear: {
|
|
72
|
+
clearIcon: /*#__PURE__*/React.createElement(IconFont, {
|
|
73
|
+
type: 'qingchu'
|
|
74
|
+
})
|
|
75
|
+
},
|
|
76
|
+
onInput: onInput,
|
|
77
|
+
onBlur: onInput
|
|
78
|
+
}), /*#__PURE__*/React.createElement(Tooltip, {
|
|
79
|
+
title: "\u8FD4\u56DE\u9009\u62E9\u770B\u677F\u5217\u8868"
|
|
80
|
+
}, /*#__PURE__*/React.createElement(IconFont, {
|
|
81
|
+
className: "".concat(classPrefix, "-switch"),
|
|
82
|
+
type: "shurukuang_fanhui",
|
|
83
|
+
onClick: props.onBack
|
|
84
|
+
}))), /*#__PURE__*/React.createElement("div", {
|
|
85
|
+
className: "".concat(classPrefix, "-radio")
|
|
86
|
+
}, /*#__PURE__*/React.createElement(Radio.Group, {
|
|
87
|
+
value: radioData,
|
|
88
|
+
onChange: onChangeRadio
|
|
89
|
+
}, /*#__PURE__*/React.createElement(Space, {
|
|
90
|
+
direction: "horizontal"
|
|
91
|
+
}, inputOptions.map(function (item) {
|
|
92
|
+
return /*#__PURE__*/React.createElement(Radio, {
|
|
93
|
+
key: item.value,
|
|
94
|
+
value: item.value
|
|
95
|
+
}, item.title ? /*#__PURE__*/React.createElement(Tooltip, {
|
|
96
|
+
title: item.title
|
|
97
|
+
}, item.label) : item.label);
|
|
98
|
+
})))));
|
|
99
|
+
};
|
|
100
|
+
|
|
101
|
+
export default AddPanel;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { Radio, Space } from 'antd';
|
|
2
|
+
import React from 'react';
|
|
3
|
+
|
|
4
|
+
var RadioGroup = function RadioGroup(props) {
|
|
5
|
+
var options = props.options,
|
|
6
|
+
onChange = props.onChange;
|
|
7
|
+
return /*#__PURE__*/React.createElement(Radio.Group, {
|
|
8
|
+
onChange: onChange,
|
|
9
|
+
defaultValue: props.value
|
|
10
|
+
}, /*#__PURE__*/React.createElement(Space, {
|
|
11
|
+
direction: "vertical"
|
|
12
|
+
}, options && options.map(function (item) {
|
|
13
|
+
return /*#__PURE__*/React.createElement(Radio, {
|
|
14
|
+
key: item.value,
|
|
15
|
+
value: item.value
|
|
16
|
+
}, item.label);
|
|
17
|
+
})));
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
RadioGroup.defaultProps = {
|
|
21
|
+
options: [{
|
|
22
|
+
label: '动态显示数据最多的10个分组',
|
|
23
|
+
value: 'dynamic'
|
|
24
|
+
}, {
|
|
25
|
+
label: '固定显示当前选择的分组',
|
|
26
|
+
value: 'fix'
|
|
27
|
+
}]
|
|
28
|
+
};
|
|
29
|
+
export default RadioGroup;
|
|
@@ -12,10 +12,10 @@ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
|
12
12
|
|
|
13
13
|
import { Dropdown, Radio, Space } from 'antd';
|
|
14
14
|
import React, { useState } from 'react';
|
|
15
|
+
import '../styles/style.less';
|
|
15
16
|
import IconFont from '../../icon/iconFont';
|
|
16
|
-
import './styles/tab.less';
|
|
17
17
|
|
|
18
|
-
var
|
|
18
|
+
var StyleList = function StyleList(props) {
|
|
19
19
|
var _props$value;
|
|
20
20
|
|
|
21
21
|
var _useState = useState((_props$value = props.value) === null || _props$value === void 0 ? void 0 : _props$value.split(',')),
|
|
@@ -23,7 +23,7 @@ var BizTab = function BizTab(props) {
|
|
|
23
23
|
tab = _useState2[0],
|
|
24
24
|
setTab = _useState2[1];
|
|
25
25
|
|
|
26
|
-
var classPrefix = 'biz-
|
|
26
|
+
var classPrefix = 'biz-style';
|
|
27
27
|
|
|
28
28
|
var ChildList = function ChildList(data) {
|
|
29
29
|
var _data$children;
|
|
@@ -35,6 +35,7 @@ var BizTab = function BizTab(props) {
|
|
|
35
35
|
}, /*#__PURE__*/React.createElement(Space, null, (_data$children = data.children) === null || _data$children === void 0 ? void 0 : _data$children.map(function (item) {
|
|
36
36
|
return /*#__PURE__*/React.createElement(Radio, {
|
|
37
37
|
key: item.value,
|
|
38
|
+
disabled: item.disabled,
|
|
38
39
|
value: item.value,
|
|
39
40
|
onClick: function onClick() {
|
|
40
41
|
return onChange(data, item);
|
|
@@ -48,7 +49,7 @@ var BizTab = function BizTab(props) {
|
|
|
48
49
|
|
|
49
50
|
var onChange = function onChange(data, child) {
|
|
50
51
|
setTab([data.value, child.value]);
|
|
51
|
-
props.onChange && props.onChange("".concat(
|
|
52
|
+
props.onChange && props.onChange("".concat(child.value, ",").concat(data.value));
|
|
52
53
|
};
|
|
53
54
|
|
|
54
55
|
var _onClick = function onClick(data) {
|
|
@@ -74,7 +75,7 @@ var BizTab = function BizTab(props) {
|
|
|
74
75
|
return ChildList(item);
|
|
75
76
|
}
|
|
76
77
|
}, /*#__PURE__*/React.createElement("div", {
|
|
77
|
-
className: "".concat(classPrefix, "-item
|
|
78
|
+
className: "".concat(classPrefix, "-item").concat(item.disabled ? ' disabled' : '', " ").concat(tab && tab[0] === item.value ? 'active' : ''),
|
|
78
79
|
onClick: function onClick() {
|
|
79
80
|
return _onClick(item);
|
|
80
81
|
}
|
|
@@ -85,4 +86,7 @@ var BizTab = function BizTab(props) {
|
|
|
85
86
|
}));
|
|
86
87
|
};
|
|
87
88
|
|
|
88
|
-
|
|
89
|
+
StyleList.defaultProps = {
|
|
90
|
+
options: []
|
|
91
|
+
};
|
|
92
|
+
export default StyleList;
|
|
File without changes
|
|
@@ -10,51 +10,70 @@ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Sy
|
|
|
10
10
|
|
|
11
11
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
12
12
|
|
|
13
|
-
import React, {
|
|
14
|
-
import
|
|
15
|
-
import {
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
13
|
+
import React, { useState } from 'react';
|
|
14
|
+
import { BizAddToPanel } from '@zgfe/business-lib';
|
|
15
|
+
import { Button } from 'antd';
|
|
16
|
+
var chartTypes = [{
|
|
17
|
+
label: '趋势图',
|
|
18
|
+
value: 'line',
|
|
19
|
+
icon: 'qushitu1'
|
|
20
|
+
}, {
|
|
21
|
+
label: '汇总图',
|
|
22
|
+
value: 'bar',
|
|
23
|
+
icon: 'huizongtu'
|
|
24
|
+
}, {
|
|
25
|
+
label: '地图',
|
|
26
|
+
value: 'map',
|
|
27
|
+
icon: 'ditu',
|
|
28
|
+
disabled: true
|
|
29
|
+
}, {
|
|
30
|
+
label: '表格',
|
|
31
|
+
value: 'table',
|
|
32
|
+
icon: 'biaoge',
|
|
33
|
+
children: [{
|
|
34
|
+
label: '趋势图',
|
|
35
|
+
value: 'line',
|
|
36
|
+
icon: 'qushitu1'
|
|
37
|
+
}, {
|
|
38
|
+
label: '汇总图',
|
|
39
|
+
value: 'bar',
|
|
40
|
+
icon: 'huizongtu'
|
|
41
|
+
}]
|
|
42
|
+
}, {
|
|
43
|
+
label: '分数',
|
|
44
|
+
value: 'fraction',
|
|
45
|
+
icon: 'fenshu'
|
|
46
|
+
}];
|
|
47
|
+
var defaultValue = {
|
|
48
|
+
panel: {
|
|
49
|
+
id: 52397,
|
|
50
|
+
name: '默认看板',
|
|
51
|
+
open_type: 1
|
|
52
|
+
},
|
|
53
|
+
name: '嗯嗯',
|
|
54
|
+
chartType: 'line',
|
|
55
|
+
showList: 'dynamic'
|
|
56
|
+
};
|
|
57
|
+
export default (function () {
|
|
58
|
+
var _useState = useState(false),
|
|
24
59
|
_useState2 = _slicedToArray(_useState, 2),
|
|
25
|
-
|
|
26
|
-
|
|
60
|
+
showDialog = _useState2[0],
|
|
61
|
+
setShowDialog = _useState2[1];
|
|
27
62
|
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
63
|
+
return /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(Button, {
|
|
64
|
+
onClick: function onClick() {
|
|
65
|
+
setShowDialog(true);
|
|
66
|
+
}
|
|
67
|
+
}, "\u6DFB\u52A0\u5230\u770B\u677F"), showDialog && /*#__PURE__*/React.createElement(BizAddToPanel, {
|
|
68
|
+
defaultValue: defaultValue,
|
|
69
|
+
type: "edit",
|
|
70
|
+
params: {},
|
|
71
|
+
styleOptions: chartTypes,
|
|
72
|
+
onCancel: function onCancel() {
|
|
73
|
+
setShowDialog(false);
|
|
74
|
+
},
|
|
75
|
+
onOk: function onOk() {
|
|
76
|
+
setShowDialog(false);
|
|
32
77
|
}
|
|
33
|
-
}, []);
|
|
34
|
-
return /*#__PURE__*/React.createElement("div", {
|
|
35
|
-
className: classPrefix
|
|
36
|
-
}, options && options.map(function (item) {
|
|
37
|
-
return /*#__PURE__*/React.createElement("div", {
|
|
38
|
-
key: item.id,
|
|
39
|
-
className: "".concat(classPrefix, "-item ").concat(selectList === item.id ? 'active' : ''),
|
|
40
|
-
onClick: function onClick() {
|
|
41
|
-
setSelectList(function () {
|
|
42
|
-
return item.id;
|
|
43
|
-
});
|
|
44
|
-
onChange && onChange(item.id);
|
|
45
|
-
}
|
|
46
|
-
}, /*#__PURE__*/React.createElement("div", {
|
|
47
|
-
className: "".concat(classPrefix, "-title")
|
|
48
|
-
}, item.icon && /*#__PURE__*/React.createElement(IconFont, {
|
|
49
|
-
className: "".concat(classPrefix, "-icon"),
|
|
50
|
-
type: item.icon
|
|
51
|
-
}), item.title), /*#__PURE__*/React.createElement("div", {
|
|
52
|
-
className: "".concat(classPrefix, "-content")
|
|
53
|
-
}, item.content));
|
|
54
78
|
}));
|
|
55
|
-
};
|
|
56
|
-
|
|
57
|
-
BizList.defaultProps = {
|
|
58
|
-
options: typeMenus
|
|
59
|
-
};
|
|
60
|
-
export default BizList;
|
|
79
|
+
});
|
|
File without changes
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
2
|
+
|
|
3
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
4
|
+
|
|
5
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
6
|
+
|
|
7
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
8
|
+
|
|
9
|
+
function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
|
|
10
|
+
|
|
11
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
12
|
+
|
|
13
|
+
import React, { useState } from 'react';
|
|
14
|
+
import { BizAddToPanel } from '@zgfe/business-lib';
|
|
15
|
+
import { Button } from 'antd';
|
|
16
|
+
var chartTypes = [{
|
|
17
|
+
label: '趋势图',
|
|
18
|
+
value: 'line',
|
|
19
|
+
icon: 'qushitu1'
|
|
20
|
+
}, {
|
|
21
|
+
label: '汇总图',
|
|
22
|
+
value: 'bar',
|
|
23
|
+
icon: 'huizongtu'
|
|
24
|
+
}, {
|
|
25
|
+
label: '地图',
|
|
26
|
+
value: 'map',
|
|
27
|
+
icon: 'ditu',
|
|
28
|
+
disabled: true
|
|
29
|
+
}, {
|
|
30
|
+
label: '表格',
|
|
31
|
+
value: 'table',
|
|
32
|
+
icon: 'biaoge',
|
|
33
|
+
children: [{
|
|
34
|
+
label: '趋势图',
|
|
35
|
+
value: 'line',
|
|
36
|
+
icon: 'qushitu1'
|
|
37
|
+
}, {
|
|
38
|
+
label: '汇总图',
|
|
39
|
+
value: 'bar',
|
|
40
|
+
icon: 'huizongtu'
|
|
41
|
+
}]
|
|
42
|
+
}, {
|
|
43
|
+
label: '分数',
|
|
44
|
+
value: 'fraction',
|
|
45
|
+
icon: 'fenshu'
|
|
46
|
+
}];
|
|
47
|
+
var defaultValue = {
|
|
48
|
+
panel: {
|
|
49
|
+
id: 52397,
|
|
50
|
+
name: '默认看板',
|
|
51
|
+
open_type: 1
|
|
52
|
+
},
|
|
53
|
+
name: '嗯嗯',
|
|
54
|
+
chartType: 'line',
|
|
55
|
+
showList: 'dynamic'
|
|
56
|
+
};
|
|
57
|
+
export default (function () {
|
|
58
|
+
var _useState = useState(false),
|
|
59
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
60
|
+
showDialog = _useState2[0],
|
|
61
|
+
setShowDialog = _useState2[1];
|
|
62
|
+
|
|
63
|
+
return /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(Button, {
|
|
64
|
+
onClick: function onClick() {
|
|
65
|
+
setShowDialog(true);
|
|
66
|
+
}
|
|
67
|
+
}, "\u6DFB\u52A0\u5230\u770B\u677F"), showDialog && /*#__PURE__*/React.createElement(BizAddToPanel, {
|
|
68
|
+
defaultValue: defaultValue,
|
|
69
|
+
params: {},
|
|
70
|
+
styleOptions: chartTypes,
|
|
71
|
+
onCancel: function onCancel() {
|
|
72
|
+
setShowDialog(false);
|
|
73
|
+
},
|
|
74
|
+
onOk: function onOk() {
|
|
75
|
+
setShowDialog(false);
|
|
76
|
+
}
|
|
77
|
+
}));
|
|
78
|
+
});
|
|
@@ -0,0 +1,233 @@
|
|
|
1
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
2
|
+
|
|
3
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
4
|
+
|
|
5
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
6
|
+
|
|
7
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
8
|
+
|
|
9
|
+
function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
|
|
10
|
+
|
|
11
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
12
|
+
|
|
13
|
+
import { Button, Form, Input, notification, Skeleton } from 'antd';
|
|
14
|
+
import React, { useContext, useEffect, useRef, useState } from 'react';
|
|
15
|
+
import BizDialog from '../dialog';
|
|
16
|
+
import BizSelect from '../select';
|
|
17
|
+
import './styles/index.less';
|
|
18
|
+
import StyleList from './components/styleList';
|
|
19
|
+
import RadioGroup from './components/radioGroup';
|
|
20
|
+
import IconFont from '../icon/iconFont';
|
|
21
|
+
import AddPanel from './components/addPanel';
|
|
22
|
+
import request from '../utils/ajax';
|
|
23
|
+
import Apis from '../constants/apis';
|
|
24
|
+
import BizGlobalDataContext from '../context';
|
|
25
|
+
import _ from 'lodash';
|
|
26
|
+
export var classPrefix = 'biz-addtopanel';
|
|
27
|
+
|
|
28
|
+
var BizAddToPanel = function BizAddToPanel(props) {
|
|
29
|
+
var refForm = useRef();
|
|
30
|
+
|
|
31
|
+
var _useState = useState(false),
|
|
32
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
33
|
+
addMode = _useState2[0],
|
|
34
|
+
setAddMode = _useState2[1];
|
|
35
|
+
|
|
36
|
+
var _useState3 = useState([]),
|
|
37
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
38
|
+
groupList = _useState4[0],
|
|
39
|
+
setGroupList = _useState4[1];
|
|
40
|
+
|
|
41
|
+
var _useState5 = useState(),
|
|
42
|
+
_useState6 = _slicedToArray(_useState5, 2),
|
|
43
|
+
formData = _useState6[0],
|
|
44
|
+
setFormData = _useState6[1];
|
|
45
|
+
|
|
46
|
+
var _useState7 = useState(true),
|
|
47
|
+
_useState8 = _slicedToArray(_useState7, 2),
|
|
48
|
+
ready = _useState8[0],
|
|
49
|
+
setReady = _useState8[1];
|
|
50
|
+
|
|
51
|
+
var _useState9 = useState(false),
|
|
52
|
+
_useState10 = _slicedToArray(_useState9, 2),
|
|
53
|
+
loading = _useState10[0],
|
|
54
|
+
setLoading = _useState10[1];
|
|
55
|
+
|
|
56
|
+
var _useContext = useContext(BizGlobalDataContext),
|
|
57
|
+
currentApp = _useContext.currentApp;
|
|
58
|
+
|
|
59
|
+
useEffect(function () {
|
|
60
|
+
queryGroups();
|
|
61
|
+
|
|
62
|
+
if (props.defaultValue) {
|
|
63
|
+
setFormData(props.defaultValue);
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
setReady(false);
|
|
67
|
+
}, []);
|
|
68
|
+
|
|
69
|
+
function queryGroups() {
|
|
70
|
+
request(Apis.queryPanelGroup, {
|
|
71
|
+
method: 'post',
|
|
72
|
+
data: {
|
|
73
|
+
appId: currentApp === null || currentApp === void 0 ? void 0 : currentApp.appId,
|
|
74
|
+
platform: (currentApp === null || currentApp === void 0 ? void 0 : currentApp.platform) || 0
|
|
75
|
+
}
|
|
76
|
+
}).then(function (res) {
|
|
77
|
+
if (!res) {
|
|
78
|
+
notification.error({
|
|
79
|
+
message: '获取看板列表失败'
|
|
80
|
+
});
|
|
81
|
+
return;
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
setGroupList(res.panels);
|
|
85
|
+
});
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
function toCreatePanel() {
|
|
89
|
+
var _refForm$current;
|
|
90
|
+
|
|
91
|
+
(_refForm$current = refForm.current) === null || _refForm$current === void 0 ? void 0 : _refForm$current.resetFields(['panel']);
|
|
92
|
+
setAddMode(true);
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
function onBack() {
|
|
96
|
+
var _refForm$current2;
|
|
97
|
+
|
|
98
|
+
(_refForm$current2 = refForm.current) === null || _refForm$current2 === void 0 ? void 0 : _refForm$current2.resetFields(['panel']);
|
|
99
|
+
setAddMode(false);
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
function onAdd() {
|
|
103
|
+
var _refForm$current3;
|
|
104
|
+
|
|
105
|
+
(_refForm$current3 = refForm.current) === null || _refForm$current3 === void 0 ? void 0 : _refForm$current3.submit();
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
function onSubmit(form) {
|
|
109
|
+
setLoading(true);
|
|
110
|
+
|
|
111
|
+
var searchParam = _.cloneDeep(props.params);
|
|
112
|
+
|
|
113
|
+
if (form.showList) {
|
|
114
|
+
searchParam.chosen_data = form.showList === 'dynamic' ? [] : props.showList;
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
searchParam.chartType = form.chartType;
|
|
118
|
+
var data = {
|
|
119
|
+
appId: currentApp === null || currentApp === void 0 ? void 0 : currentApp.appId,
|
|
120
|
+
platform: (currentApp === null || currentApp === void 0 ? void 0 : currentApp.platform) || 0,
|
|
121
|
+
name: form.name,
|
|
122
|
+
panelId: form.panel.id,
|
|
123
|
+
panelName: form.panel.name,
|
|
124
|
+
openType: form.panel.open_type,
|
|
125
|
+
webData: searchParam,
|
|
126
|
+
mobileData: searchParam
|
|
127
|
+
};
|
|
128
|
+
request(Apis.addPanel, {
|
|
129
|
+
method: 'post',
|
|
130
|
+
data: data
|
|
131
|
+
}).then(function () {
|
|
132
|
+
setLoading(false);
|
|
133
|
+
notification.success({
|
|
134
|
+
message: props.type === 'edit' ? '保存' : '添加成功'
|
|
135
|
+
});
|
|
136
|
+
if (props.onOk) props.onOk();
|
|
137
|
+
}).catch(function () {
|
|
138
|
+
setLoading(false);
|
|
139
|
+
});
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
return /*#__PURE__*/React.createElement(BizDialog, {
|
|
143
|
+
visible: true,
|
|
144
|
+
title: props.type === 'edit' ? '修改当前看板指标' : '向看板添加指标',
|
|
145
|
+
width: 520,
|
|
146
|
+
onCancel: props.onCancel,
|
|
147
|
+
onOk: onAdd,
|
|
148
|
+
confirmLoading: loading
|
|
149
|
+
}, /*#__PURE__*/React.createElement(Skeleton, {
|
|
150
|
+
loading: ready
|
|
151
|
+
}, /*#__PURE__*/React.createElement(Form, {
|
|
152
|
+
ref: refForm,
|
|
153
|
+
onFinish: onSubmit,
|
|
154
|
+
initialValues: formData,
|
|
155
|
+
requiredMark: false
|
|
156
|
+
}, /*#__PURE__*/React.createElement(Form.Item, {
|
|
157
|
+
label: "\u770B\u677F",
|
|
158
|
+
name: "panel",
|
|
159
|
+
hidden: props.type === 'edit',
|
|
160
|
+
rules: [{
|
|
161
|
+
validator: function validator(_, value) {
|
|
162
|
+
if (!value || !/\S+/.test(value.name)) return Promise.reject("\u8BF7".concat(addMode ? '输入' : '选择', "\u770B\u677F!"));
|
|
163
|
+
if (!/^[\S\s]{1,20}$/.test(value.name)) return Promise.reject('看板名称最多为20个字符!');
|
|
164
|
+
return Promise.resolve();
|
|
165
|
+
}
|
|
166
|
+
}]
|
|
167
|
+
}, addMode ? /*#__PURE__*/React.createElement(AddPanel, {
|
|
168
|
+
onBack: onBack
|
|
169
|
+
}) : /*#__PURE__*/React.createElement(BizSelect, {
|
|
170
|
+
options: groupList,
|
|
171
|
+
enableSearch: true,
|
|
172
|
+
placeholder: "\u9009\u62E9\u770B\u677F",
|
|
173
|
+
keyField: "id",
|
|
174
|
+
labelField: "name",
|
|
175
|
+
dropdownExtra: /*#__PURE__*/React.createElement(Button, {
|
|
176
|
+
className: "".concat(classPrefix, "-btn-add"),
|
|
177
|
+
type: "ghost",
|
|
178
|
+
onClick: toCreatePanel
|
|
179
|
+
}, /*#__PURE__*/React.createElement(IconFont, {
|
|
180
|
+
className: "".concat(classPrefix, "-icon-add"),
|
|
181
|
+
type: 'tianjia1'
|
|
182
|
+
}), " \u521B\u5EFA\u770B\u677F")
|
|
183
|
+
})), /*#__PURE__*/React.createElement(Form.Item, {
|
|
184
|
+
label: "\u540D\u79F0",
|
|
185
|
+
name: "name",
|
|
186
|
+
hidden: props.type === 'edit',
|
|
187
|
+
rules: [{
|
|
188
|
+
validator: function validator(_, value) {
|
|
189
|
+
if (!value || !/\S+/.test(value)) return Promise.reject('请输入指标名称!');
|
|
190
|
+
if (!/^[\S\s]{1,20}$/.test(value)) return Promise.reject('指标名称最多为20个字符!');
|
|
191
|
+
return Promise.resolve();
|
|
192
|
+
}
|
|
193
|
+
}]
|
|
194
|
+
}, /*#__PURE__*/React.createElement(Input, {
|
|
195
|
+
placeholder: "\u6307\u6807\u540D\u79F0",
|
|
196
|
+
size: "large",
|
|
197
|
+
allowClear: {
|
|
198
|
+
clearIcon: /*#__PURE__*/React.createElement(IconFont, {
|
|
199
|
+
type: 'qingchu'
|
|
200
|
+
})
|
|
201
|
+
}
|
|
202
|
+
})), /*#__PURE__*/React.createElement(Form.Item, {
|
|
203
|
+
label: "\u6837\u5F0F",
|
|
204
|
+
name: "chartType",
|
|
205
|
+
rules: [{
|
|
206
|
+
required: true,
|
|
207
|
+
message: '请选择样式'
|
|
208
|
+
}]
|
|
209
|
+
}, /*#__PURE__*/React.createElement(StyleList, {
|
|
210
|
+
options: props.styleOptions
|
|
211
|
+
})), /*#__PURE__*/React.createElement(Form.Item, {
|
|
212
|
+
noStyle: true,
|
|
213
|
+
shouldUpdate: true
|
|
214
|
+
}, function (_ref) {
|
|
215
|
+
var getFieldValue = _ref.getFieldValue;
|
|
216
|
+
var type = getFieldValue('chartType');
|
|
217
|
+
return type === 'line' || type === 'bar' ? /*#__PURE__*/React.createElement(Form.Item, {
|
|
218
|
+
label: "\u663E\u793A",
|
|
219
|
+
name: "showList",
|
|
220
|
+
rules: [{
|
|
221
|
+
required: true,
|
|
222
|
+
message: '请选择显示'
|
|
223
|
+
}]
|
|
224
|
+
}, /*#__PURE__*/React.createElement(RadioGroup, {
|
|
225
|
+
options: props.showOptions
|
|
226
|
+
})) : null;
|
|
227
|
+
}))));
|
|
228
|
+
};
|
|
229
|
+
|
|
230
|
+
BizAddToPanel.defaultProps = {
|
|
231
|
+
showList: []
|
|
232
|
+
};
|
|
233
|
+
export default BizAddToPanel;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
@import '../../assets/styles/inner.less';
|
|
2
|
+
|
|
3
|
+
.biz-addpanel {
|
|
4
|
+
&-input-row {
|
|
5
|
+
display: flex;
|
|
6
|
+
align-items: center;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
&-switch {
|
|
10
|
+
margin-left: 8px;
|
|
11
|
+
cursor: pointer;
|
|
12
|
+
|
|
13
|
+
&:hover {
|
|
14
|
+
color: @primary-color;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
&-icon-add {
|
|
19
|
+
cursor: pointer;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
&-radio {
|
|
23
|
+
margin-top: 12px;
|
|
24
|
+
}
|
|
25
|
+
}
|