@zgfe/modules-interval 1.0.0-interval.1
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 +33 -0
- package/dist/esm/assets/business/demo.css +539 -0
- package/dist/esm/assets/business/demo_index.html +3178 -0
- package/dist/esm/assets/business/iconfont.css +535 -0
- package/dist/esm/assets/business/iconfont.js +43 -0
- package/dist/esm/assets/business/iconfont.json +919 -0
- package/dist/esm/assets/business/iconfont.ttf +0 -0
- package/dist/esm/assets/business/iconfont.woff +0 -0
- package/dist/esm/assets/business/iconfont.woff2 +0 -0
- package/dist/esm/assets/icons/demo.css +539 -0
- package/dist/esm/assets/icons/demo_index.html +9618 -0
- package/dist/esm/assets/icons/iconfont.css +1655 -0
- package/dist/esm/assets/icons/iconfont.js +43 -0
- package/dist/esm/assets/icons/iconfont.json +2879 -0
- package/dist/esm/assets/icons/iconfont.ttf +0 -0
- package/dist/esm/assets/icons/iconfont.woff +0 -0
- package/dist/esm/assets/icons/iconfont.woff2 +0 -0
- package/dist/esm/assets/images/empty@2x.png +0 -0
- package/dist/esm/assets/images/empty_state.png +0 -0
- package/dist/esm/assets/images/table_nodata.png +0 -0
- package/dist/esm/components/common/index.d.ts +6 -0
- package/dist/esm/components/common/index.js +21 -0
- package/dist/esm/components/common/styles/index.less +27 -0
- package/dist/esm/components/eventFilter/index.d.ts +5 -0
- package/dist/esm/components/eventFilter/index.js +187 -0
- package/dist/esm/components/eventFilter/styles/index.less +42 -0
- package/dist/esm/components/eventFilter/types.d.ts +50 -0
- package/dist/esm/components/eventFilter/types.js +1 -0
- package/dist/esm/components/index.d.ts +5 -0
- package/dist/esm/components/index.js +5 -0
- package/dist/esm/components/renderContent/index.d.ts +5 -0
- package/dist/esm/components/renderContent/index.js +58 -0
- package/dist/esm/components/renderContent/styles/index.less +23 -0
- package/dist/esm/components/renderContent/types.d.ts +31 -0
- package/dist/esm/components/renderContent/types.js +1 -0
- package/dist/esm/components/searchPanel/index.d.ts +5 -0
- package/dist/esm/components/searchPanel/index.js +122 -0
- package/dist/esm/components/searchPanel/styles/index.less +59 -0
- package/dist/esm/components/searchPanel/types.d.ts +49 -0
- package/dist/esm/components/searchPanel/types.js +1 -0
- package/dist/esm/components/table/index.d.ts +6 -0
- package/dist/esm/components/table/index.js +199 -0
- package/dist/esm/components/table/styles/index.less +123 -0
- package/dist/esm/components/table/types.d.ts +26 -0
- package/dist/esm/components/table/types.js +1 -0
- package/dist/esm/components/topBar/index.d.ts +5 -0
- package/dist/esm/components/topBar/index.js +121 -0
- package/dist/esm/components/topBar/styles/index.less +49 -0
- package/dist/esm/components/topBar/types.d.ts +8 -0
- package/dist/esm/components/topBar/types.js +1 -0
- package/dist/esm/constants/apis.d.ts +6 -0
- package/dist/esm/constants/apis.js +7 -0
- package/dist/esm/constants/chart.d.ts +2 -0
- package/dist/esm/constants/chart.js +31 -0
- package/dist/esm/constants/color.d.ts +2 -0
- package/dist/esm/constants/color.js +9 -0
- package/dist/esm/constants/fields.d.ts +226 -0
- package/dist/esm/constants/fields.js +219 -0
- package/dist/esm/constants/index.d.ts +6 -0
- package/dist/esm/constants/index.js +6 -0
- package/dist/esm/constants/initData.d.ts +2 -0
- package/dist/esm/constants/initData.js +11 -0
- package/dist/esm/index.d.ts +4 -0
- package/dist/esm/index.js +4 -0
- package/dist/esm/modules/chart/customTooltip.d.ts +7 -0
- package/dist/esm/modules/chart/customTooltip.js +37 -0
- package/dist/esm/modules/chart/demo/data.d.ts +79 -0
- package/dist/esm/modules/chart/demo/data.js +495 -0
- package/dist/esm/modules/chart/demo/index.d.ts +3 -0
- package/dist/esm/modules/chart/demo/index.js +51 -0
- package/dist/esm/modules/chart/demo/panel.d.ts +3 -0
- package/dist/esm/modules/chart/demo/panel.js +30 -0
- package/dist/esm/modules/chart/index.d.ts +4 -0
- package/dist/esm/modules/chart/index.js +100 -0
- package/dist/esm/modules/chart/index.less +48 -0
- package/dist/esm/modules/chart/intervalChart.d.ts +4 -0
- package/dist/esm/modules/chart/intervalChart.js +136 -0
- package/dist/esm/modules/chart/types.d.ts +37 -0
- package/dist/esm/modules/chart/types.js +2 -0
- package/dist/esm/modules/content/index.d.ts +5 -0
- package/dist/esm/modules/content/index.js +272 -0
- package/dist/esm/modules/content/styles/index.less +7 -0
- package/dist/esm/modules/content/types.d.ts +29 -0
- package/dist/esm/modules/content/types.js +2 -0
- package/dist/esm/modules/content/utils.d.ts +21 -0
- package/dist/esm/modules/content/utils.js +51 -0
- package/dist/esm/modules/home/demo/create.d.ts +3 -0
- package/dist/esm/modules/home/demo/create.js +51 -0
- package/dist/esm/modules/home/demo/edit.d.ts +3 -0
- package/dist/esm/modules/home/demo/edit.js +90 -0
- package/dist/esm/modules/home/demo/index.d.ts +4 -0
- package/dist/esm/modules/home/demo/index.js +51 -0
- package/dist/esm/modules/home/demo/scene.d.ts +3 -0
- package/dist/esm/modules/home/demo/scene.js +87 -0
- package/dist/esm/modules/home/demo/styles/index.less +33 -0
- package/dist/esm/modules/home/index.d.ts +5 -0
- package/dist/esm/modules/home/index.js +141 -0
- package/dist/esm/modules/home/styles/index.less +53 -0
- package/dist/esm/modules/home/types.d.ts +69 -0
- package/dist/esm/modules/home/types.js +2 -0
- package/dist/esm/modules/topPanel/index.d.ts +5 -0
- package/dist/esm/modules/topPanel/index.js +250 -0
- package/dist/esm/modules/topPanel/styles/index.less +67 -0
- package/dist/esm/modules/topPanel/types.d.ts +54 -0
- package/dist/esm/modules/topPanel/types.js +1 -0
- package/dist/esm/style/image/noData.png +0 -0
- package/dist/esm/style/image/ring.svg +9 -0
- package/dist/esm/style/index.less +46 -0
- package/dist/esm/style/theme.d.ts +15 -0
- package/dist/esm/style/theme.js +16 -0
- package/dist/esm/types.d.ts +169 -0
- package/dist/esm/types.js +19 -0
- package/dist/esm/utils/ajaxConfig.d.ts +8 -0
- package/dist/esm/utils/ajaxConfig.js +47 -0
- package/dist/esm/utils/base64.d.ts +29 -0
- package/dist/esm/utils/base64.js +132 -0
- package/dist/esm/utils/formData.d.ts +76 -0
- package/dist/esm/utils/formData.js +258 -0
- package/dist/esm/utils/util.d.ts +66 -0
- package/dist/esm/utils/util.js +177 -0
- package/package.json +61 -0
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
|
|
2
|
+
.search-panel {
|
|
3
|
+
display: flex;
|
|
4
|
+
align-items: center;
|
|
5
|
+
justify-content: space-between;
|
|
6
|
+
height: 32px;
|
|
7
|
+
margin-bottom: 24px;
|
|
8
|
+
|
|
9
|
+
&-search-right {
|
|
10
|
+
display: flex;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
&-select {
|
|
14
|
+
width: 208px;
|
|
15
|
+
margin-left: 16px;
|
|
16
|
+
|
|
17
|
+
.biz-select-handle-input-multiple {
|
|
18
|
+
.ant-tag:not(:nth-child(-n + 3)) {
|
|
19
|
+
display: none;
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
.biz-select-option.biz-select-option-multiple:hover:not(.disabled) {
|
|
26
|
+
color: var(--1, #021429);
|
|
27
|
+
background: var(--io-i-1, #e8efff);
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
.biz-select-overlay {
|
|
31
|
+
padding: 0;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
.biz-select-list-panel {
|
|
35
|
+
display: grid;
|
|
36
|
+
gap: 8px;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
.biz-select-option {
|
|
40
|
+
padding: 0 16px;
|
|
41
|
+
border-radius: 0;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
.biz-select-option.biz-select-option-multiple.active:not(.disabled) {
|
|
45
|
+
color: var(--1, #021429);
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
.biz-select-option.biz-select-option-multiple:hover:not(.disabled) .biz-select-checkbox {
|
|
49
|
+
color: #ccd0d4;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
.biz-select-option.biz-select-option-multiple.active:hover:not(.disabled) .biz-select-checkbox {
|
|
53
|
+
color: #165dff;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
.biz-select-option.biz-select-option-multiple:active:not(.disabled) {
|
|
57
|
+
color: #165dff;
|
|
58
|
+
background: var(--io-i-1, #e8efff);
|
|
59
|
+
}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { DatePickerTypes } from '@zgfe/business-lib/es/datePicker/types';
|
|
2
|
+
import { EventChartTypes, ResponseDataProps } from '../../types';
|
|
3
|
+
import { ReactNode } from 'react';
|
|
4
|
+
/**
|
|
5
|
+
* 右边的查询组件
|
|
6
|
+
*/
|
|
7
|
+
export interface SearchPanelProps {
|
|
8
|
+
/**
|
|
9
|
+
* @description 维度类型
|
|
10
|
+
*/
|
|
11
|
+
analysisIndex?: string;
|
|
12
|
+
/**
|
|
13
|
+
* @description 维度名称
|
|
14
|
+
*/
|
|
15
|
+
analysisAttr?: string;
|
|
16
|
+
/**
|
|
17
|
+
* @description 显示设置
|
|
18
|
+
*/
|
|
19
|
+
displaySetup?: DisplaySetup[];
|
|
20
|
+
eventData?: ResponseDataProps;
|
|
21
|
+
/**
|
|
22
|
+
* 地图类型是否可选
|
|
23
|
+
*/
|
|
24
|
+
enableSelectChart?: boolean;
|
|
25
|
+
/**
|
|
26
|
+
* 时间
|
|
27
|
+
*/
|
|
28
|
+
time?: DatePickerTypes.Value;
|
|
29
|
+
/**
|
|
30
|
+
* 事件id
|
|
31
|
+
*/
|
|
32
|
+
eventId?: number;
|
|
33
|
+
/**
|
|
34
|
+
* 图表类型
|
|
35
|
+
*/
|
|
36
|
+
chartType?: EventChartTypes;
|
|
37
|
+
/**
|
|
38
|
+
* 操作node
|
|
39
|
+
*/
|
|
40
|
+
optionNode?: ReactNode;
|
|
41
|
+
/**
|
|
42
|
+
* 内容改变回调
|
|
43
|
+
*/
|
|
44
|
+
onChange?: (data: SearchPanelProps) => void;
|
|
45
|
+
}
|
|
46
|
+
export interface DisplaySetup {
|
|
47
|
+
value: number;
|
|
48
|
+
label: string;
|
|
49
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,199 @@
|
|
|
1
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
2
|
+
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; }
|
|
3
|
+
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; }
|
|
4
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
5
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
|
6
|
+
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
7
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
8
|
+
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."); }
|
|
9
|
+
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); }
|
|
10
|
+
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; }
|
|
11
|
+
function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
|
|
12
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
13
|
+
import { ajax, BizGlobalDataContext, BizTable, IconFont } from '@zgfe/business-lib';
|
|
14
|
+
import React, { useContext, useEffect, useMemo, useState } from 'react';
|
|
15
|
+
import 'highlight.js/styles/vs.css';
|
|
16
|
+
import base64 from "../../utils/base64";
|
|
17
|
+
import { Apis } from "../../constants";
|
|
18
|
+
import { message } from 'antd';
|
|
19
|
+
import { formTableData, getColumns } from "../../utils/formData";
|
|
20
|
+
import "./styles/index.less";
|
|
21
|
+
import { getValue } from "../../modules/content/utils";
|
|
22
|
+
import { EventContext } from "../../types";
|
|
23
|
+
var classPrefix = 'mi-table';
|
|
24
|
+
var EventTable = function EventTable(props) {
|
|
25
|
+
var _dataSource$app_data2;
|
|
26
|
+
var dataSource = props.dataSource,
|
|
27
|
+
searchData = props.searchData,
|
|
28
|
+
showList = props.showList;
|
|
29
|
+
// 表格数据
|
|
30
|
+
var _useState = useState([]),
|
|
31
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
32
|
+
tableData = _useState2[0],
|
|
33
|
+
setTableData = _useState2[1];
|
|
34
|
+
var _useContext = useContext(BizGlobalDataContext),
|
|
35
|
+
currentApp = _useContext.currentApp,
|
|
36
|
+
_useContext$eventGrou = _useContext.eventGroupList,
|
|
37
|
+
eventGroupList = _useContext$eventGrou === void 0 ? [] : _useContext$eventGrou,
|
|
38
|
+
eventEnvList = _useContext.eventEnvList,
|
|
39
|
+
userPropList = _useContext.userPropList;
|
|
40
|
+
var _useContext2 = useContext(EventContext),
|
|
41
|
+
panelName = _useContext2.panelName;
|
|
42
|
+
|
|
43
|
+
// 按属性排序后的数据(用于合并行)
|
|
44
|
+
var _useState3 = useState({
|
|
45
|
+
current: 1,
|
|
46
|
+
pageSize: 10
|
|
47
|
+
}),
|
|
48
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
49
|
+
pageData = _useState4[0],
|
|
50
|
+
setPageData = _useState4[1];
|
|
51
|
+
var _useState5 = useState([]),
|
|
52
|
+
_useState6 = _slicedToArray(_useState5, 2),
|
|
53
|
+
sortTable = _useState6[0],
|
|
54
|
+
setSortTable = _useState6[1];
|
|
55
|
+
// 过滤后数据
|
|
56
|
+
var _useState7 = useState([]),
|
|
57
|
+
_useState8 = _slicedToArray(_useState7, 2),
|
|
58
|
+
searchTable = _useState8[0],
|
|
59
|
+
setSearchTable = _useState8[1];
|
|
60
|
+
|
|
61
|
+
// 初始化表格表头和内容
|
|
62
|
+
useEffect(function () {
|
|
63
|
+
var sortData = formTableData(dataSource);
|
|
64
|
+
setSearchTable(sortData);
|
|
65
|
+
setSortTable(sortData);
|
|
66
|
+
setTableData(sortData === null || sortData === void 0 ? void 0 : sortData.slice(0, 10));
|
|
67
|
+
}, [dataSource]);
|
|
68
|
+
|
|
69
|
+
// 表格column
|
|
70
|
+
var columns = useMemo(function () {
|
|
71
|
+
var _dataSource$app_data;
|
|
72
|
+
var _searchData$userGroup = searchData.userGroup,
|
|
73
|
+
userGroup = _searchData$userGroup === void 0 ? [0] : _searchData$userGroup;
|
|
74
|
+
|
|
75
|
+
// // 用户钻取
|
|
76
|
+
// const onClickToDetail = (item: EventProps.ColumnsDataType, time: string, count: number) => {
|
|
77
|
+
// let _time = time.split('|');
|
|
78
|
+
// let groupValue = '';
|
|
79
|
+
// // 有细分属性
|
|
80
|
+
// if (searchData.dimension && item.dimension) {
|
|
81
|
+
// groupValue = item.dimension;
|
|
82
|
+
// } else {
|
|
83
|
+
// // 有事件,无细分属性 || 事件概览
|
|
84
|
+
// eventGroupList?.forEach((group) => {
|
|
85
|
+
// group.eventList?.forEach((event) => {
|
|
86
|
+
// if (event.name === item.name) {
|
|
87
|
+
// groupValue = event.id.toString();
|
|
88
|
+
// }
|
|
89
|
+
// });
|
|
90
|
+
// });
|
|
91
|
+
// }
|
|
92
|
+
|
|
93
|
+
// onUserDrill &&
|
|
94
|
+
// onUserDrill(
|
|
95
|
+
// {
|
|
96
|
+
// appId: currentApp?.appId,
|
|
97
|
+
// platform: currentApp?.platform || 0,
|
|
98
|
+
// count,
|
|
99
|
+
// module: 'event',
|
|
100
|
+
// params: {
|
|
101
|
+
// groupValue,
|
|
102
|
+
// id: searchData.id,
|
|
103
|
+
// userGroup: searchData.userGroup,
|
|
104
|
+
// chartType: searchData.chartType,
|
|
105
|
+
// conditions: searchData.filters?.conditions,
|
|
106
|
+
// dimension: searchData.dimension,
|
|
107
|
+
// dataType: searchData.id ? 'event' : 'overview',
|
|
108
|
+
// time: {
|
|
109
|
+
// ...searchData.time,
|
|
110
|
+
// begin: _time[0],
|
|
111
|
+
// end: _time.length > 1 ? _time[1] : _time[0],
|
|
112
|
+
// },
|
|
113
|
+
// },
|
|
114
|
+
// source: 'EVENT',
|
|
115
|
+
// url: '/zg/web/v2/data/appEventBatch',
|
|
116
|
+
// },
|
|
117
|
+
// {
|
|
118
|
+
// source: 'EVENT',
|
|
119
|
+
// ...defaultSearch,
|
|
120
|
+
// name: panelName,
|
|
121
|
+
// data: searchData,
|
|
122
|
+
// },
|
|
123
|
+
// );
|
|
124
|
+
// };
|
|
125
|
+
var _getColumns = getColumns(eventGroupList, userPropList, eventEnvList, (dataSource === null || dataSource === void 0 ? void 0 : (_dataSource$app_data = dataSource.app_data) === null || _dataSource$app_data === void 0 ? void 0 : _dataSource$app_data.x_axis) || [], userGroup, searchData, showList
|
|
126
|
+
// onClickToDetail,
|
|
127
|
+
);
|
|
128
|
+
|
|
129
|
+
return _getColumns;
|
|
130
|
+
}, [dataSource === null || dataSource === void 0 ? void 0 : (_dataSource$app_data2 = dataSource.app_data) === null || _dataSource$app_data2 === void 0 ? void 0 : _dataSource$app_data2.x_axis, showList, sortTable, panelName]);
|
|
131
|
+
|
|
132
|
+
// 监听分页变化,如果页码发生变化则调用合并行方法
|
|
133
|
+
var onChangeTable = function onChangeTable(pagination) {
|
|
134
|
+
var startNum = (pagination.current - 1) * pagination.pageSize;
|
|
135
|
+
var endNum = pagination.current * pagination.pageSize;
|
|
136
|
+
setPageData({
|
|
137
|
+
pageSize: pagination.pageSize,
|
|
138
|
+
current: pagination.current
|
|
139
|
+
});
|
|
140
|
+
setTableData(searchTable === null || searchTable === void 0 ? void 0 : searchTable.slice(startNum, endNum));
|
|
141
|
+
};
|
|
142
|
+
|
|
143
|
+
// 下载数据
|
|
144
|
+
var download = function download() {
|
|
145
|
+
var _searchData$userGroup2;
|
|
146
|
+
var seriesNames = [];
|
|
147
|
+
// 有用户群
|
|
148
|
+
if (searchData !== null && searchData !== void 0 && searchData.userGroup && (searchData === null || searchData === void 0 ? void 0 : (_searchData$userGroup2 = searchData.userGroup) === null || _searchData$userGroup2 === void 0 ? void 0 : _searchData$userGroup2.length) > 1) {
|
|
149
|
+
seriesNames.push(base64.encode('用户群'));
|
|
150
|
+
}
|
|
151
|
+
// 有细分属性
|
|
152
|
+
if (searchData !== null && searchData !== void 0 && searchData.dimension) {
|
|
153
|
+
seriesNames.push(base64.encode(getValue(searchData === null || searchData === void 0 ? void 0 : searchData.dimension, eventGroupList, eventEnvList, userPropList).label));
|
|
154
|
+
}
|
|
155
|
+
// 事件(有事件-无细分属性 || 事件概览)
|
|
156
|
+
if (searchData.id && !searchData.dimension || !searchData.id) {
|
|
157
|
+
seriesNames.push(base64.encode('事件'));
|
|
158
|
+
}
|
|
159
|
+
var params = _objectSpread(_objectSpread({
|
|
160
|
+
appId: currentApp === null || currentApp === void 0 ? void 0 : currentApp.appId,
|
|
161
|
+
platform: (currentApp === null || currentApp === void 0 ? void 0 : currentApp.platform) || 0
|
|
162
|
+
}, searchData), {}, {
|
|
163
|
+
down: {
|
|
164
|
+
fname: base64.encode('间隔分析'),
|
|
165
|
+
titles: seriesNames
|
|
166
|
+
}
|
|
167
|
+
});
|
|
168
|
+
ajax(Apis.eventDownloadReport, {
|
|
169
|
+
method: 'post',
|
|
170
|
+
data: params,
|
|
171
|
+
responseType: 'blob',
|
|
172
|
+
fileName: '间隔分析',
|
|
173
|
+
getResponse: true
|
|
174
|
+
}).then(function () {
|
|
175
|
+
message.success('下载成功!');
|
|
176
|
+
});
|
|
177
|
+
};
|
|
178
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
179
|
+
className: classPrefix
|
|
180
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
181
|
+
className: "".concat(classPrefix, "-table-header")
|
|
182
|
+
}, /*#__PURE__*/React.createElement("span", null, "\u6307\u6807\u8BE6\u60C5"), /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("div", {
|
|
183
|
+
onClick: download
|
|
184
|
+
}, /*#__PURE__*/React.createElement(IconFont, {
|
|
185
|
+
type: "xiazai1"
|
|
186
|
+
}), "\u4E0B\u8F7D\u6570\u636E"))), /*#__PURE__*/React.createElement(BizTable, {
|
|
187
|
+
total: searchTable === null || searchTable === void 0 ? void 0 : searchTable.length,
|
|
188
|
+
columns: columns,
|
|
189
|
+
pagination: pageData,
|
|
190
|
+
dataSource: tableData,
|
|
191
|
+
rowKey: "key",
|
|
192
|
+
scroll: {
|
|
193
|
+
x: 800,
|
|
194
|
+
y: 200
|
|
195
|
+
},
|
|
196
|
+
onChange: onChangeTable
|
|
197
|
+
}));
|
|
198
|
+
};
|
|
199
|
+
export default EventTable;
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
.mi-table {
|
|
2
|
+
width: 100%;
|
|
3
|
+
margin-top: 16px;
|
|
4
|
+
|
|
5
|
+
.ant-table {
|
|
6
|
+
border-radius: 8px;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
.ant-table-cell {
|
|
10
|
+
height: 50px;
|
|
11
|
+
padding: 0 16px !important;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
.ant-pagination {
|
|
15
|
+
margin-top: 24px !important;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
.ant-table-tbody > tr > td {
|
|
19
|
+
border-bottom: 0.1px solid #e6e7ea;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
.ant-table .ant-table-container .ant-table-thead > tr > th {
|
|
23
|
+
background-color: #f2f3f4 !important;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
&-table-header {
|
|
27
|
+
display: flex;
|
|
28
|
+
justify-content: space-between;
|
|
29
|
+
height: 50px;
|
|
30
|
+
padding: 0 16px;
|
|
31
|
+
line-height: 50px;
|
|
32
|
+
background: #fafafb;
|
|
33
|
+
border: 1px solid var(--gray-6, #ecedf0);
|
|
34
|
+
border-radius: 8px 8px 0 0;
|
|
35
|
+
|
|
36
|
+
> :nth-child(2) {
|
|
37
|
+
display: flex;
|
|
38
|
+
margin-top: 9px;
|
|
39
|
+
|
|
40
|
+
div {
|
|
41
|
+
height: 32px;
|
|
42
|
+
padding: 0 16px;
|
|
43
|
+
line-height: 32px;
|
|
44
|
+
background: #fff;
|
|
45
|
+
border: 1px solid #f2f3f4;
|
|
46
|
+
cursor: pointer;
|
|
47
|
+
|
|
48
|
+
.xiazai1 {
|
|
49
|
+
margin-right: 4px;
|
|
50
|
+
font-size: 18px !important;
|
|
51
|
+
vertical-align: -2px;
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
.ant-table {
|
|
58
|
+
border-radius: 0 0 8px 8px;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
.ant-table-cell-with-append {
|
|
62
|
+
padding-left: 20px;
|
|
63
|
+
|
|
64
|
+
.ant-table-row-expand-icon {
|
|
65
|
+
position: absolute;
|
|
66
|
+
left: 0;
|
|
67
|
+
margin-top: 0;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
.event-table-sql-modal {
|
|
73
|
+
.ant-modal-header {
|
|
74
|
+
position: relative;
|
|
75
|
+
z-index: 1;
|
|
76
|
+
height: 82px;
|
|
77
|
+
background: transparent;
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
.ant-modal-body {
|
|
81
|
+
padding: 0 24px 18px 24px;
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
.ant-modal-close-x {
|
|
85
|
+
margin-top: 13px;
|
|
86
|
+
margin-right: 8px;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
img {
|
|
90
|
+
width: 100%;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
.qingchu {
|
|
94
|
+
font-weight: 500;
|
|
95
|
+
font-size: 22px !important;
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
.modal-bg {
|
|
99
|
+
position: absolute;
|
|
100
|
+
top: 0;
|
|
101
|
+
left: 0;
|
|
102
|
+
width: 100%;
|
|
103
|
+
height: auto;
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
.hljs {
|
|
107
|
+
padding: 16px;
|
|
108
|
+
background: #fafafb;
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
.copy-box {
|
|
112
|
+
position: absolute;
|
|
113
|
+
top: 98px;
|
|
114
|
+
right: 40px;
|
|
115
|
+
padding: 0 8px;
|
|
116
|
+
background: #f2f3f4;
|
|
117
|
+
border-radius: 4px;
|
|
118
|
+
|
|
119
|
+
.fuzhi1 {
|
|
120
|
+
margin-right: 8px;
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { ResponseDataProps, SearchValue } from '../../types';
|
|
2
|
+
/**
|
|
3
|
+
* 表格组件props
|
|
4
|
+
*/
|
|
5
|
+
export interface EventTableProps {
|
|
6
|
+
/**
|
|
7
|
+
* 查询结果
|
|
8
|
+
*/
|
|
9
|
+
dataSource: ResponseDataProps;
|
|
10
|
+
/**
|
|
11
|
+
* 查询条件
|
|
12
|
+
*/
|
|
13
|
+
searchData: SearchValue;
|
|
14
|
+
/**
|
|
15
|
+
* 展示列表
|
|
16
|
+
*/
|
|
17
|
+
showList: string[];
|
|
18
|
+
/**
|
|
19
|
+
* 是否是事件概览, 事件概览时才可以点击指标
|
|
20
|
+
*/
|
|
21
|
+
isOverview?: boolean;
|
|
22
|
+
/**
|
|
23
|
+
* 改变展示内容
|
|
24
|
+
*/
|
|
25
|
+
changeShow: (names: string[]) => void;
|
|
26
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
2
|
+
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; }
|
|
3
|
+
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; }
|
|
4
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
5
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
|
6
|
+
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
7
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
8
|
+
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."); }
|
|
9
|
+
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); }
|
|
10
|
+
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; }
|
|
11
|
+
function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
|
|
12
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
13
|
+
import { Button } from 'antd';
|
|
14
|
+
import React, { useContext, useState } from 'react';
|
|
15
|
+
import { BizAddToPanel, BizAddToScene, BizGlobalDataContext } from '@zgfe/business-lib';
|
|
16
|
+
import "./styles/index.less";
|
|
17
|
+
import { EventContext } from "../../types";
|
|
18
|
+
import { chartTypes, platformOption } from "../../constants/fields";
|
|
19
|
+
var classPrefix = 'modules-event-topbar';
|
|
20
|
+
var TopBar = function TopBar(props) {
|
|
21
|
+
// console.log('TopBar', props);
|
|
22
|
+
var _useContext = useContext(EventContext),
|
|
23
|
+
panelId = _useContext.panelId,
|
|
24
|
+
afterEditTarget = _useContext.afterEditTarget,
|
|
25
|
+
enableAddScene = _useContext.enableAddScene;
|
|
26
|
+
var _useState = useState(false),
|
|
27
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
28
|
+
showPanel = _useState2[0],
|
|
29
|
+
setShowPanel = _useState2[1];
|
|
30
|
+
var _useState3 = useState(false),
|
|
31
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
32
|
+
showScene = _useState4[0],
|
|
33
|
+
setShowScene = _useState4[1];
|
|
34
|
+
var _useContext2 = useContext(BizGlobalDataContext),
|
|
35
|
+
currentApp = _useContext2.currentApp;
|
|
36
|
+
var searchData = props.searchData,
|
|
37
|
+
platformChange = props.platformChange;
|
|
38
|
+
var _useState5 = useState((searchData === null || searchData === void 0 ? void 0 : searchData.platform) === undefined ? 0 : searchData.platform),
|
|
39
|
+
_useState6 = _slicedToArray(_useState5, 2),
|
|
40
|
+
selectPlatform = _useState6[0],
|
|
41
|
+
setselectPlatform = _useState6[1];
|
|
42
|
+
// 看板弹窗类型
|
|
43
|
+
var _useState7 = useState(),
|
|
44
|
+
_useState8 = _slicedToArray(_useState7, 2),
|
|
45
|
+
panelType = _useState8[0],
|
|
46
|
+
setPanelType = _useState8[1];
|
|
47
|
+
|
|
48
|
+
// 关闭弹窗
|
|
49
|
+
var closeHandle = function closeHandle(type) {
|
|
50
|
+
if (type === 'panel') {
|
|
51
|
+
setPanelType(undefined);
|
|
52
|
+
setShowPanel(false);
|
|
53
|
+
} else {
|
|
54
|
+
setShowScene(false);
|
|
55
|
+
}
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
// 保存
|
|
59
|
+
var _onOk = function onOk(type, val) {
|
|
60
|
+
// console.log('onOk', type, val);
|
|
61
|
+
closeHandle(type);
|
|
62
|
+
if (afterEditTarget) afterEditTarget(type, val);
|
|
63
|
+
};
|
|
64
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
65
|
+
className: classPrefix
|
|
66
|
+
}, !panelId && /*#__PURE__*/React.createElement("div", {
|
|
67
|
+
className: "".concat(classPrefix, "-panel")
|
|
68
|
+
}, /*#__PURE__*/React.createElement(Button, {
|
|
69
|
+
onClick: function onClick() {
|
|
70
|
+
setShowPanel(true);
|
|
71
|
+
}
|
|
72
|
+
}, "\u6DFB\u52A0\u5230\u770B\u677F"), showPanel && /*#__PURE__*/React.createElement(BizAddToPanel, {
|
|
73
|
+
type: panelType,
|
|
74
|
+
params: _objectSpread({
|
|
75
|
+
app_id: currentApp === null || currentApp === void 0 ? void 0 : currentApp.appId,
|
|
76
|
+
module: 'event'
|
|
77
|
+
}, searchData),
|
|
78
|
+
styleOptions: chartTypes,
|
|
79
|
+
onCancel: function onCancel() {
|
|
80
|
+
return closeHandle('panel');
|
|
81
|
+
},
|
|
82
|
+
onOk: function onOk(data) {
|
|
83
|
+
return _onOk('panel', data);
|
|
84
|
+
}
|
|
85
|
+
})), enableAddScene && /*#__PURE__*/React.createElement("div", {
|
|
86
|
+
className: "".concat(classPrefix, "-scene")
|
|
87
|
+
}, /*#__PURE__*/React.createElement(Button, {
|
|
88
|
+
onClick: function onClick() {
|
|
89
|
+
setShowScene(true);
|
|
90
|
+
}
|
|
91
|
+
}, "\u6DFB\u52A0\u5E38\u7528\u573A\u666F"), showScene && /*#__PURE__*/React.createElement(BizAddToScene, {
|
|
92
|
+
params: _objectSpread({
|
|
93
|
+
app_id: currentApp === null || currentApp === void 0 ? void 0 : currentApp.appId,
|
|
94
|
+
module: 'event'
|
|
95
|
+
}, searchData),
|
|
96
|
+
onOk: function onOk(data) {
|
|
97
|
+
return _onOk('scene', data);
|
|
98
|
+
},
|
|
99
|
+
onCancel: function onCancel() {
|
|
100
|
+
return closeHandle('scene');
|
|
101
|
+
}
|
|
102
|
+
})), /*#__PURE__*/React.createElement(Button, {
|
|
103
|
+
className: "".concat(classPrefix, "-earlywarning"),
|
|
104
|
+
type: "primary",
|
|
105
|
+
onClick: function onClick() {
|
|
106
|
+
return console.log('设置流失预警');
|
|
107
|
+
}
|
|
108
|
+
}, "\u8BBE\u7F6E\u6D41\u5931\u9884\u8B66"), /*#__PURE__*/React.createElement("div", {
|
|
109
|
+
className: "".concat(classPrefix, "-platform")
|
|
110
|
+
}, platformOption.map(function (item) {
|
|
111
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
112
|
+
className: "".concat(selectPlatform === item.key ? 'active' : ''),
|
|
113
|
+
key: item.key,
|
|
114
|
+
onClick: function onClick() {
|
|
115
|
+
setselectPlatform(item.key);
|
|
116
|
+
platformChange(item.key);
|
|
117
|
+
}
|
|
118
|
+
}, item.value);
|
|
119
|
+
})));
|
|
120
|
+
};
|
|
121
|
+
export default TopBar;
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
@import '~@zgfe/business-lib/es/assets/styles/inner.less';
|
|
2
|
+
|
|
3
|
+
.modules-event-topbar {
|
|
4
|
+
display: flex;
|
|
5
|
+
justify-content: flex-end;
|
|
6
|
+
margin: 8px 0;
|
|
7
|
+
padding-right: 24px;
|
|
8
|
+
&-panel {
|
|
9
|
+
margin-right: 16px;
|
|
10
|
+
}
|
|
11
|
+
&-scene {
|
|
12
|
+
margin-right: 16px;
|
|
13
|
+
}
|
|
14
|
+
&-earlywarning {
|
|
15
|
+
margin-right: 16px;
|
|
16
|
+
}
|
|
17
|
+
&-platform {
|
|
18
|
+
display: flex;
|
|
19
|
+
height: 32px;
|
|
20
|
+
line-height: 32px;
|
|
21
|
+
> div {
|
|
22
|
+
position: relative;
|
|
23
|
+
padding: 0 16px;
|
|
24
|
+
background: #fff;
|
|
25
|
+
border: 1px solid #ecedf0;
|
|
26
|
+
cursor: pointer;
|
|
27
|
+
}
|
|
28
|
+
> div:hover,
|
|
29
|
+
.active {
|
|
30
|
+
z-index: 1;
|
|
31
|
+
color: #165dff;
|
|
32
|
+
background: #e8efff;
|
|
33
|
+
border: 1px solid #165dff;
|
|
34
|
+
}
|
|
35
|
+
> :nth-child(1) {
|
|
36
|
+
border-radius: 4px 0 0 4px;
|
|
37
|
+
}
|
|
38
|
+
> :nth-child(2) {
|
|
39
|
+
margin-left: -1px;
|
|
40
|
+
}
|
|
41
|
+
> :nth-child(3) {
|
|
42
|
+
margin-left: -1px;
|
|
43
|
+
}
|
|
44
|
+
> :nth-child(4) {
|
|
45
|
+
margin-left: -1px;
|
|
46
|
+
border-radius: 0 4px 4px 0;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|