|
|
|
@ -0,0 +1,62 @@ |
|
|
|
import React, { useState, useEffect } from "react"; |
|
|
|
import PropTypes from "prop-types"; |
|
|
|
|
|
|
|
import Spin from 'antd/lib/spin'; |
|
|
|
import Typography from 'antd/lib/typography'; |
|
|
|
import notification from 'antd/lib/notification'; |
|
|
|
|
|
|
|
import { Chart, Interval } from 'bizcharts'; |
|
|
|
|
|
|
|
const { Title } = Typography; |
|
|
|
|
|
|
|
const GraficoPublicacoesTotaisPorComunidade = ({ }) => { |
|
|
|
const [ data, setData ] = useState([]); |
|
|
|
const [ loading, setLoading ] = useState(true); |
|
|
|
|
|
|
|
useEffect(() => { |
|
|
|
const fail = ()=> { |
|
|
|
setLoading(false); |
|
|
|
notification["error"]({ |
|
|
|
message: 'Gráfico das Publicações Totais', |
|
|
|
description: 'Ocorreu um erro ao carregar o gráfico.', |
|
|
|
style: { |
|
|
|
marginTop: 100, |
|
|
|
} |
|
|
|
}); |
|
|
|
}; |
|
|
|
netuno.service({ |
|
|
|
url: '/services/publicacoes/graficos/comunidades/total', |
|
|
|
method: 'GET', |
|
|
|
credentials: 'include', |
|
|
|
headers: { |
|
|
|
'Content-Type': 'application/json' |
|
|
|
}, |
|
|
|
success: (response)=> { |
|
|
|
console.log(response); |
|
|
|
if (response.json) { |
|
|
|
setLoading(false); |
|
|
|
setData(response.json); |
|
|
|
} else { |
|
|
|
fail(); |
|
|
|
} |
|
|
|
}, |
|
|
|
fail: ()=> { |
|
|
|
fail(); |
|
|
|
} |
|
|
|
}); |
|
|
|
}, []); |
|
|
|
|
|
|
|
return <> |
|
|
|
asfasfd |
|
|
|
<Title level={5}>Publicações Totais por Comunidade</Title> |
|
|
|
{ loading && <Spin size="large"/> } |
|
|
|
<Chart padding={[10, 20, 60, 40]} height={300} autoFit data={data} > |
|
|
|
<Interval position="comunidade*total" /> |
|
|
|
</Chart> |
|
|
|
</>; |
|
|
|
}; |
|
|
|
|
|
|
|
GraficoPublicacoesTotaisPorComunidade.propTypes = { |
|
|
|
}; |
|
|
|
|
|
|
|
export default GraficoPublicacoesTotaisPorComunidade; |