index.js 2.5 KB

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