index.js 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. import React, { Component } from "react";
  2. import ContentWrapper from "@/components/Layout/ContentWrapper";
  3. import Link from "next/link";
  4. import { Row, Col, Button, Card, CardBody, Table } from "reactstrap";
  5. import { connect } from "react-redux";
  6. import Loader from "@/components/Common/Loader";
  7. import Router from "next/router";
  8. import ChartDataBar from "@/components/Riwayat/ChartDataBar";
  9. import Maps from "@/components/Riwayat/Maps"
  10. import TableRadar from "../../../components/Riwayat/TableRadar";
  11. import { getjumlahStatusLaporan } from "../../../actions/graph";
  12. import ChartRadarB from "../../../components/Riwayat/ChartRadarB";
  13. import ChartRadarA from "../../../components/Riwayat/ChartRadarA";
  14. class Dashboard extends Component {
  15. constructor(props) {
  16. super(props);
  17. this.state = {
  18. jumlahStatusLaporan: {}
  19. };
  20. }
  21. handleClick = (e, idPembina) => {
  22. e.preventDefault();
  23. Router.push({
  24. pathname: "/app/riwayat/detail",
  25. query: { id: idPembina },
  26. });
  27. };
  28. componentDidMount = async () => {
  29. const { token } = this.props;
  30. const jumlahStatusLaporan = await getjumlahStatusLaporan(token);
  31. this.setState({ jumlahStatusLaporan });
  32. };
  33. render() {
  34. const { jumlahStatusLaporan } = this.state;
  35. return (
  36. <ContentWrapper>
  37. <div className="content-heading">
  38. <span className="font-color-white">Dashboard</span>
  39. </div>
  40. <Row>
  41. <Col lg="6">
  42. <ChartDataBar />
  43. </Col>
  44. <Col lg="6">
  45. <Maps />
  46. </Col>
  47. <Col lg="6">
  48. <ChartRadarA />
  49. </Col>
  50. <Col lg="6">
  51. <ChartRadarB />
  52. </Col>
  53. <Col lg="12">
  54. {jumlahStatusLaporan?.data ? <TableRadar listData={jumlahStatusLaporan.data} to="/app/dashboard/detail" jadwal="/app/dashboard/penjadwalan" all_Laporan="/app/dashboard/all_Laporan" pemeriksaan="/app/dashboard/pemeriksaan" sanksi="/app/dashboard/sanksi" keberatan="/app/dashboard/keberatan" banding="/app/dashboard/banding" perbaikan="/app/dashboard/perbaikan" cabutSanksi="/app/dashboard/cabutSanksi" tuntasCabutsanksi="/app/dashboard/tuntasCabutsanksi" tuntasDitutup="/app/dashboard/tuntasDitutup" delegasi="/app/dashboard/delegasi" linkName="Lihat" /> : <Loader />}
  55. </Col>
  56. </Row>
  57. </ContentWrapper>
  58. );
  59. }
  60. }
  61. const mapStateToProps = (state) => ({ user: state.user, token: state.token });
  62. export default connect(mapStateToProps)(Dashboard);