syber-lowcode-business-materials
Version:
syber-lowcode-business-materials
438 lines (422 loc) • 32.6 kB
JavaScript
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
exports.__esModule = true;
exports["default"] = void 0;
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
var _message2 = _interopRequireDefault(require("antd/lib/message"));
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
var _react = _interopRequireWildcard(require("react"));
require("../chart-line/index.scss");
var _variables = require("../../variables");
var _lodash = _interopRequireDefault(require("lodash"));
var _CommonViewDiv = require("../../utils/CommonViewDiv");
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
var SliceLength = 500; //数据分段展示限制长度
var ChartPie = function ChartPie(props) {
var _props$contentParams64, _props$contentParams65, _props$contentParams66, _props$contentParams67, _props$contentParams68, _props$contentParams69, _props$contentParams$, _props$contentParams$2, _props$contentParams70, _props$contentParams$3, _props$contentParams$4;
var chartDomRef = (0, _react.useRef)(null);
var myChartRef = (0, _react.useRef)(null);
var lastDataRef = (0, _react.useRef)(null);
var _useState = (0, _react.useState)(null),
error = _useState[0],
setError = _useState[1];
var _useState2 = (0, _react.useState)(null),
totalMsg = _useState2[0],
setTotalMsg = _useState2[1];
(0, _react.useEffect)(function () {
if (chartDomRef.current) {
var _window$echarts;
console.log("初始化饼图", window.echarts);
myChartRef.current = (_window$echarts = window.echarts) === null || _window$echarts === void 0 ? void 0 : _window$echarts.init(chartDomRef.current, null, {
locale: 'ZH'
});
//点击事件
if (props.getChatItemClickItems) {
var _myChartRef$current;
(_myChartRef$current = myChartRef.current) === null || _myChartRef$current === void 0 ? void 0 : _myChartRef$current.on('click', function (params) {
var _props$getChatItemCli;
(_props$getChatItemCli = props.getChatItemClickItems) === null || _props$getChatItemCli === void 0 ? void 0 : _props$getChatItemCli.call(props, params);
});
}
if (lastDataRef.current) {
//去绘制
showValue(lastDataRef.current);
}
}
return function () {
var _myChartRef$current2;
console.log("卸载饼图");
(_myChartRef$current2 = myChartRef.current) === null || _myChartRef$current2 === void 0 ? void 0 : _myChartRef$current2.dispose();
};
}, [chartDomRef.current]);
(0, _react.useEffect)(function () {
if (props.dataSource) {
showValue(props.dataSource);
}
}, [JSON.stringify(props.contentParams), JSON.stringify(props.dataSource)]);
//组装Echart 饼状图的配置项
var getChartOption = function getChartOption() {
var _contentParams$legend, _option$tooltip, _contentParams$theme, _contentParams$theme2;
var contentParams = props.contentParams;
var option = {};
//图例
option.legend = contentParams === null || contentParams === void 0 ? void 0 : contentParams.legend;
switch (contentParams === null || contentParams === void 0 ? void 0 : (_contentParams$legend = contentParams.legend) === null || _contentParams$legend === void 0 ? void 0 : _contentParams$legend._position) {
case 'top':
option.legend = Object.assign(option.legend, {
top: '5%',
left: 'center'
});
break;
case 'bottom':
option.legend = Object.assign(option.legend, {
bottom: '5%',
left: 'center'
});
break;
case 'left':
option.legend = Object.assign(option.legend, {
top: 'center',
left: '5%'
});
break;
case 'right':
option.legend = Object.assign(option.legend, {
top: 'center',
right: '5%'
});
break;
case 'topLeft':
option.legend = Object.assign(option.legend, {
top: '5%',
left: '5%'
});
break;
case 'topRight':
option.legend = Object.assign(option.legend, {
top: '5%',
right: '5%'
});
break;
case 'bottomLeft':
option.legend = Object.assign(option.legend, {
bottom: '5%',
left: '5%'
});
break;
case 'bottomRight':
option.legend = Object.assign(option.legend, {
bottom: '5%',
right: '5%'
});
break;
case 'center':
option.legend = Object.assign(option.legend, {
top: 'center',
left: 'center'
});
break;
}
//tooltip
option.tooltip = contentParams === null || contentParams === void 0 ? void 0 : contentParams.tooltip;
if ((_option$tooltip = option.tooltip) !== null && _option$tooltip !== void 0 && _option$tooltip._showPercentage) {
// option.tooltip.formatter = '{c} ({d}%)'
option.tooltip.formatter = function (params) {
var _option$tooltip2, _option$tooltip2$text;
var color = ((_option$tooltip2 = option.tooltip) === null || _option$tooltip2 === void 0 ? void 0 : (_option$tooltip2$text = _option$tooltip2.textStyle) === null || _option$tooltip2$text === void 0 ? void 0 : _option$tooltip2$text.color) || 'inherit';
return "<div style=\"color: " + color + ";display: flex;justify-content: space-between;gap: 15px\">\n <span>\n " + params.marker + "\n <span>" + (params === null || params === void 0 ? void 0 : params.name) + "</span>\n </span>\n <span>\n <span style=\"font-weight: bold\">" + params.value + "</span>\n <span> (" + params.percent + "%)</span>\n </span>\n </div>";
};
}
//颜色
option.backgroundColor = contentParams === null || contentParams === void 0 ? void 0 : (_contentParams$theme = contentParams.theme) === null || _contentParams$theme === void 0 ? void 0 : _contentParams$theme.backgroundColor;
if (contentParams !== null && contentParams !== void 0 && (_contentParams$theme2 = contentParams.theme) !== null && _contentParams$theme2 !== void 0 && _contentParams$theme2.color) {
var _contentParams$theme3;
option.color = contentParams === null || contentParams === void 0 ? void 0 : (_contentParams$theme3 = contentParams.theme) === null || _contentParams$theme3 === void 0 ? void 0 : _contentParams$theme3.color.map(function (eachColor) {
if (typeof eachColor === 'string' || !eachColor) {
return eachColor;
} else {
var obj = {
type: eachColor.type,
x: 0,
y: 0,
x2: 0,
y2: 0,
colorStops: [{
offset: 0,
color: eachColor.colorStops[0] // 0% 处的颜色
}, {
offset: 1,
color: eachColor.colorStops[1] // 100% 处的颜色
}],
global: false // 缺省为 false
};
if (eachColor.direction === 'horizontal') {
obj.x2 = 1;
} else {
obj.y2 = 1;
}
return obj;
}
});
}
return option;
};
//展示数据
var showValue = /*#__PURE__*/function () {
var _ref = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee(data) {
var _props$contentParams, _props$contentParams2, _props$contentParams3;
var limitNum, _data$props$contentPa, _props$contentParams4, _props$contentParams5, option, _props$contentParams6, _props$contentParams7, _props$contentParams8, _props$contentParams9, _props$contentParams10, _props$contentParams11, _props$contentParams12, _props$contentParams13, _props$contentParams14, _props$contentParams15, _props$contentParams16, _props$contentParams17, _props$contentParams18, _props$contentParams19, _props$contentParams20, _props$contentParams21, _props$contentParams22, _props$contentParams27, _props$contentParams28, _props$contentParams29, _props$contentParams30, _props$contentParams43, _props$contentParams44, _props$contentParams45, _props$contentParams48, _props$contentParams49, _props$contentParams60, _props$contentParams61, seriesItem, _props$contentParams23, _props$contentParams24, _props$contentParams25, _props$contentParams26, _props$contentParams31, _props$contentParams32, _props$contentParams33, _props$contentParams37, _props$contentParams38, _props$contentParams39, _props$contentParams34, _props$contentParams35, _props$contentParams36, _props$contentParams40, _props$contentParams41, _props$contentParams42, pieColorMap, _props$contentParams46, _props$contentParams47, _props$contentParams50, _props$contentParams51, fillData, _data$props$contentPa2, newSeriesItem, _props$contentParams52, _props$contentParams53, _props$contentParams54, _props$contentParams55, _props$contentParams56, _props$contentParams57, _props$contentParams58, _props$contentParams59, _totalMsg, _props$contentParams62, _props$contentParams63;
return _regenerator["default"].wrap(function _callee$(_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
lastDataRef.current = _lodash["default"].cloneDeep(data);
limitNum = (props === null || props === void 0 ? void 0 : (_props$contentParams = props.contentParams) === null || _props$contentParams === void 0 ? void 0 : _props$contentParams.limitNum) || SliceLength;
if (!((data === null || data === void 0 ? void 0 : data.length) > limitNum)) {
_context.next = 5;
break;
}
setError("\u6570\u636E\u91CF\u8D85\u8FC7" + limitNum + "\u6761\uFF0C\u4E0D\u4E88\u4EE5\u5C55\u793A\uFF0C\u8BF7\u4F18\u5316\u6570\u636E\u6216\u4FEE\u6539\u914D\u7F6E");
return _context.abrupt("return");
case 5:
if (!(props !== null && props !== void 0 && (_props$contentParams2 = props.contentParams) !== null && _props$contentParams2 !== void 0 && (_props$contentParams3 = _props$contentParams2.dataSetConfig) !== null && _props$contentParams3 !== void 0 && _props$contentParams3.labelField)) {
_context.next = 9;
break;
}
if (!((data === null || data === void 0 ? void 0 : (_data$props$contentPa = data[props === null || props === void 0 ? void 0 : (_props$contentParams4 = props.contentParams) === null || _props$contentParams4 === void 0 ? void 0 : (_props$contentParams5 = _props$contentParams4.dataSetConfig) === null || _props$contentParams5 === void 0 ? void 0 : _props$contentParams5.labelField]) === null || _data$props$contentPa === void 0 ? void 0 : _data$props$contentPa.length) > limitNum)) {
_context.next = 9;
break;
}
setError("\u6570\u636E\u91CF\u8D85\u8FC7" + limitNum + "\u6761\uFF0C\u4E0D\u4E88\u4EE5\u5C55\u793A\uFF0C\u8BF7\u4F18\u5316\u6570\u636E\u6216\u4FEE\u6539\u914D\u7F6E");
return _context.abrupt("return");
case 9:
option = getChartOption();
if (!(props !== null && props !== void 0 && props.contentParams)) {
_context.next = 61;
break;
}
seriesItem = {
type: 'pie'
}; //饼图特殊配置
//是否为南丁格尔图
_context.t0 = props === null || props === void 0 ? void 0 : (_props$contentParams6 = props.contentParams) === null || _props$contentParams6 === void 0 ? void 0 : (_props$contentParams7 = _props$contentParams6.pieSpecial) === null || _props$contentParams7 === void 0 ? void 0 : _props$contentParams7._pieType;
_context.next = _context.t0 === 'normal' ? 15 : _context.t0 === 'radius' ? 16 : _context.t0 === 'area' ? 18 : 20;
break;
case 15:
return _context.abrupt("break", 20);
case 16:
seriesItem.roseType = 'radius';
return _context.abrupt("break", 20);
case 18:
seriesItem.roseType = 'area';
return _context.abrupt("break", 20);
case 20:
//顺时针
if ((props === null || props === void 0 ? void 0 : (_props$contentParams8 = props.contentParams) === null || _props$contentParams8 === void 0 ? void 0 : (_props$contentParams9 = _props$contentParams8.pieSpecial) === null || _props$contentParams9 === void 0 ? void 0 : _props$contentParams9._clockwise) === 'counterclockwise') {
seriesItem.clockwise = false;
}
//圆心
seriesItem.center = [(props === null || props === void 0 ? void 0 : (_props$contentParams10 = props.contentParams) === null || _props$contentParams10 === void 0 ? void 0 : (_props$contentParams11 = _props$contentParams10.pieSpecial) === null || _props$contentParams11 === void 0 ? void 0 : _props$contentParams11._centerSetX) || '50%', (props === null || props === void 0 ? void 0 : (_props$contentParams12 = props.contentParams) === null || _props$contentParams12 === void 0 ? void 0 : (_props$contentParams13 = _props$contentParams12.pieSpecial) === null || _props$contentParams13 === void 0 ? void 0 : _props$contentParams13._centerSetY) || '50%'];
//展示所有标签
if (props !== null && props !== void 0 && (_props$contentParams14 = props.contentParams) !== null && _props$contentParams14 !== void 0 && (_props$contentParams15 = _props$contentParams14.pieSpecial) !== null && _props$contentParams15 !== void 0 && _props$contentParams15._showAllLabel) {
seriesItem.minShowLabelAngle = 0;
} else {
seriesItem.minShowLabelAngle = 3.6;
}
//视觉引导线
_context.t1 = props === null || props === void 0 ? void 0 : (_props$contentParams16 = props.contentParams) === null || _props$contentParams16 === void 0 ? void 0 : (_props$contentParams17 = _props$contentParams16.pieSpecial) === null || _props$contentParams17 === void 0 ? void 0 : _props$contentParams17._labelLine;
_context.next = _context.t1 === 'hide' ? 26 : _context.t1 === 'line' ? 28 : _context.t1 === 'curve' ? 30 : 32;
break;
case 26:
seriesItem.labelLine = {
show: false
};
return _context.abrupt("break", 32);
case 28:
seriesItem.labelLine = {
show: true
};
return _context.abrupt("break", 32);
case 30:
seriesItem.labelLine = {
show: true,
smooth: true
};
return _context.abrupt("break", 32);
case 32:
//半径
seriesItem.radius = [((props === null || props === void 0 ? void 0 : (_props$contentParams18 = props.contentParams) === null || _props$contentParams18 === void 0 ? void 0 : (_props$contentParams19 = _props$contentParams18.pieSpecial) === null || _props$contentParams19 === void 0 ? void 0 : _props$contentParams19._radiusInner) || 0) + '%', ((props === null || props === void 0 ? void 0 : (_props$contentParams20 = props.contentParams) === null || _props$contentParams20 === void 0 ? void 0 : (_props$contentParams21 = _props$contentParams20.pieSpecial) === null || _props$contentParams21 === void 0 ? void 0 : _props$contentParams21._radiusOuter) || 0) + '%'];
//标签
if (!(props !== null && props !== void 0 && (_props$contentParams22 = props.contentParams) !== null && _props$contentParams22 !== void 0 && _props$contentParams22.label)) {
_context.next = 47;
break;
}
seriesItem.label = {
show: props === null || props === void 0 ? void 0 : (_props$contentParams23 = props.contentParams) === null || _props$contentParams23 === void 0 ? void 0 : _props$contentParams23.label.show,
color: (props === null || props === void 0 ? void 0 : (_props$contentParams24 = props.contentParams) === null || _props$contentParams24 === void 0 ? void 0 : _props$contentParams24.label.color) || 'inherit',
position: props === null || props === void 0 ? void 0 : (_props$contentParams25 = props.contentParams) === null || _props$contentParams25 === void 0 ? void 0 : _props$contentParams25.label.position
};
_context.t2 = props === null || props === void 0 ? void 0 : (_props$contentParams26 = props.contentParams) === null || _props$contentParams26 === void 0 ? void 0 : _props$contentParams26.label._showPlan;
_context.next = _context.t2 === 'normal' ? 38 : _context.t2 === 'pop' ? 39 : _context.t2 === 'popDark' ? 43 : 47;
break;
case 38:
return _context.abrupt("break", 47);
case 39:
seriesItem.label.padding = 10;
seriesItem.label.backgroundColor = 'rgba(255, 255, 255, 0.3)';
seriesItem.label.borderRadius = 100;
return _context.abrupt("break", 47);
case 43:
seriesItem.label.padding = 10;
seriesItem.label.backgroundColor = 'rgba(0, 0, 0, 0.3)';
seriesItem.label.borderRadius = 100;
return _context.abrupt("break", 47);
case 47:
//扇区样式
if (props !== null && props !== void 0 && (_props$contentParams27 = props.contentParams) !== null && _props$contentParams27 !== void 0 && _props$contentParams27.itemStyle) {
seriesItem.itemStyle = {
borderWidth: props.contentParams.itemStyle.borderWidth,
borderColor: props.contentParams.itemStyle.borderColor,
borderType: props.contentParams.itemStyle.borderType,
shadowBlur: props.contentParams.itemStyle.shadowBlur,
shadowColor: props.contentParams.itemStyle.shadowColor,
borderRadius: [(props.contentParams.itemStyle._borderRadiusInner || 0) + '%', (props.contentParams.itemStyle._borderRadiusOuter || 0) + '%']
};
}
//高亮配置
seriesItem.emphasis = {};
//高亮下的标签
if (props !== null && props !== void 0 && (_props$contentParams28 = props.contentParams) !== null && _props$contentParams28 !== void 0 && (_props$contentParams29 = _props$contentParams28.label) !== null && _props$contentParams29 !== void 0 && (_props$contentParams30 = _props$contentParams29._emphasisSel) !== null && _props$contentParams30 !== void 0 && _props$contentParams30.length) {
//先继承基础值
seriesItem.emphasis.label = _lodash["default"].cloneDeep(seriesItem.label);
if (props !== null && props !== void 0 && (_props$contentParams31 = props.contentParams) !== null && _props$contentParams31 !== void 0 && (_props$contentParams32 = _props$contentParams31.label) !== null && _props$contentParams32 !== void 0 && (_props$contentParams33 = _props$contentParams32._emphasisSel) !== null && _props$contentParams33 !== void 0 && _props$contentParams33.includes('color')) {
seriesItem.emphasis.label.color = (props === null || props === void 0 ? void 0 : (_props$contentParams34 = props.contentParams) === null || _props$contentParams34 === void 0 ? void 0 : (_props$contentParams35 = _props$contentParams34.label) === null || _props$contentParams35 === void 0 ? void 0 : (_props$contentParams36 = _props$contentParams35._emphasis) === null || _props$contentParams36 === void 0 ? void 0 : _props$contentParams36.color) || 'inherit';
}
if (props !== null && props !== void 0 && (_props$contentParams37 = props.contentParams) !== null && _props$contentParams37 !== void 0 && (_props$contentParams38 = _props$contentParams37.label) !== null && _props$contentParams38 !== void 0 && (_props$contentParams39 = _props$contentParams38._emphasisSel) !== null && _props$contentParams39 !== void 0 && _props$contentParams39.includes('show')) {
if (props !== null && props !== void 0 && (_props$contentParams40 = props.contentParams) !== null && _props$contentParams40 !== void 0 && (_props$contentParams41 = _props$contentParams40.label) !== null && _props$contentParams41 !== void 0 && (_props$contentParams42 = _props$contentParams41._emphasis) !== null && _props$contentParams42 !== void 0 && _props$contentParams42.show) {
seriesItem.emphasis.label.show = true;
} else {
seriesItem.emphasis.label.show = false;
}
}
}
//根据数据和配置填充其它属性
option.series = [];
pieColorMap = {};
if (props !== null && props !== void 0 && (_props$contentParams43 = props.contentParams) !== null && _props$contentParams43 !== void 0 && (_props$contentParams44 = _props$contentParams43.dataSetConfig) !== null && _props$contentParams44 !== void 0 && (_props$contentParams45 = _props$contentParams44.pieSetArr) !== null && _props$contentParams45 !== void 0 && _props$contentParams45.length) {
props === null || props === void 0 ? void 0 : (_props$contentParams46 = props.contentParams) === null || _props$contentParams46 === void 0 ? void 0 : (_props$contentParams47 = _props$contentParams46.dataSetConfig) === null || _props$contentParams47 === void 0 ? void 0 : _props$contentParams47.pieSetArr.forEach(function (setItem) {
var _setItem$extraStyle;
if (setItem && setItem.field && (_setItem$extraStyle = setItem.extraStyle) !== null && _setItem$extraStyle !== void 0 && _setItem$extraStyle.color) {
pieColorMap[setItem.field] = setItem.extraStyle.color;
}
});
}
if (props !== null && props !== void 0 && (_props$contentParams48 = props.contentParams) !== null && _props$contentParams48 !== void 0 && (_props$contentParams49 = _props$contentParams48.dataSetConfig) !== null && _props$contentParams49 !== void 0 && _props$contentParams49.labelField) {
fillData = [];
if (Array.isArray(data)) {
data.forEach(function (eachDataItem) {
var fillItem = {
name: eachDataItem[props.contentParams.dataSetConfig.labelField],
value: eachDataItem[props.contentParams.dataSetConfig.valueField]
};
if (pieColorMap[eachDataItem[props.contentParams.dataSetConfig.labelField]]) {
fillItem.itemStyle = {
color: pieColorMap[eachDataItem[props.contentParams.dataSetConfig.labelField]]
};
}
fillData.push(fillItem);
});
} else if (Array.isArray(data === null || data === void 0 ? void 0 : data[props.contentParams.dataSetConfig.labelField])) {
//另一种数据结构
(_data$props$contentPa2 = data[props.contentParams.dataSetConfig.labelField]) === null || _data$props$contentPa2 === void 0 ? void 0 : _data$props$contentPa2.forEach(function (eachField, index) {
var _data$props$contentPa3;
var fillItem = {
name: eachField,
value: (_data$props$contentPa3 = data[props.contentParams.dataSetConfig.valueField]) === null || _data$props$contentPa3 === void 0 ? void 0 : _data$props$contentPa3[index]
};
if (pieColorMap[eachField]) {
fillItem.itemStyle = {
color: pieColorMap[eachField]
};
}
fillData.push(fillItem);
});
}
newSeriesItem = _lodash["default"].cloneDeep(seriesItem); //需要用到field的特殊配置先修改好
if (props !== null && props !== void 0 && (_props$contentParams50 = props.contentParams) !== null && _props$contentParams50 !== void 0 && (_props$contentParams51 = _props$contentParams50.label) !== null && _props$contentParams51 !== void 0 && _props$contentParams51.show) {
if (props !== null && props !== void 0 && (_props$contentParams52 = props.contentParams) !== null && _props$contentParams52 !== void 0 && _props$contentParams52.label._beforeTxt || props !== null && props !== void 0 && (_props$contentParams53 = props.contentParams) !== null && _props$contentParams53 !== void 0 && _props$contentParams53.label._afterTxt || props !== null && props !== void 0 && (_props$contentParams54 = props.contentParams) !== null && _props$contentParams54 !== void 0 && _props$contentParams54.label._showPercentage || props !== null && props !== void 0 && (_props$contentParams55 = props.contentParams) !== null && _props$contentParams55 !== void 0 && _props$contentParams55.label._showRealNum) {
//特殊格式
newSeriesItem.label.formatter = (props === null || props === void 0 ? void 0 : (_props$contentParams56 = props.contentParams) === null || _props$contentParams56 === void 0 ? void 0 : _props$contentParams56.label._beforeTxt) + "{b}" + (props === null || props === void 0 ? void 0 : (_props$contentParams57 = props.contentParams) === null || _props$contentParams57 === void 0 ? void 0 : _props$contentParams57.label._afterTxt) + (props !== null && props !== void 0 && (_props$contentParams58 = props.contentParams) !== null && _props$contentParams58 !== void 0 && _props$contentParams58.label._showRealNum ? '\n{c}' : '') + (props !== null && props !== void 0 && (_props$contentParams59 = props.contentParams) !== null && _props$contentParams59 !== void 0 && _props$contentParams59.label._showPercentage ? '\n({d}%)' : '');
}
}
newSeriesItem.data = fillData;
option.series.push(newSeriesItem);
}
//自定义转换数据和配置项
if (props.formatOptionCode) {
try {
option = props.formatOptionCode(option, data);
} catch (e) {
console.error(e);
_message2["default"].error('Echarts配置项转换出错');
}
}
console.log('option', option);
if (myChartRef.current) {
console.log("开始绘制", myChartRef.current);
myChartRef.current.clear();
myChartRef.current.resize();
myChartRef.current.setOption(option);
}
_totalMsg = null;
if (props !== null && props !== void 0 && (_props$contentParams60 = props.contentParams) !== null && _props$contentParams60 !== void 0 && (_props$contentParams61 = _props$contentParams60.totalMsg) !== null && _props$contentParams61 !== void 0 && _props$contentParams61.show) {
_totalMsg = 0;
if (Array.isArray(data)) {
data.forEach(function (eachItem) {
_totalMsg += eachItem[props.contentParams.dataSetConfig.valueField] || 0;
});
} else if (data !== null && data !== void 0 && data[props.contentParams.dataSetConfig.valueField] && Array.isArray(data === null || data === void 0 ? void 0 : data[props.contentParams.dataSetConfig.valueField])) {
data[props.contentParams.dataSetConfig.valueField].forEach(function (eachV) {
_totalMsg += eachV || 0;
});
}
if (!isNaN(Number(_totalMsg)) && props !== null && props !== void 0 && (_props$contentParams62 = props.contentParams) !== null && _props$contentParams62 !== void 0 && _props$contentParams62.totalMsg.tranBigNum) {
//是数字,且开启了处理
_totalMsg = (0, _CommonViewDiv.tranNumber)(_totalMsg, props === null || props === void 0 ? void 0 : (_props$contentParams63 = props.contentParams) === null || _props$contentParams63 === void 0 ? void 0 : _props$contentParams63.totalMsg.bigNumPoint);
}
}
setTotalMsg(_totalMsg);
setError(null);
case 61:
case "end":
return _context.stop();
}
}, _callee);
}));
return function showValue(_x) {
return _ref.apply(this, arguments);
};
}();
return /*#__PURE__*/_react["default"].createElement("div", {
className: _variables.bizCssPrefix + '-chartBox'
}, /*#__PURE__*/_react["default"].createElement("div", {
ref: chartDomRef,
className: _variables.bizCssPrefix + '-chartDom',
style: props.style || {}
}), totalMsg !== null && totalMsg !== undefined ? /*#__PURE__*/_react["default"].createElement("div", {
className: _variables.bizCssPrefix + '-totalMsg',
style: {
top: (((_props$contentParams64 = props.contentParams) === null || _props$contentParams64 === void 0 ? void 0 : (_props$contentParams65 = _props$contentParams64.totalMsg) === null || _props$contentParams65 === void 0 ? void 0 : _props$contentParams65._centerSetY) || 0) + '%',
left: ((props === null || props === void 0 ? void 0 : (_props$contentParams66 = props.contentParams) === null || _props$contentParams66 === void 0 ? void 0 : (_props$contentParams67 = _props$contentParams66.totalMsg) === null || _props$contentParams67 === void 0 ? void 0 : _props$contentParams67._centerSetX) || 0) + '%',
alignItems: "" + (props === null || props === void 0 ? void 0 : (_props$contentParams68 = props.contentParams) === null || _props$contentParams68 === void 0 ? void 0 : (_props$contentParams69 = _props$contentParams68.totalMsg) === null || _props$contentParams69 === void 0 ? void 0 : _props$contentParams69.alignItems)
}
}, props !== null && props !== void 0 && (_props$contentParams$ = props.contentParams.totalMsg.beforeTextSet) !== null && _props$contentParams$ !== void 0 && _props$contentParams$.text ? (0, _CommonViewDiv.getText)(props === null || props === void 0 ? void 0 : props.contentParams.totalMsg.beforeTextSet, props === null || props === void 0 ? void 0 : (_props$contentParams$2 = props.contentParams.totalMsg.beforeTextSet) === null || _props$contentParams$2 === void 0 ? void 0 : _props$contentParams$2.text) : null, /*#__PURE__*/_react["default"].createElement("div", {
style: {
marginLeft: (0, _CommonViewDiv.changeRemNum)(props === null || props === void 0 ? void 0 : props.contentParams.totalMsg.marginLeft),
marginRight: (0, _CommonViewDiv.changeRemNum)(props === null || props === void 0 ? void 0 : props.contentParams.totalMsg.marginRight)
}
}, (0, _CommonViewDiv.getText)(props === null || props === void 0 ? void 0 : (_props$contentParams70 = props.contentParams) === null || _props$contentParams70 === void 0 ? void 0 : _props$contentParams70.totalMsg.centerTextSet, totalMsg)), props !== null && props !== void 0 && (_props$contentParams$3 = props.contentParams.totalMsg.afterTextSet) !== null && _props$contentParams$3 !== void 0 && _props$contentParams$3.text ? (0, _CommonViewDiv.getText)(props === null || props === void 0 ? void 0 : props.contentParams.totalMsg.afterTextSet, props === null || props === void 0 ? void 0 : (_props$contentParams$4 = props.contentParams.totalMsg.afterTextSet) === null || _props$contentParams$4 === void 0 ? void 0 : _props$contentParams$4.text) : null) : null, error ? /*#__PURE__*/_react["default"].createElement("div", {
className: _variables.bizCssPrefix + '-errorMsg'
}, error) : null);
};
var _default = exports["default"] = ChartPie;