index.js 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  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 TableRiwayat from "@/components/Riwayat/TableRiwayat";
  9. import ChartData from "@/components/Riwayat/ChartData";
  10. import ChartDataBar from "@/components/Riwayat/ChartDataBar";
  11. import Maps from "@/components/Riwayat/Maps"
  12. import TableRadar from "../../../components/Riwayat/TableRadar";
  13. import { getjumlahStatusLaporan } from "../../../actions/graph";
  14. import ChartRadarB from "../../../components/Riwayat/ChartRadarB";
  15. import ChartRadarA from "../../../components/Riwayat/ChartRadarA";
  16. class Riwayat extends Component {
  17. constructor(props) {
  18. super(props);
  19. this.state = {
  20. jumlahStatusLaporan: {}
  21. };
  22. }
  23. handleClick = (e, idPembina) => {
  24. e.preventDefault();
  25. Router.push({
  26. pathname: "/app/riwayat/detail",
  27. query: { id: idPembina },
  28. });
  29. };
  30. componentDidMount = async () => {
  31. const { token } = this.props;
  32. const jumlahStatusLaporan = await getjumlahStatusLaporan(token);
  33. this.setState({ jumlahStatusLaporan });
  34. };
  35. render() {
  36. const { jumlahStatusLaporan } = this.state;
  37. return (
  38. <ContentWrapper>
  39. <div className="content-heading">
  40. <span className="font-color-white">Riwayat</span>
  41. </div>
  42. <Row>
  43. <Col lg="6">
  44. <ChartDataBar />
  45. </Col>
  46. <Col lg="6">
  47. <Maps />
  48. </Col>
  49. <Col lg="6">
  50. <ChartRadarA />
  51. </Col>
  52. <Col lg="6">
  53. <ChartRadarB />
  54. </Col>
  55. <Col lg="12">
  56. {jumlahStatusLaporan?.data ? <TableRadar listData={jumlahStatusLaporan.data} to="/app/riwayat/detail" jadwal="/app/riwayat/penjadwalan" all_Laporan="/app/riwayat/all_Laporan" pemeriksaan="/app/riwayat/pemeriksaan" sanksi="/app/riwayat/sanksi" keberatan="/app/riwayat/keberatan" banding="/app/riwayat/banding" perbaikan="/app/riwayat/perbaikan" cabutSanksi="/app/riwayat/cabutSanksi" linkName="Lihat" /> : <Loader />}
  57. </Col>
  58. <ChartData />
  59. <Col lg="12">
  60. <TableRiwayat />
  61. </Col>
  62. </Row>
  63. </ContentWrapper>
  64. );
  65. }
  66. }
  67. const mapStateToProps = (state) => ({ user: state.user, token: state.token });
  68. export default connect(mapStateToProps)(Riwayat);