|
@@ -17,6 +17,17 @@ import { useMemo } from 'react';
|
|
import styles from './manage.less';
|
|
import styles from './manage.less';
|
|
|
|
|
|
const EnergyCostDetail = () => {
|
|
const EnergyCostDetail = () => {
|
|
|
|
+ return (
|
|
|
|
+ <PageContent closeable={false}>
|
|
|
|
+ <PageTitle returnable>能耗数据</PageTitle>
|
|
|
|
+ <EnergyDetail />
|
|
|
|
+ </PageContent>
|
|
|
|
+ );
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+export default EnergyCostDetail;
|
|
|
|
+
|
|
|
|
+export const EnergyDetail = () => {
|
|
const { projectId } = useParams();
|
|
const { projectId } = useParams();
|
|
|
|
|
|
const TIMER = 3600000;
|
|
const TIMER = 3600000;
|
|
@@ -204,60 +215,54 @@ const EnergyCostDetail = () => {
|
|
}, [energyData]);
|
|
}, [energyData]);
|
|
|
|
|
|
const loading = useMemo(() => allFacLoading, [allFacLoading]);
|
|
const loading = useMemo(() => allFacLoading, [allFacLoading]);
|
|
-
|
|
|
|
return (
|
|
return (
|
|
- <PageContent closeable={false}>
|
|
|
|
- <PageTitle returnable>能耗数据</PageTitle>
|
|
|
|
- <Spin spinning={loading}>
|
|
|
|
- <div className={styles.infoContainer}>
|
|
|
|
- <div>
|
|
|
|
- <SubTitle title="全厂概览" />
|
|
|
|
- <div style={{ display: 'flex' }}>
|
|
|
|
- {allFactory.map((item, index) => (
|
|
|
|
- <DataCard key={`all_${index}`} {...item} type={4} />
|
|
|
|
- ))}
|
|
|
|
- </div>
|
|
|
|
|
|
+ <Spin spinning={loading}>
|
|
|
|
+ <div className={styles.infoContainer}>
|
|
|
|
+ <div>
|
|
|
|
+ <SubTitle title="全厂概览" />
|
|
|
|
+ <div style={{ display: 'flex' }}>
|
|
|
|
+ {allFactory.map((item, index) => (
|
|
|
|
+ <DataCard key={`all_${index}`} {...item} type={4} />
|
|
|
|
+ ))}
|
|
</div>
|
|
</div>
|
|
- <div>
|
|
|
|
- <SubTitle title="用电概况" />
|
|
|
|
- <div style={{ display: 'flex', flexWrap: 'wrap' }}>
|
|
|
|
- {powerData.map((item, index) => (
|
|
|
|
- <DataCard key={`power_${index}`} {...item} type={3} />
|
|
|
|
- ))}
|
|
|
|
- </div>
|
|
|
|
|
|
+ </div>
|
|
|
|
+ <div>
|
|
|
|
+ <SubTitle title="用电概况" />
|
|
|
|
+ <div style={{ display: 'flex', flexWrap: 'wrap' }}>
|
|
|
|
+ {powerData.map((item, index) => (
|
|
|
|
+ <DataCard key={`power_${index}`} {...item} type={3} />
|
|
|
|
+ ))}
|
|
</div>
|
|
</div>
|
|
- <div>
|
|
|
|
- <SubTitle title="吨水电耗" />
|
|
|
|
- <div style={{ height: '3rem' }}>
|
|
|
|
- {chartData && allFactoryData && (
|
|
|
|
- <ChartModule
|
|
|
|
- yName={allFactoryData?.energy_water_unit || 'kWh'}
|
|
|
|
- xData={chartData.xData}
|
|
|
|
- dataList={chartData.dataList}
|
|
|
|
- />
|
|
|
|
- )}
|
|
|
|
- </div>
|
|
|
|
|
|
+ </div>
|
|
|
|
+ <div>
|
|
|
|
+ <SubTitle title="吨水电耗" />
|
|
|
|
+ <div style={{ height: '3rem' }}>
|
|
|
|
+ {chartData && allFactoryData && (
|
|
|
|
+ <ChartModule
|
|
|
|
+ yName={allFactoryData?.energy_water_unit || 'kWh'}
|
|
|
|
+ xData={chartData.xData}
|
|
|
|
+ dataList={chartData.dataList}
|
|
|
|
+ />
|
|
|
|
+ )}
|
|
</div>
|
|
</div>
|
|
- <div>
|
|
|
|
- <SubTitle title="电量" />
|
|
|
|
- <div style={{ height: '3rem' }}>
|
|
|
|
- {electricChartData && allFactoryData && (
|
|
|
|
- <ChartModule
|
|
|
|
- yName={allFactoryData?.energy_unit || 'kWh/t'}
|
|
|
|
- xData={electricChartData.xData}
|
|
|
|
- dataList={electricChartData.dataList}
|
|
|
|
- />
|
|
|
|
- )}
|
|
|
|
- </div>
|
|
|
|
|
|
+ </div>
|
|
|
|
+ <div>
|
|
|
|
+ <SubTitle title="电量" />
|
|
|
|
+ <div style={{ height: '3rem' }}>
|
|
|
|
+ {electricChartData && allFactoryData && (
|
|
|
|
+ <ChartModule
|
|
|
|
+ yName={allFactoryData?.energy_unit || 'kWh/t'}
|
|
|
|
+ xData={electricChartData.xData}
|
|
|
|
+ dataList={electricChartData.dataList}
|
|
|
|
+ />
|
|
|
|
+ )}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
- </Spin>
|
|
|
|
- </PageContent>
|
|
|
|
|
|
+ </div>
|
|
|
|
+ </Spin>
|
|
);
|
|
);
|
|
};
|
|
};
|
|
|
|
|
|
-export default EnergyCostDetail;
|
|
|
|
-
|
|
|
|
const DataCard = ({ title, data, unit, icon, color, type }) => {
|
|
const DataCard = ({ title, data, unit, icon, color, type }) => {
|
|
const width = Math.floor(100 / type - 2) + '%';
|
|
const width = Math.floor(100 / type - 2) + '%';
|
|
return (
|
|
return (
|