asb_cloud_front/src/pages/Cluster/index.jsx

34 lines
1018 B
React
Raw Normal View History

import { useState, useEffect } from 'react'
import { useParams } from 'react-router-dom'
2021-08-27 14:21:48 +05:00
import { arrayOrDefault } from '@utils'
import { OperationStatService } from '@api'
import LoaderPortal from '@components/LoaderPortal'
import { invokeWebApiWrapperAsync } from '@components/factory'
import ClusterWells from './ClusterWells'
export const Cluster = () => {
const { idCluster } = useParams()
const [data, setData] = useState([])
const [showLoader, setShowLoader] = useState(false)
2021-08-27 14:21:48 +05:00
useEffect(() => invokeWebApiWrapperAsync(
async () => {
const clusterData = await OperationStatService.getStatCluster(idCluster)
setData(arrayOrDefault(clusterData?.statsWells))
},
setShowLoader,
`Не удалось загрузить данные по кусту "${idCluster}"`,
'Получение данных по кусту'
), [idCluster])
2021-08-27 14:21:48 +05:00
return (
<LoaderPortal show={showLoader}>
<ClusterWells statsWells={data} />
</LoaderPortal>
)
2021-08-27 14:21:48 +05:00
}
export default Cluster