pemantauan.js 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. import React, { Component } from "react";
  2. import ContentWrapper from "@/components/Layout/ContentWrapper";
  3. import Header from "@/components/Main/Header";
  4. import DetailPT from "@/components/Main/DetailPT";
  5. import { getLog } from "@/actions/log";
  6. import { getPelaporan } from "@/actions/pelaporan";
  7. import { Row, Col } from "reactstrap";
  8. import Timeline from "@/components/PT/Timeline";
  9. import { getUser } from "@/actions/auth";
  10. import { getPT } from "@/actions/PT";
  11. import { connect } from "react-redux";
  12. class Pemantauan extends Component {
  13. constructor(props) {
  14. super(props);
  15. this.state = {
  16. log: [],
  17. pelaporan: {},
  18. };
  19. }
  20. componentDidMount = async () => {
  21. const { user } = this.props;
  22. const log = await getLog({ ptId: user.peran[0].organisasi.id });
  23. const pelaporan = await getPelaporan({ ptId: user.peran[0].organisasi.id });
  24. this.setState({ log, pelaporan });
  25. };
  26. render() {
  27. const { log, pelaporan } = this.state;
  28. return (
  29. <ContentWrapper unwrap>
  30. <Header />
  31. <div className="p-3">
  32. <Row>
  33. <Col xl="9">{log && pelaporan.data && <Timeline data={log} dataPelaporan={pelaporan.data[0]} />}</Col>
  34. <Col xl="3">{this.props.pt && <DetailPT data={this.props.pt[0]} />}</Col>
  35. </Row>
  36. </div>
  37. </ContentWrapper>
  38. );
  39. }
  40. }
  41. const mapStateToProps = (state) => ({ user: state.user, pt: state.pt });
  42. export default connect(mapStateToProps)(Pemantauan);