@zgfe/modules-attribution 1.0.1-alpha.0
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/README.md +35 -0
- package/es/components/common/index.d.ts +6 -0
- package/es/components/common/index.js +17 -0
- package/es/components/common/styles/index.less +27 -0
- package/es/components/index.d.ts +5 -0
- package/es/components/index.js +5 -0
- package/es/components/option/index.d.ts +5 -0
- package/es/components/option/index.js +134 -0
- package/es/components/option/styles/index.less +17 -0
- package/es/components/option/types.d.ts +8 -0
- package/es/components/option/types.js +1 -0
- package/es/components/searchTime/index.d.ts +5 -0
- package/es/components/searchTime/index.js +41 -0
- package/es/components/searchTime/styles/index.less +19 -0
- package/es/components/searchTime/types.d.ts +8 -0
- package/es/components/searchTime/types.js +1 -0
- package/es/components/tableList/index.d.ts +8 -0
- package/es/components/tableList/index.js +23 -0
- package/es/components/tableList/styles/index.less +7 -0
- package/es/components/title/index.d.ts +5 -0
- package/es/components/title/index.js +187 -0
- package/es/components/title/searchTitle.d.ts +7 -0
- package/es/components/title/searchTitle.js +47 -0
- package/es/components/title/styles/index.less +83 -0
- package/es/components/title/styles/search.less +27 -0
- package/es/components/title/types.d.ts +7 -0
- package/es/components/title/types.js +1 -0
- package/es/constants/apis.d.ts +10 -0
- package/es/constants/apis.js +10 -0
- package/es/constants/chart.d.ts +2 -0
- package/es/constants/chart.js +24 -0
- package/es/constants/color.d.ts +1 -0
- package/es/constants/color.js +1 -0
- package/es/constants/fields.d.ts +146 -0
- package/es/constants/fields.js +179 -0
- package/es/constants/index.d.ts +6 -0
- package/es/constants/index.js +6 -0
- package/es/constants/initData.d.ts +17 -0
- package/es/constants/initData.js +24 -0
- package/es/index.d.ts +3 -0
- package/es/index.js +2 -0
- package/es/modules/content/index.d.ts +5 -0
- package/es/modules/content/index.js +125 -0
- package/es/modules/content/styles/index.less +7 -0
- package/es/modules/content/types.d.ts +8 -0
- package/es/modules/content/types.js +1 -0
- package/es/modules/content/utils.d.ts +8 -0
- package/es/modules/content/utils.js +192 -0
- package/es/modules/home/demo/create.d.ts +2 -0
- package/es/modules/home/demo/create.js +53 -0
- package/es/modules/home/demo/edit.d.ts +2 -0
- package/es/modules/home/demo/edit.js +190 -0
- package/es/modules/home/demo/index.d.ts +3 -0
- package/es/modules/home/demo/index.js +51 -0
- package/es/modules/home/demo/scene.d.ts +2 -0
- package/es/modules/home/demo/scene.js +74 -0
- package/es/modules/home/demo/styles/index.less +33 -0
- package/es/modules/home/index.d.ts +5 -0
- package/es/modules/home/index.js +150 -0
- package/es/modules/home/styles/index.less +63 -0
- package/es/modules/home/types.d.ts +20 -0
- package/es/modules/home/types.js +1 -0
- package/es/modules/searchPanel/components/attributableEvents.d.ts +4 -0
- package/es/modules/searchPanel/components/attributableEvents.js +172 -0
- package/es/modules/searchPanel/components/globalAttribute.d.ts +8 -0
- package/es/modules/searchPanel/components/globalAttribute.js +58 -0
- package/es/modules/searchPanel/components/index.d.ts +4 -0
- package/es/modules/searchPanel/components/index.js +21 -0
- package/es/modules/searchPanel/components/targetEvent.d.ts +4 -0
- package/es/modules/searchPanel/components/targetEvent.js +149 -0
- package/es/modules/searchPanel/demo/index.d.ts +2 -0
- package/es/modules/searchPanel/demo/index.js +28 -0
- package/es/modules/searchPanel/index.d.ts +6 -0
- package/es/modules/searchPanel/index.js +316 -0
- package/es/modules/searchPanel/styles/index.less +202 -0
- package/es/modules/searchPanel/types.d.ts +31 -0
- package/es/modules/searchPanel/types.js +1 -0
- package/es/modules/searchPanel/utils.d.ts +5 -0
- package/es/modules/searchPanel/utils.js +139 -0
- package/es/style/image/noData.png +0 -0
- package/es/style/image/ring.svg +9 -0
- package/es/style/index.less +47 -0
- package/es/style/theme.d.ts +15 -0
- package/es/style/theme.js +14 -0
- package/es/types.d.ts +62 -0
- package/es/types.js +2 -0
- package/es/utils/ajaxConfig.d.ts +8 -0
- package/es/utils/ajaxConfig.js +40 -0
- package/es/utils/request.d.ts +3 -0
- package/es/utils/request.js +5 -0
- package/es/utils/transfer.d.ts +65 -0
- package/es/utils/transfer.js +173 -0
- package/es/utils/util.d.ts +32 -0
- package/es/utils/util.js +139 -0
- package/package.json +54 -0
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
2
|
+
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."); }
|
|
3
|
+
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); }
|
|
4
|
+
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; }
|
|
5
|
+
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; }
|
|
6
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
7
|
+
import React, { useEffect, useRef, useState } from 'react';
|
|
8
|
+
import { BizAttrConditionGroup, BizEventSelector, IconFont } from '@zgfe/business-lib';
|
|
9
|
+
import _ from 'lodash';
|
|
10
|
+
import { Select, Tooltip, message } from 'antd';
|
|
11
|
+
var TargetEvent = function TargetEvent(props) {
|
|
12
|
+
var value = props.value,
|
|
13
|
+
verify = props.verify,
|
|
14
|
+
setAttrTargetCount = props.setAttrTargetCount,
|
|
15
|
+
showOverview = props.showOverview;
|
|
16
|
+
var _useState = useState(),
|
|
17
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
18
|
+
targetData = _useState2[0],
|
|
19
|
+
setTargetData = _useState2[1];
|
|
20
|
+
var _useState3 = useState(),
|
|
21
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
22
|
+
filters = _useState4[0],
|
|
23
|
+
setFilters = _useState4[1];
|
|
24
|
+
var _useState5 = useState(0),
|
|
25
|
+
_useState6 = _slicedToArray(_useState5, 2),
|
|
26
|
+
count = _useState6[0],
|
|
27
|
+
setCount = _useState6[1];
|
|
28
|
+
var _useState7 = useState(false),
|
|
29
|
+
_useState8 = _slicedToArray(_useState7, 2),
|
|
30
|
+
isAdd = _useState8[0],
|
|
31
|
+
setIsAdd = _useState8[1];
|
|
32
|
+
var conditionRef = useRef(null);
|
|
33
|
+
var _useState9 = useState(-1),
|
|
34
|
+
_useState10 = _slicedToArray(_useState9, 2),
|
|
35
|
+
eventId = _useState10[0],
|
|
36
|
+
setEventId = _useState10[1];
|
|
37
|
+
useEffect(function () {
|
|
38
|
+
if (value) {
|
|
39
|
+
var _value$filters;
|
|
40
|
+
console.log(123);
|
|
41
|
+
setFilters(value.filters);
|
|
42
|
+
if ((_value$filters = value.filters) === null || _value$filters === void 0 ? void 0 : _value$filters.conditions) {
|
|
43
|
+
setCount(value.filters.conditions.length);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
}, []);
|
|
47
|
+
useEffect(function () {
|
|
48
|
+
console.log('verify', verify);
|
|
49
|
+
}, [verify]);
|
|
50
|
+
var onChangeFilters = function onChangeFilters(data) {
|
|
51
|
+
console.log('归因事件-2', data);
|
|
52
|
+
setFilters(data);
|
|
53
|
+
onChangeHandle(targetData, data);
|
|
54
|
+
};
|
|
55
|
+
var onAdd = function onAdd() {
|
|
56
|
+
if (targetData === undefined) {
|
|
57
|
+
message.error('请先选择目标事件');
|
|
58
|
+
return;
|
|
59
|
+
}
|
|
60
|
+
if (count >= 5) {
|
|
61
|
+
message.error('最多可添加5条属性筛选');
|
|
62
|
+
return;
|
|
63
|
+
}
|
|
64
|
+
setIsAdd(true);
|
|
65
|
+
setTimeout(function () {
|
|
66
|
+
conditionRef.current.add();
|
|
67
|
+
}, 0);
|
|
68
|
+
};
|
|
69
|
+
var onChangeTarget = function onChangeTarget(target) {
|
|
70
|
+
var _target$event;
|
|
71
|
+
console.log('目标事件变更', target);
|
|
72
|
+
setTargetData(target);
|
|
73
|
+
setEventId(target === null || target === void 0 ? void 0 : (_target$event = target.event) === null || _target$event === void 0 ? void 0 : _target$event.id);
|
|
74
|
+
var filterData = _.cloneDeep(filters);
|
|
75
|
+
onChangeHandle(target, filterData);
|
|
76
|
+
};
|
|
77
|
+
useEffect(function () {
|
|
78
|
+
console.log(1111111111, targetData);
|
|
79
|
+
}, [targetData]);
|
|
80
|
+
useEffect(function () {
|
|
81
|
+
console.log('判断提交按钮是否可点击-123', count);
|
|
82
|
+
setAttrTargetCount(count);
|
|
83
|
+
setTimeout(function () {
|
|
84
|
+
onChangeHandle(targetData, filters);
|
|
85
|
+
}, 0);
|
|
86
|
+
}, [count]);
|
|
87
|
+
var onChangeHandle = function onChangeHandle(reason, filterData) {
|
|
88
|
+
console.log('变动了', reason, filterData);
|
|
89
|
+
if (props.onChange) {
|
|
90
|
+
var _reason$event;
|
|
91
|
+
if (!reason || !reason.event || !((_reason$event = reason.event) === null || _reason$event === void 0 ? void 0 : _reason$event.id)) return;
|
|
92
|
+
var event = reason.event;
|
|
93
|
+
var data = {
|
|
94
|
+
eventId: event === null || event === void 0 ? void 0 : event.id,
|
|
95
|
+
eventName: (event === null || event === void 0 ? void 0 : event.alias) || (event === null || event === void 0 ? void 0 : event.name),
|
|
96
|
+
filters: filterData
|
|
97
|
+
};
|
|
98
|
+
props.onChange(data);
|
|
99
|
+
}
|
|
100
|
+
};
|
|
101
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
102
|
+
className: "target-events-box"
|
|
103
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
104
|
+
className: "selector-content"
|
|
105
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
106
|
+
className: "".concat(verify && targetData === undefined ? 'verify-error' : '')
|
|
107
|
+
}, /*#__PURE__*/React.createElement(BizEventSelector, {
|
|
108
|
+
showBuiltInTarget: true,
|
|
109
|
+
showAllEvent: showOverview,
|
|
110
|
+
popupContainer: false,
|
|
111
|
+
defaultSelectAble: false,
|
|
112
|
+
onChange: onChangeTarget
|
|
113
|
+
})), /*#__PURE__*/React.createElement(Select, {
|
|
114
|
+
defaultValue: 1,
|
|
115
|
+
style: {
|
|
116
|
+
width: 88
|
|
117
|
+
},
|
|
118
|
+
options: [{
|
|
119
|
+
value: 1,
|
|
120
|
+
label: '总次数'
|
|
121
|
+
}],
|
|
122
|
+
suffixIcon: /*#__PURE__*/React.createElement(IconFont, {
|
|
123
|
+
type: "xiangxia",
|
|
124
|
+
style: {
|
|
125
|
+
color: '#021429'
|
|
126
|
+
}
|
|
127
|
+
})
|
|
128
|
+
}), /*#__PURE__*/React.createElement(Tooltip, {
|
|
129
|
+
placement: "top",
|
|
130
|
+
title: '添加属性筛选'
|
|
131
|
+
}, /*#__PURE__*/React.createElement(IconFont, {
|
|
132
|
+
className: "".concat(count >= 5 || targetData === undefined ? 'disable' : ''),
|
|
133
|
+
type: "shaixuan",
|
|
134
|
+
onClick: function onClick() {
|
|
135
|
+
return onAdd();
|
|
136
|
+
}
|
|
137
|
+
}))), verify && targetData === undefined && /*#__PURE__*/React.createElement("div", {
|
|
138
|
+
className: "error-tips"
|
|
139
|
+
}, "\u8BF7\u9009\u62E9\u76EE\u6807\u4E8B\u4EF6"), /*#__PURE__*/React.createElement("div", null, (filters || isAdd) && /*#__PURE__*/React.createElement(BizAttrConditionGroup, {
|
|
140
|
+
ref: conditionRef,
|
|
141
|
+
value: filters,
|
|
142
|
+
enableEventProp: true,
|
|
143
|
+
enableDelete: true,
|
|
144
|
+
eventIdList: [eventId],
|
|
145
|
+
onChange: onChangeFilters,
|
|
146
|
+
onConditionsCount: setCount
|
|
147
|
+
})));
|
|
148
|
+
};
|
|
149
|
+
export default TargetEvent;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { DemoWrapper } from '@zgfe/business-lib';
|
|
2
|
+
import React from 'react';
|
|
3
|
+
import SearchPanel from '..';
|
|
4
|
+
var defaultValue = {
|
|
5
|
+
targets: [{
|
|
6
|
+
type: 'event',
|
|
7
|
+
alias: '事件概览',
|
|
8
|
+
eventId: -100,
|
|
9
|
+
eventName: '事件概览',
|
|
10
|
+
eventGroupId: 0,
|
|
11
|
+
analysisDimension: {
|
|
12
|
+
analysisIndex: 'number'
|
|
13
|
+
}
|
|
14
|
+
}],
|
|
15
|
+
userGroup: [0]
|
|
16
|
+
};
|
|
17
|
+
export default (function () {
|
|
18
|
+
var onChange = function onChange(data) {
|
|
19
|
+
console.log(data);
|
|
20
|
+
};
|
|
21
|
+
return /*#__PURE__*/React.createElement(DemoWrapper, {
|
|
22
|
+
needMeta: true,
|
|
23
|
+
defaultApp: 177
|
|
24
|
+
}, /*#__PURE__*/React.createElement(SearchPanel, {
|
|
25
|
+
defaultValue: defaultValue,
|
|
26
|
+
onChange: onChange
|
|
27
|
+
}));
|
|
28
|
+
});
|
|
@@ -0,0 +1,316 @@
|
|
|
1
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
2
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
3
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
4
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
5
|
+
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."); }
|
|
6
|
+
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); }
|
|
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
|
+
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; }
|
|
9
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
10
|
+
import React, { useContext, useEffect, useState } from 'react';
|
|
11
|
+
import { IconFont, BizGlobalDataContext } from '@zgfe/business-lib';
|
|
12
|
+
import { Button, Form, Skeleton, Tooltip, Checkbox, Select, InputNumber } from 'antd';
|
|
13
|
+
import SearchContent from './components';
|
|
14
|
+
import GlobalAttribute from './components/globalAttribute';
|
|
15
|
+
import './styles/index.less';
|
|
16
|
+
import _ from 'lodash';
|
|
17
|
+
import { targetChangeCallback, submitButtonDisableHandle, removeEmptyValue, verifyHandle } from './utils';
|
|
18
|
+
import { initTarget } from '../../constants/initData';
|
|
19
|
+
import { searchFields } from '../../constants/fields';
|
|
20
|
+
import { AttributableContext } from '../../types';
|
|
21
|
+
export var classPrefix = 'mi-left-form';
|
|
22
|
+
var SearchPanel = function SearchPanel(props) {
|
|
23
|
+
var defaultValue = props.defaultValue;
|
|
24
|
+
var _useContext = useContext(AttributableContext),
|
|
25
|
+
buttonDisable = _useContext.buttonDisable,
|
|
26
|
+
setButtonDisable = _useContext.setButtonDisable;
|
|
27
|
+
console.log('defaultValue', defaultValue);
|
|
28
|
+
var _Form$useForm = Form.useForm(),
|
|
29
|
+
_Form$useForm2 = _slicedToArray(_Form$useForm, 1),
|
|
30
|
+
form = _Form$useForm2[0];
|
|
31
|
+
var _useState = useState(false),
|
|
32
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
33
|
+
otherEvent = _useState2[0],
|
|
34
|
+
setOtherEvent = _useState2[1];
|
|
35
|
+
var _useState3 = useState(true),
|
|
36
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
37
|
+
loading = _useState4[0],
|
|
38
|
+
setLoading = _useState4[1];
|
|
39
|
+
var _useState5 = useState(),
|
|
40
|
+
_useState6 = _slicedToArray(_useState5, 2),
|
|
41
|
+
formData = _useState6[0],
|
|
42
|
+
setFormData = _useState6[1];
|
|
43
|
+
var _useState7 = useState([-100]),
|
|
44
|
+
_useState8 = _slicedToArray(_useState7, 2),
|
|
45
|
+
eventIdList = _useState8[0],
|
|
46
|
+
setEventIdList = _useState8[1];
|
|
47
|
+
var _useContext2 = useContext(BizGlobalDataContext),
|
|
48
|
+
eventGroupList = _useContext2.eventGroupList;
|
|
49
|
+
var _useState9 = useState(1),
|
|
50
|
+
_useState10 = _slicedToArray(_useState9, 2),
|
|
51
|
+
windowCnt = _useState10[0],
|
|
52
|
+
setWindowCnt = _useState10[1];
|
|
53
|
+
var _useState11 = useState('day'),
|
|
54
|
+
_useState12 = _slicedToArray(_useState11, 2),
|
|
55
|
+
windowTypeUnit = _useState12[0],
|
|
56
|
+
setwindowTypeUnit = _useState12[1];
|
|
57
|
+
var _useState13 = useState(0),
|
|
58
|
+
_useState14 = _slicedToArray(_useState13, 2),
|
|
59
|
+
attrTargetCount = _useState14[0],
|
|
60
|
+
setAttrTargetCount = _useState14[1];
|
|
61
|
+
var _useState15 = useState(0),
|
|
62
|
+
_useState16 = _slicedToArray(_useState15, 2),
|
|
63
|
+
attrSourceCount = _useState16[0],
|
|
64
|
+
setAttrSourceCount = _useState16[1];
|
|
65
|
+
useEffect(function () {
|
|
66
|
+
if (defaultValue) {
|
|
67
|
+
var data = defaultValue;
|
|
68
|
+
console.log('初始化', data);
|
|
69
|
+
setFormData(data);
|
|
70
|
+
var eList = [];
|
|
71
|
+
defaultValue.targetFilters.forEach(function (target) {
|
|
72
|
+
if (target && target.eventId) {
|
|
73
|
+
eList.push(target.eventId);
|
|
74
|
+
}
|
|
75
|
+
});
|
|
76
|
+
setEventIdList(eList);
|
|
77
|
+
}
|
|
78
|
+
setLoading(false);
|
|
79
|
+
}, []);
|
|
80
|
+
var onChange = function onChange(_changedValues, allValues) {
|
|
81
|
+
console.log(666, allValues);
|
|
82
|
+
var data = _.cloneDeep(allValues);
|
|
83
|
+
if (_changedValues.targetFilters) {
|
|
84
|
+
var eList = [];
|
|
85
|
+
if (allValues.targetFilters.length) {
|
|
86
|
+
allValues.targetFilters.forEach(function (target) {
|
|
87
|
+
if (target && target.eventId) {
|
|
88
|
+
eList.push(target.eventId);
|
|
89
|
+
}
|
|
90
|
+
});
|
|
91
|
+
} else {
|
|
92
|
+
data.targetFilters = initTarget;
|
|
93
|
+
eList = [-100];
|
|
94
|
+
}
|
|
95
|
+
console.log('999', eList);
|
|
96
|
+
setEventIdList(eList);
|
|
97
|
+
var targetData = targetChangeCallback(data, eList, eventGroupList);
|
|
98
|
+
form.setFieldsValue(targetData);
|
|
99
|
+
}
|
|
100
|
+
setButtonDisable(submitButtonDisableHandle(allValues, attrSourceCount, attrTargetCount));
|
|
101
|
+
};
|
|
102
|
+
var attrChange = function attrChange(e) {
|
|
103
|
+
var reason = form.getFieldValue('reason');
|
|
104
|
+
console.log('细分属性变化:', e, reason);
|
|
105
|
+
};
|
|
106
|
+
var _useState17 = useState(false),
|
|
107
|
+
_useState18 = _slicedToArray(_useState17, 2),
|
|
108
|
+
verify = _useState18[0],
|
|
109
|
+
setVerify = _useState18[1];
|
|
110
|
+
var onFinish = function onFinish() {
|
|
111
|
+
setVerify(true);
|
|
112
|
+
form.validateFields().then(function (res) {
|
|
113
|
+
if (verifyHandle(res)) {
|
|
114
|
+
console.log('表单检验通过', res);
|
|
115
|
+
res.otherEvent = otherEvent;
|
|
116
|
+
res.windowCnt = windowCnt;
|
|
117
|
+
res.windowType = windowType === 1 ? 'day' : windowTypeUnit;
|
|
118
|
+
var finalData = removeEmptyValue(res);
|
|
119
|
+
console.log(123123, finalData);
|
|
120
|
+
props.onChange(finalData);
|
|
121
|
+
}
|
|
122
|
+
}).catch(function (e) {
|
|
123
|
+
console.log('表单检验失败', e);
|
|
124
|
+
});
|
|
125
|
+
};
|
|
126
|
+
var otherEventChange = function otherEventChange(e) {
|
|
127
|
+
setOtherEvent(e.target.checked);
|
|
128
|
+
};
|
|
129
|
+
var onReset = function onReset() {
|
|
130
|
+
setButtonDisable(true);
|
|
131
|
+
form.resetFields();
|
|
132
|
+
setVerify(false);
|
|
133
|
+
setWindowType(1);
|
|
134
|
+
};
|
|
135
|
+
var _useState19 = useState(1),
|
|
136
|
+
_useState20 = _slicedToArray(_useState19, 2),
|
|
137
|
+
windowType = _useState20[0],
|
|
138
|
+
setWindowType = _useState20[1];
|
|
139
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
140
|
+
className: classPrefix
|
|
141
|
+
}, /*#__PURE__*/React.createElement(Skeleton, {
|
|
142
|
+
loading: loading,
|
|
143
|
+
active: true,
|
|
144
|
+
paragraph: {
|
|
145
|
+
rows: 4
|
|
146
|
+
}
|
|
147
|
+
}, /*#__PURE__*/React.createElement(Form, {
|
|
148
|
+
form: form,
|
|
149
|
+
layout: "vertical",
|
|
150
|
+
initialValues: formData,
|
|
151
|
+
onValuesChange: onChange
|
|
152
|
+
}, searchFields.map(function (item) {
|
|
153
|
+
if (item.type === 'globalFilters') {
|
|
154
|
+
return /*#__PURE__*/React.createElement(Form.Item, {
|
|
155
|
+
key: item.key
|
|
156
|
+
}, /*#__PURE__*/React.createElement(Form.Item, {
|
|
157
|
+
className: "".concat(classPrefix, "-title")
|
|
158
|
+
}, item.label), /*#__PURE__*/React.createElement(Form.Item, {
|
|
159
|
+
className: "".concat(classPrefix, "-item"),
|
|
160
|
+
name: item.name
|
|
161
|
+
}, /*#__PURE__*/React.createElement(GlobalAttribute, {
|
|
162
|
+
max: item.max,
|
|
163
|
+
eventIdList: eventIdList
|
|
164
|
+
})));
|
|
165
|
+
}
|
|
166
|
+
return /*#__PURE__*/React.createElement(Form.List, {
|
|
167
|
+
name: item.name,
|
|
168
|
+
key: item.key
|
|
169
|
+
}, function (fields, _ref, index) {
|
|
170
|
+
var add = _ref.add,
|
|
171
|
+
remove = _ref.remove;
|
|
172
|
+
return /*#__PURE__*/React.createElement(Form.Item, {
|
|
173
|
+
key: "".concat(item.key, "-item-").concat(index)
|
|
174
|
+
}, /*#__PURE__*/React.createElement(Form.Item, {
|
|
175
|
+
className: "".concat(classPrefix, "-title")
|
|
176
|
+
}, item.required && /*#__PURE__*/React.createElement("span", {
|
|
177
|
+
style: {
|
|
178
|
+
color: 'red'
|
|
179
|
+
}
|
|
180
|
+
}, "* "), item.label, /*#__PURE__*/React.createElement(Tooltip, {
|
|
181
|
+
placement: "left",
|
|
182
|
+
title: item.tips
|
|
183
|
+
}, /*#__PURE__*/React.createElement(IconFont, {
|
|
184
|
+
type: "tishiicon"
|
|
185
|
+
}))), fields.map(function (field, index) {
|
|
186
|
+
return /*#__PURE__*/React.createElement(Form.Item, _objectSpread(_objectSpread({}, field), {}, {
|
|
187
|
+
key: field.key,
|
|
188
|
+
className: "".concat(classPrefix, "-item")
|
|
189
|
+
}), /*#__PURE__*/React.createElement(SearchContent, {
|
|
190
|
+
type: item.type,
|
|
191
|
+
key: field.key,
|
|
192
|
+
attrChange: attrChange,
|
|
193
|
+
enableDelete: fields.length > 1,
|
|
194
|
+
eventIdList: eventIdList,
|
|
195
|
+
allValues: formData,
|
|
196
|
+
verify: verify,
|
|
197
|
+
onDelete: function onDelete() {
|
|
198
|
+
return remove(index);
|
|
199
|
+
},
|
|
200
|
+
setAttrTargetCount: setAttrTargetCount,
|
|
201
|
+
setAttrSourceCount: setAttrSourceCount
|
|
202
|
+
}));
|
|
203
|
+
}), fields.length < item.max && /*#__PURE__*/React.createElement("div", {
|
|
204
|
+
className: "".concat(classPrefix, "-add"),
|
|
205
|
+
onClick: function onClick() {
|
|
206
|
+
return add();
|
|
207
|
+
}
|
|
208
|
+
}, /*#__PURE__*/React.createElement(IconFont, {
|
|
209
|
+
className: "".concat(classPrefix, "-add-icon"),
|
|
210
|
+
type: "tianjia1"
|
|
211
|
+
}), item.addLabel));
|
|
212
|
+
});
|
|
213
|
+
}), /*#__PURE__*/React.createElement("div", {
|
|
214
|
+
className: "".concat(classPrefix, "-otherEvent")
|
|
215
|
+
}, /*#__PURE__*/React.createElement(Checkbox, {
|
|
216
|
+
onChange: otherEventChange
|
|
217
|
+
}, "\u4E5F\u8BA1\u7B97\u5176\u4ED6\u8F6C\u5316\u4E8B\u4EF6"), /*#__PURE__*/React.createElement(Tooltip, {
|
|
218
|
+
placement: "right",
|
|
219
|
+
title: "\u5B8C\u6210\u76EE\u6807\u4E8B\u4EF6\u524D\u6CA1\u6709\u53D1\u751F\u4EFB\u4F55\u5F85\u5F52\u56E0\u4E8B\u4EF6\uFF0C\u5219\u6570\u636E\u8BB0\u4E3A\u5176\u4ED6\u8F6C\u5316\u4E8B\u4EF6"
|
|
220
|
+
}, /*#__PURE__*/React.createElement(IconFont, {
|
|
221
|
+
type: "tishiicon"
|
|
222
|
+
}))), /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("p", {
|
|
223
|
+
className: "".concat(classPrefix, "-bottom-form-title")
|
|
224
|
+
}, /*#__PURE__*/React.createElement("span", {
|
|
225
|
+
style: {
|
|
226
|
+
color: 'red'
|
|
227
|
+
}
|
|
228
|
+
}, "* "), "\u5F52\u56E0\u6A21\u578B"), /*#__PURE__*/React.createElement("div", {
|
|
229
|
+
className: "".concat(classPrefix, "-bottom-form")
|
|
230
|
+
}, /*#__PURE__*/React.createElement("p", {
|
|
231
|
+
className: "p"
|
|
232
|
+
}, "\u5206\u6790\u6A21\u578B"), /*#__PURE__*/React.createElement(Form.Item, {
|
|
233
|
+
name: "attributionType",
|
|
234
|
+
rules: [{
|
|
235
|
+
required: true,
|
|
236
|
+
message: '请选择分析模型'
|
|
237
|
+
}]
|
|
238
|
+
}, /*#__PURE__*/React.createElement(Select, {
|
|
239
|
+
className: "attributionType",
|
|
240
|
+
placeholder: "\u8BF7\u9009\u62E9",
|
|
241
|
+
style: {
|
|
242
|
+
width: 208
|
|
243
|
+
},
|
|
244
|
+
options: [{
|
|
245
|
+
value: 1,
|
|
246
|
+
label: '首次触点归因'
|
|
247
|
+
}, {
|
|
248
|
+
value: 2,
|
|
249
|
+
label: '末次触点归因'
|
|
250
|
+
}, {
|
|
251
|
+
value: 3,
|
|
252
|
+
label: '线性归因'
|
|
253
|
+
}, {
|
|
254
|
+
value: 4,
|
|
255
|
+
label: '位置归因'
|
|
256
|
+
}]
|
|
257
|
+
})), /*#__PURE__*/React.createElement("p", {
|
|
258
|
+
className: "p"
|
|
259
|
+
}, "\u5F52\u56E0\u7A97\u53E3\u671F", /*#__PURE__*/React.createElement(Tooltip, {
|
|
260
|
+
placement: "right",
|
|
261
|
+
title: "\u8DDD\u79BB\u76EE\u6807\u4E8B\u4EF6\u7684\u8F6C\u5316\u65F6\u95F4\u8303\u56F4"
|
|
262
|
+
}, /*#__PURE__*/React.createElement(IconFont, {
|
|
263
|
+
type: "tishiicon"
|
|
264
|
+
}))), /*#__PURE__*/React.createElement(Select, {
|
|
265
|
+
className: "windowType",
|
|
266
|
+
value: windowType,
|
|
267
|
+
style: {
|
|
268
|
+
width: 208
|
|
269
|
+
},
|
|
270
|
+
onChange: function onChange(e) {
|
|
271
|
+
return setWindowType(e);
|
|
272
|
+
},
|
|
273
|
+
options: [{
|
|
274
|
+
value: 1,
|
|
275
|
+
label: '当天'
|
|
276
|
+
}, {
|
|
277
|
+
value: 2,
|
|
278
|
+
label: '自定义'
|
|
279
|
+
}]
|
|
280
|
+
}), windowType === 2 && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(InputNumber, {
|
|
281
|
+
className: "windowCnt",
|
|
282
|
+
style: {
|
|
283
|
+
width: 80
|
|
284
|
+
},
|
|
285
|
+
defaultValue: 1,
|
|
286
|
+
onChange: function onChange(e) {
|
|
287
|
+
return setWindowCnt(e);
|
|
288
|
+
}
|
|
289
|
+
}), /*#__PURE__*/React.createElement(Select, {
|
|
290
|
+
defaultValue: "day",
|
|
291
|
+
style: {
|
|
292
|
+
width: 80
|
|
293
|
+
},
|
|
294
|
+
onChange: function onChange(e) {
|
|
295
|
+
return setwindowTypeUnit(e);
|
|
296
|
+
},
|
|
297
|
+
options: [{
|
|
298
|
+
value: 'day',
|
|
299
|
+
label: '天'
|
|
300
|
+
}, {
|
|
301
|
+
value: 'hour',
|
|
302
|
+
label: '小时'
|
|
303
|
+
}]
|
|
304
|
+
})))), /*#__PURE__*/React.createElement("div", {
|
|
305
|
+
className: "".concat(classPrefix, "-search-button-box")
|
|
306
|
+
}, /*#__PURE__*/React.createElement(Button, {
|
|
307
|
+
type: "primary",
|
|
308
|
+
onClick: onReset
|
|
309
|
+
}, "\u91CD\u7F6E"), /*#__PURE__*/React.createElement(Button, {
|
|
310
|
+
className: "".concat(buttonDisable ? 'disable' : ''),
|
|
311
|
+
disabled: buttonDisable,
|
|
312
|
+
type: "primary",
|
|
313
|
+
onClick: onFinish
|
|
314
|
+
}, "\u63D0\u4EA4")))));
|
|
315
|
+
};
|
|
316
|
+
export default SearchPanel;
|