new.js 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. import React, { Component } from "react";
  2. import ContentWrapper from "@/components/Layout/ContentWrapper";
  3. import DetailPT from "@/components/Main/DetailPT";
  4. import Header from "@/components/Main/Header";
  5. import DetailLaporan from "@/components/Main/DetailLaporan";
  6. import InputEvaluasi from "@/components/Pemeriksaan/InputEvaluasi";
  7. import TableRiwayat from "@/components/Pemeriksaan/TableRiwayat";
  8. import { getPelaporan } from "@/actions/pelaporan";
  9. import Link from "next/link";
  10. import { Row, Col, Card, CardBody, CardHeader, CardTitle } from "reactstrap";
  11. import Loader from "@/components/Common/Loader";
  12. class PemeriksaanNew extends Component {
  13. constructor(props) {
  14. super(props);
  15. this.state = {
  16. pelaporan: {},
  17. };
  18. }
  19. static getInitialProps = async ({ query }) => {
  20. return { query };
  21. };
  22. componentDidMount = async () => {
  23. const { query } = this.props;
  24. const pelaporan = await getPelaporan({ ptId: query.ptId, number: query.number });
  25. this.setState({ pelaporan });
  26. };
  27. render() {
  28. const { query } = this.props;
  29. const { pelaporan } = this.state;
  30. return (
  31. <ContentWrapper unwrap>
  32. {/* <Header /> */}
  33. <div className="p-3">
  34. <div className="content-heading">
  35. <div>Evaluasi Pemeriksaan</div>
  36. <div className="ml-auto">
  37. <Link href="/app/pemeriksaan">
  38. <button className="btn btn-sm btn-secondary text-sm">&lt; back</button>
  39. </Link>
  40. </div>
  41. </div>
  42. <Row>
  43. <Col xl="9">
  44. {pelaporan.data && pelaporan.data.length ? (
  45. <Card className="card-default">
  46. <CardBody>
  47. <Row>
  48. <Col lg={12}>
  49. <DetailLaporan data={pelaporan.data[0]} />
  50. <InputEvaluasi query={query} />
  51. </Col>
  52. </Row>
  53. </CardBody>
  54. </Card>
  55. ) : (
  56. <Loader />
  57. )}
  58. </Col>
  59. <Col xl="3">{pelaporan.data && pelaporan.data.length ? <DetailPT data={pelaporan.data[0].pt} /> : <Loader />}</Col>
  60. </Row>
  61. {pelaporan.data && pelaporan.data.length && (
  62. <Row>
  63. <Col>
  64. <Card className="card-default">
  65. <CardHeader>
  66. <CardTitle>Riwayat Evaluasi</CardTitle>
  67. </CardHeader>
  68. <CardBody>
  69. <TableRiwayat data={pelaporan.data[0]} />
  70. </CardBody>
  71. </Card>
  72. </Col>
  73. </Row>
  74. )}
  75. </div>
  76. </ContentWrapper>
  77. );
  78. }
  79. }
  80. export default PemeriksaanNew;