fmui-base 2.0.32 → 2.0.34
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 +2 -0
- package/lib/chart/chart.js +367 -0
- package/lib/chart/index.js +16 -0
- package/lib/css/react_grid.css +798 -0
- package/lib/db/db.js +91 -0
- package/lib/db/variables.js +90 -3
- package/lib/form/table.js +6 -1
- package/lib/index.js +9 -0
- package/lib/process_batch/processBatch.js +15 -3
- package/lib/react_grid/index.js +16 -0
- package/lib/react_grid/react_grid copy 2.js +1410 -0
- package/lib/react_grid/react_grid copy 3.js +1502 -0
- package/lib/react_grid/react_grid copy 4.js +1421 -0
- package/lib/react_grid/react_grid copy.js +1253 -0
- package/lib/react_grid/react_grid.js +1801 -0
- package/lib/react_grid/react_grid.less +999 -0
- package/package.json +6 -3
package/README.md
CHANGED
|
@@ -0,0 +1,367 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
|
|
7
|
+
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
|
|
8
|
+
|
|
9
|
+
var _react = require('react');
|
|
10
|
+
|
|
11
|
+
var _react2 = _interopRequireDefault(_react);
|
|
12
|
+
|
|
13
|
+
var _echartsForReact = require('echarts-for-react');
|
|
14
|
+
|
|
15
|
+
var _echartsForReact2 = _interopRequireDefault(_echartsForReact);
|
|
16
|
+
|
|
17
|
+
var _db = require('../db/db');
|
|
18
|
+
|
|
19
|
+
var _db2 = _interopRequireDefault(_db);
|
|
20
|
+
|
|
21
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
22
|
+
|
|
23
|
+
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
24
|
+
|
|
25
|
+
function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
|
|
26
|
+
|
|
27
|
+
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
|
|
28
|
+
|
|
29
|
+
var NoData = function (_React$Component) {
|
|
30
|
+
_inherits(NoData, _React$Component);
|
|
31
|
+
|
|
32
|
+
function NoData(props) {
|
|
33
|
+
_classCallCheck(this, NoData);
|
|
34
|
+
|
|
35
|
+
var _this = _possibleConstructorReturn(this, (NoData.__proto__ || Object.getPrototypeOf(NoData)).call(this, props));
|
|
36
|
+
|
|
37
|
+
var portalId = props.portalId;
|
|
38
|
+
var height = props.height;
|
|
39
|
+
if (!height) {
|
|
40
|
+
height = 400;
|
|
41
|
+
}
|
|
42
|
+
console.log('====================================');
|
|
43
|
+
console.log(portalId, 'portalIdportalIdportalIdportalId');
|
|
44
|
+
console.log('====================================');
|
|
45
|
+
_this.state = {
|
|
46
|
+
loadTrue: false,
|
|
47
|
+
portalId: portalId,
|
|
48
|
+
height: height,
|
|
49
|
+
options: {
|
|
50
|
+
id: portalId,
|
|
51
|
+
allBackData: {}, // 存储后台返回的所有data数据
|
|
52
|
+
rowCheck: false, // 二维表三维表行列合计默认为false
|
|
53
|
+
colCheck: false, // 二维表三维表行列合计默认为false
|
|
54
|
+
rsId: "",
|
|
55
|
+
rsSql: "",
|
|
56
|
+
rsSource: "",
|
|
57
|
+
rptType: '',
|
|
58
|
+
filterArr: [], // 存储过滤条件name,type,content
|
|
59
|
+
title: {
|
|
60
|
+
text: '',
|
|
61
|
+
right: 'center',
|
|
62
|
+
top: '-4px'
|
|
63
|
+
},
|
|
64
|
+
textStyle: {
|
|
65
|
+
color: '#000'
|
|
66
|
+
},
|
|
67
|
+
grid: { top: '15%' },
|
|
68
|
+
// toolbox : {
|
|
69
|
+
// right:'5%',
|
|
70
|
+
// feature : {
|
|
71
|
+
// saveAsImage : {}
|
|
72
|
+
// }
|
|
73
|
+
// },
|
|
74
|
+
tooltip: {
|
|
75
|
+
trigger: 'item',
|
|
76
|
+
confine: true,
|
|
77
|
+
axisPointer: { // 坐标轴指示器,坐标轴触发有效
|
|
78
|
+
type: 'line', // 默认为直线,可选为:'line' | 'shadow'
|
|
79
|
+
lineStyle: { // 直线指示器样式设置
|
|
80
|
+
color: '#48b',
|
|
81
|
+
width: 2,
|
|
82
|
+
type: 'solid'
|
|
83
|
+
},
|
|
84
|
+
shadowStyle: { // 阴影指示器样式设置
|
|
85
|
+
width: 'auto', // 阴影大小
|
|
86
|
+
color: 'rgba(150,150,150,0.3)' // 阴影颜色
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
},
|
|
90
|
+
legend: {
|
|
91
|
+
data: [],
|
|
92
|
+
type: 'scroll',
|
|
93
|
+
bottom: '1%'
|
|
94
|
+
},
|
|
95
|
+
xAxisPageInfo: { // 存储页面x轴相关信息
|
|
96
|
+
xName: "",
|
|
97
|
+
unSelectItem: []
|
|
98
|
+
// select未选中项存储
|
|
99
|
+
},
|
|
100
|
+
yAxisPageInfo: {
|
|
101
|
+
yName: ""
|
|
102
|
+
},
|
|
103
|
+
xAxis: {
|
|
104
|
+
data: [],
|
|
105
|
+
axisLabel: { //坐标轴刻度标签的相关设置。
|
|
106
|
+
interval: 0
|
|
107
|
+
}
|
|
108
|
+
},
|
|
109
|
+
yAxis: {},
|
|
110
|
+
series: [],
|
|
111
|
+
ySeriesAxisName: "",
|
|
112
|
+
ySeries: {
|
|
113
|
+
unSelectItem: []
|
|
114
|
+
// select未选中项存储
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
};
|
|
118
|
+
return _this;
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
//排序函数,排序系列时用到,只排序数字数组
|
|
122
|
+
|
|
123
|
+
|
|
124
|
+
_createClass(NoData, [{
|
|
125
|
+
key: 'sortNumber',
|
|
126
|
+
value: function sortNumber(a, b) {
|
|
127
|
+
return a - b;
|
|
128
|
+
}
|
|
129
|
+
}, {
|
|
130
|
+
key: 'componentDidMount',
|
|
131
|
+
value: function componentDidMount() {
|
|
132
|
+
var t = this;
|
|
133
|
+
_db2.default.portal.getComponentInfoList({
|
|
134
|
+
portalId: t.state.portalId
|
|
135
|
+
}).then(function (content) {
|
|
136
|
+
debugger;
|
|
137
|
+
var options = t.state.options;
|
|
138
|
+
|
|
139
|
+
var chartData = content.chartData;
|
|
140
|
+
var chartSet = content.chartSet;
|
|
141
|
+
options.rsId = chartSet.rsId;
|
|
142
|
+
|
|
143
|
+
// 图表统计条件
|
|
144
|
+
if (chartSet.chartCountType == 1) {
|
|
145
|
+
options.rowCheck = true;
|
|
146
|
+
} else if (chartSet.chartCountType == 2) {
|
|
147
|
+
options.colCheck = true;
|
|
148
|
+
} else if (chartSet.chartCountType == 3) {
|
|
149
|
+
options.rowCheck = true;
|
|
150
|
+
options.colCheck = true;
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
var chartX = chartSet.chartX;
|
|
154
|
+
var chartY = chartSet.chartY;
|
|
155
|
+
var chartValue = chartSet.chartValue;
|
|
156
|
+
|
|
157
|
+
// 三个区域拖值处赋值
|
|
158
|
+
options.xAxisPageInfo.xName = chartX; // 分类字段
|
|
159
|
+
options.yAxisPageInfo.yName = chartValue; // 值域字段
|
|
160
|
+
options.ySeriesAxisName = chartY; // 系列字段
|
|
161
|
+
|
|
162
|
+
options.rptType = chartSet.chartType;
|
|
163
|
+
|
|
164
|
+
var xAxisArr = chartX ? chartX.split(",") : [];
|
|
165
|
+
if (xAxisArr.length > 0) {
|
|
166
|
+
var smallModuleKey = xAxisArr[0].substring(0, xAxisArr[0].indexOf("|"));
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
var inbyname = "";
|
|
170
|
+
// 1.查询当前所有的拖入的结果集字段作为inbyname传入后台的数据
|
|
171
|
+
if (chartX) {
|
|
172
|
+
var xAxisArr = chartX.split(",");
|
|
173
|
+
for (var i = 0; i < xAxisArr.length; i++) {
|
|
174
|
+
var oneXAxisArr = xAxisArr[i].split("|");
|
|
175
|
+
inbyname += oneXAxisArr[0] + ",";
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
if (chartY) {
|
|
179
|
+
var seriesArr = chartY.split(",");
|
|
180
|
+
for (var i = 0; i < seriesArr.length; i++) {
|
|
181
|
+
var oneSeriesArr = seriesArr[i].split("|");
|
|
182
|
+
inbyname += oneSeriesArr[0] + ",";
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
if (chartValue) {
|
|
186
|
+
var yAxisArr = chartValue.split(",");
|
|
187
|
+
for (var i = 0; i < yAxisArr.length; i++) {
|
|
188
|
+
var oneYAxisArr = yAxisArr[i].split("|");
|
|
189
|
+
inbyname += oneYAxisArr[0] + ",";
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
inbyname = inbyname.substring(0, inbyname.length - 1);
|
|
193
|
+
|
|
194
|
+
// 2.定位byname,axis,根据参数确定返回数据的处理格式
|
|
195
|
+
var fixByName = "";
|
|
196
|
+
var fixAxis = "";
|
|
197
|
+
if (chartX) {
|
|
198
|
+
fixByName = chartX;
|
|
199
|
+
fixAxis = "xAxis";
|
|
200
|
+
}
|
|
201
|
+
if (chartValue) {
|
|
202
|
+
fixByName = chartValue;
|
|
203
|
+
fixAxis = "yAxis";
|
|
204
|
+
}
|
|
205
|
+
if (chartY) {
|
|
206
|
+
fixByName = chartY;
|
|
207
|
+
fixAxis = "ySeriesAxis";
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
var chartType = chartSet.chartType;
|
|
211
|
+
if (chartType != 'line' && chartType != 'bar') {
|
|
212
|
+
// 只有当图形为折线图和柱形图时有x,y轴,其他删除
|
|
213
|
+
delete options.xAxis;
|
|
214
|
+
delete options.yAxis;
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
if (chartType == "二维表" || chartType == "三维表" || chartType == "单维表") {} else {
|
|
218
|
+
if (fixAxis == "xAxis") {
|
|
219
|
+
if (options.xAxis) {
|
|
220
|
+
// 除了折线图和柱形图,其他图形是无x,y轴的,会在初始化时删掉这个
|
|
221
|
+
options.xAxis.data = chartData[inbyname];
|
|
222
|
+
}
|
|
223
|
+
options.series = []; // 清除操作
|
|
224
|
+
} else if (fixAxis == "yAxis") {
|
|
225
|
+
// 显示xAxis的新值
|
|
226
|
+
var bynameArr = inbyname.split(",");
|
|
227
|
+
if (options.xAxis) {
|
|
228
|
+
// 除了折线图和柱形图,其他图形是无x,y轴的,会在初始化时删掉这个
|
|
229
|
+
options.xAxis.data = chartData[bynameArr[0]];
|
|
230
|
+
}
|
|
231
|
+
options.legend.data = []; // 清除原来的值,置空
|
|
232
|
+
options.series = []; // 清除操作
|
|
233
|
+
// 别名显示
|
|
234
|
+
var yByname = options.yAxisPageInfo.yName.substring(options.yAxisPageInfo.yName.indexOf("|") + 1);
|
|
235
|
+
if (options.rptType != "gauge") {
|
|
236
|
+
options.legend.data.push(yByname);
|
|
237
|
+
}
|
|
238
|
+
var newparam;
|
|
239
|
+
if (options.rptType == "pie" || options.rptType == "funnel" || options.rptType == "gauge") {
|
|
240
|
+
// 如果是饼图,漏斗图,仪表盘
|
|
241
|
+
if (options.rptType == "pie") {
|
|
242
|
+
newparam = {
|
|
243
|
+
"name": yByname,
|
|
244
|
+
"type": options.rptType,
|
|
245
|
+
"radius": "50%",
|
|
246
|
+
"center": ["50%", "55%"],
|
|
247
|
+
"data": []
|
|
248
|
+
};
|
|
249
|
+
} else {
|
|
250
|
+
newparam = {
|
|
251
|
+
"name": yByname,
|
|
252
|
+
"type": options.rptType,
|
|
253
|
+
"center": ["50%", "55%"],
|
|
254
|
+
"data": [/*
|
|
255
|
+
* { "value" : data[key], "name" : key }
|
|
256
|
+
*/]
|
|
257
|
+
};
|
|
258
|
+
}
|
|
259
|
+
/*
|
|
260
|
+
* if(previewOption.rptType == "funnel"){//仪表盘宽度限制下,不然太宽了,不协调
|
|
261
|
+
* newparam.width = "60%"; }
|
|
262
|
+
*/
|
|
263
|
+
if (chartData[bynameArr[1]].length < 1) {
|
|
264
|
+
chartData[bynameArr[1]] = [0];
|
|
265
|
+
}
|
|
266
|
+
for (var i = 0; i < chartData[bynameArr[1]].length; i++) {
|
|
267
|
+
var dataItem = {};
|
|
268
|
+
dataItem.value = chartData[bynameArr[1]][i];
|
|
269
|
+
dataItem.name = chartData[bynameArr[0]][i];
|
|
270
|
+
newparam.data.push(dataItem);
|
|
271
|
+
if (options.rptType == "gauge") {
|
|
272
|
+
// 仪表盘默认只选第一个
|
|
273
|
+
newparam.detail = {
|
|
274
|
+
formatter: '{name|' + yByname + '}\n{value}',
|
|
275
|
+
rich: {
|
|
276
|
+
name: {
|
|
277
|
+
fontSize: 14
|
|
278
|
+
}
|
|
279
|
+
}
|
|
280
|
+
};
|
|
281
|
+
// 最大值为当前值升一位的最小整数,如:324的最大数为1000
|
|
282
|
+
var numLen = (parseInt(chartData[bynameArr[1]][i]) * 10).toString().length;
|
|
283
|
+
var maxNum = "1";
|
|
284
|
+
for (var m = 0; m < numLen - 1; m++) {
|
|
285
|
+
maxNum += "" + 0;
|
|
286
|
+
}
|
|
287
|
+
newparam.max = Number(maxNum);
|
|
288
|
+
break;
|
|
289
|
+
}
|
|
290
|
+
}
|
|
291
|
+
options.legend.data = chartData[bynameArr[0]].sort(t.sortNumber);
|
|
292
|
+
} else if (options.rptType == "radar") {
|
|
293
|
+
// 如果是雷达图,值加载形式有区别
|
|
294
|
+
var inMaxNum = 1;
|
|
295
|
+
if (chartData[bynameArr[1]].length == 0) {
|
|
296
|
+
chartData[bynameArr[1]] = new Array(chartData[bynameArr[0]].length);
|
|
297
|
+
} else {
|
|
298
|
+
inMaxNum = Math.max.apply(null, chartData[bynameArr[1]]); // 返回数组中的最大值
|
|
299
|
+
}
|
|
300
|
+
for (var i = 0; i < chartData[bynameArr[1]].length; i++) {
|
|
301
|
+
if (!chartData[bynameArr[1]][i]) {
|
|
302
|
+
chartData[bynameArr[1]][i] = 0;
|
|
303
|
+
}
|
|
304
|
+
}
|
|
305
|
+
newparam = {
|
|
306
|
+
"name": yByname,
|
|
307
|
+
"type": options.rptType,
|
|
308
|
+
"radius": "50%",
|
|
309
|
+
"data": [{
|
|
310
|
+
"value": chartData[bynameArr[1]],
|
|
311
|
+
"name": yByname
|
|
312
|
+
}]
|
|
313
|
+
};
|
|
314
|
+
options.radar = {
|
|
315
|
+
indicator: [],
|
|
316
|
+
radius: '60%',
|
|
317
|
+
center: ["50%", "55%"] // 雷达图设置偏下位置,与标题栏间隔一点距离
|
|
318
|
+
};
|
|
319
|
+
for (var i = 0; i < chartData[bynameArr[0]].length; i++) {
|
|
320
|
+
var indicatorItem = {};
|
|
321
|
+
indicatorItem.name = chartData[bynameArr[0]][i];
|
|
322
|
+
indicatorItem.max = inMaxNum; // 取统一的最大值
|
|
323
|
+
options.radar.indicator.push(indicatorItem);
|
|
324
|
+
}
|
|
325
|
+
} else {
|
|
326
|
+
newparam = {
|
|
327
|
+
"name": yByname,
|
|
328
|
+
"type": options.rptType,
|
|
329
|
+
"data": chartData[bynameArr[1]]
|
|
330
|
+
};
|
|
331
|
+
}
|
|
332
|
+
options.series.push(newparam);
|
|
333
|
+
}
|
|
334
|
+
}
|
|
335
|
+
|
|
336
|
+
t.setState({
|
|
337
|
+
options: options,
|
|
338
|
+
loadTrue: true
|
|
339
|
+
});
|
|
340
|
+
}).catch(function (error) {
|
|
341
|
+
console.error(error);
|
|
342
|
+
});
|
|
343
|
+
}
|
|
344
|
+
}, {
|
|
345
|
+
key: 'render',
|
|
346
|
+
value: function render() {
|
|
347
|
+
return _react2.default.createElement(
|
|
348
|
+
'div',
|
|
349
|
+
{ style: { height: this.state.height } },
|
|
350
|
+
this.state.loadTrue ? _react2.default.createElement(_echartsForReact2.default, {
|
|
351
|
+
option: this.state.options,
|
|
352
|
+
style: { height: '100%', width: '100%' },
|
|
353
|
+
autoResize: true
|
|
354
|
+
// notMerge={true}
|
|
355
|
+
// lazyUpdate={true}
|
|
356
|
+
// theme={"theme_name"}
|
|
357
|
+
// onChartReady={this.onChartReadyCallback}
|
|
358
|
+
// onEvents={EventsDict}
|
|
359
|
+
}) : ""
|
|
360
|
+
);
|
|
361
|
+
}
|
|
362
|
+
}]);
|
|
363
|
+
|
|
364
|
+
return NoData;
|
|
365
|
+
}(_react2.default.Component);
|
|
366
|
+
|
|
367
|
+
exports.default = NoData;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
|
|
7
|
+
var _chart = require('./chart');
|
|
8
|
+
|
|
9
|
+
Object.defineProperty(exports, 'default', {
|
|
10
|
+
enumerable: true,
|
|
11
|
+
get: function get() {
|
|
12
|
+
return _interopRequireDefault(_chart).default;
|
|
13
|
+
}
|
|
14
|
+
});
|
|
15
|
+
|
|
16
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|