pemantauan.js 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  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 { connect } from "react-redux";
  10. class Pemantauan extends Component {
  11. constructor(props) {
  12. super(props);
  13. this.state = {
  14. log: [],
  15. pelaporan: {},
  16. };
  17. }
  18. componentDidMount = async () => {
  19. const { user } = this.props;
  20. const log = await getLog({ ptId: user.peran[0].organisasi.id, isPT: true });
  21. const pelaporan = await getPelaporan({ ptId: user.peran[0].organisasi.id });
  22. this.setState({ log, pelaporan });
  23. };
  24. render() {
  25. const { log, pelaporan } = this.state;
  26. return (
  27. <ContentWrapper unwrap>
  28. <Header data={this.props.pt[0]} />
  29. <div className="p-3">
  30. <Row>
  31. <Col xl="9">{log && pelaporan.data && <Timeline data={log} dataPelaporan={pelaporan.data[0]} />}</Col>
  32. <Col xl="3">{this.props.pt && <DetailPT data={this.props.pt[0]} />}</Col>
  33. </Row>
  34. </div>
  35. </ContentWrapper>
  36. );
  37. }
  38. }
  39. const mapStateToProps = (state) => ({ user: state.user, pt: state.pt });
  40. export default connect(mapStateToProps)(Pemantauan);