|
@@ -2,11 +2,35 @@ import React from 'react';
|
|
|
import { Tooltip } from 'antd';
|
|
|
import './index.less';
|
|
|
import Assets from '@src/components/Assets';
|
|
|
+import PieChart from '@src/components/PieChart';
|
|
|
import { formatDate } from '@src/services/Tools';
|
|
|
import Module from '../Module';
|
|
|
import ProgressButton from '../ProgressButton';
|
|
|
import Button from '../Button';
|
|
|
|
|
|
+function makePie(value) {
|
|
|
+ return {
|
|
|
+ title: {
|
|
|
+ text: '30%',
|
|
|
+ textAlign: 'center',
|
|
|
+ textVerticalAlign: 'middle',
|
|
|
+ subtext: '全站 60%',
|
|
|
+ top: '28%',
|
|
|
+ left: '48%',
|
|
|
+ },
|
|
|
+ color: [value < 50 ? '#f19057' : '#6966fb', '#f7f7f7'],
|
|
|
+ series: [
|
|
|
+ {
|
|
|
+ type: 'pie',
|
|
|
+ radius: ['90%', '100%'],
|
|
|
+ label: {
|
|
|
+ show: false,
|
|
|
+ },
|
|
|
+ data: [value, 100 - value],
|
|
|
+ },
|
|
|
+ ],
|
|
|
+ };
|
|
|
+}
|
|
|
export default function Panel(props) {
|
|
|
const { style, message, data = {}, col = 3, title, onClick } = props;
|
|
|
return (
|
|
@@ -21,7 +45,7 @@ export default function Panel(props) {
|
|
|
</div>
|
|
|
<div className="body">
|
|
|
<div className="chart-info">
|
|
|
- <div className="chart" />
|
|
|
+ <PieChart option={makePie(23)} width={110} height={110} />
|
|
|
<div className="info">
|
|
|
{(data.info || []).map(row => {
|
|
|
return (
|
|
@@ -155,7 +179,7 @@ export function SmallPanel(props) {
|
|
|
</div>
|
|
|
<div className="body" onClick={() => onClick && onClick()}>
|
|
|
<div className="chart-info">
|
|
|
- <div className="chart" />
|
|
|
+ <PieChart option={makePie(33)} width={110} height={110} />
|
|
|
<div className="info">
|
|
|
{(data.info || []).map(row => {
|
|
|
return (
|
|
@@ -177,7 +201,7 @@ export function SmallPanel(props) {
|
|
|
}
|
|
|
|
|
|
export function SmallWaitPanel(props) {
|
|
|
- const { style, title, lock, data, onOpen } = props;
|
|
|
+ const { style, title, lock, data = {}, onOpen } = props;
|
|
|
const { endTime } = data;
|
|
|
return (
|
|
|
<Module style={style} className="panel small-wait-panel">
|