123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- import { PageContainer } from '@ant-design/pro-components';
- import { Card } from 'antd';
- import React, { useEffect, useState } from 'react';
- import styles from './Welcome.less';
- import StatisticIndex from '../pages/statistical/index';
- import { getStatisticData } from '@/services/statistic';
- /**
- * 首页
- * @constructor
- */
- const Welcome: React.FC = () => {
- const [data, setData] = useState<any>(null);
- // 获取数据
- const getData = () => {
- getStatisticData().then((res) => {
- if (res?.code === 0) {
- setData(res.data);
- }
- });
- };
- // 初始化
- useEffect(() => {
- getData();
- }, []);
- return (
- <PageContainer>
- <div className={styles.statistic}>
- <div className={styles.num_style}>
- <div className={styles.title}>注册用户</div>
- <div>
- <span className={styles.num}>{data?.user_count}</span>
- <span style={{ fontSize: '12px', marginLeft: '5px' }}>人</span>
- </div>
- <img src="/assets/user.png" alt="用户" className={styles.statistic_icon} />
- </div>
- <div className={styles.num_style}>
- <div className={styles.title}>设备数</div>
- <div>
- <span className={styles.num}>{data?.device_offline + data?.device_online}</span>
- <span style={{ fontSize: '12px', marginLeft: '5px' }}>个</span>
- </div>
- <img src="/assets/device.png" alt="设备" className={styles.statistic_icon} />
- </div>
- </div>
- <Card>
- <div className={styles.device_status}>设备状态</div>
- {data && <StatisticIndex data={data} />}
- </Card>
- </PageContainer>
- );
- };
- export default Welcome;
|