import React, { useEffect, useRef, useState } from "react" import Highcharts from "highcharts" import HighchartsReact from "highcharts-react-official" import { Col, Row } from "reactstrap" import { format_angka } from "../util" import collect from "collect.js" const Pengampu = ({ dataSend }) => { const base_url = "<?=base_url()?>" const refChart = useRef(null) const refChart2 = useRef(null) const [dataAssign, setDataAssign] = useState(null) const [dataUnAssign, setDataUnAssign] = useState(null) useEffect(() => { jQuery.get({ url: base_url + "kewilayahan/kytp/sebaranPengampu", dataType: "json", type: "POST", data: { ...dataSend }, success: (data) => { setDataAssign(data.assign) setDataUnAssign(data.unassign) } }) }, [dataSend]) const optionsChart = (data, title) => { const total_wp = collect(data).sum("y") return { chart: { plotBackgroundColor: null, plotBorderWidth: null, plotShadow: false, type: "pie", zoomType: "xy", height: "300" }, title: { text: title, style: { fontSize: "10px" } }, tooltip: { pointFormat: "<b>{point.percentage:.1f}%</b><br>: {point.y} dari " + format_angka(total_wp) + " total NPWP" }, accessibility: { point: { valueSuffix: "%" } }, plotOptions: { pie: { allowPointSelect: true, cursor: "pointer", dataLabels: { enabled: true, style: { fontSize: "10px" }, format: "{point.name}: <br> {point.percentage:.1f} %" } } // series: pie_click }, series: [ { name: "", data } ] } } return ( <> <Row> <Col md="6"> <HighchartsReact ref={refChart} highcharts={Highcharts} options={optionsChart(dataAssign, "KPP Terdaftar")} /> </Col> <Col md="6"> <HighchartsReact ref={refChart2} highcharts={Highcharts} options={optionsChart(dataUnAssign, "Status UnAssign")} /> </Col> </Row> </> ) } export default Pengampu