| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323 | 
							- import Scrollable from "@/components/Common/Scrollable";
 
- import { Card, Row, Col, Table, FormGroup, Label, Button } from "reactstrap";
 
- import moment from "moment";
 
- import 'moment/locale/id'
 
- moment.locale('id')
 
- import ComponentToPrint from "./SuratBA_A";
 
- import ReactToPrint, { PrintContextConsumer } from 'react-to-print';
 
- import React, { Component } from "react";
 
- import { getAutoSave, inputAutoSave } from "@/actions/autosave";
 
- export class Ringkasan extends Component {
 
- 	constructor(props) {
 
- 		super(props);
 
- 		this.state = {
 
- 		};
 
- 	}
 
- 	// function Ringkasan({ dataLaporan, dataPelanggaran, dataUpload }) {
 
- 	// 	return (
 
- 	componentDidMount = async () => {
 
- 		const { query, token } = this.props;
 
- 		const { id } = query;
 
- 		const getDataSave = await getAutoSave({ token, id, laporan: true });
 
- 		const saveData = getDataSave.data?.penetapanSanksi;
 
- 		this.setState(saveData)
 
- 	}
 
- 	handleOpenAlert = () => {
 
- 		Swal.fire({
 
- 			icon: 'error',
 
- 			title: 'Oops...',
 
- 			html: 'Maaf anda tidak memiliki akses untuk menyelesaikan<p> proses ini.</p>',
 
- 			confirmButtonColor: "#3e3a8e",
 
- 			confirmButtonText: 'Oke'
 
- 		})
 
- 	};
 
- 	render() {
 
- 		const { dataLaporan, dataPelanggaran, dataUpload } = this.props
 
- 		return (
 
- 			<>
 
- 				<Row>
 
- 					<Col>
 
- 						<p className="lead bb">Detail Laporan</p>
 
- 						<form className="form-horizontal">
 
- 							<FormGroup row>
 
- 								<Col md="4">Nomor Laporan:</Col>
 
- 								<Col md="8">
 
- 									<strong>{dataLaporan.no_laporan}</strong>
 
- 								</Col>
 
- 							</FormGroup>
 
- 							<FormGroup row>
 
- 								<Col md="4">Nama Perguruan Tinggi:</Col>
 
- 								<Col md="8">
 
- 									<strong>{dataLaporan.pt.nama}</strong>
 
- 								</Col>
 
- 							</FormGroup>
 
- 							<FormGroup row>
 
- 								<Col md="4">Jenis Pelanggaran:</Col>
 
- 								<Col md="8">
 
- 									<Scrollable height="125px" className="list-group">
 
- 										<ul>
 
- 											{dataLaporan.pelanggaran.map((e) => (
 
- 												<li>{e.pelanggaran}</li>
 
- 											))}
 
- 										</ul>
 
- 									</Scrollable>
 
- 								</Col>
 
- 							</FormGroup>
 
- 							<FormGroup row>
 
- 								<Col md="4">Keterangan Laporan:</Col>
 
- 								<Col md="8">
 
- 									<Scrollable height="100px" className="list-group">
 
- 										<p>{dataLaporan.keterangan}</p>
 
- 									</Scrollable>
 
- 								</Col>
 
- 							</FormGroup>
 
- 							<FormGroup row>
 
- 								<Col md="4">Tanggal Dibuat Laporan:</Col>
 
- 								<Col md="8">
 
- 									<strong>{moment(dataLaporan.createdAt).format("D MMMM YYYY")}</strong>
 
- 								</Col>
 
- 							</FormGroup>
 
- 						</form>
 
- 					</Col>
 
- 				</Row>
 
- 				<Row>
 
- 					<Col>
 
- 						<p className="lead bb">Penetapan Sanksi</p>
 
- 						<Card className="card-default">
 
- 							<Table bordered hover responsive>
 
- 								<thead>
 
- 									<tr>
 
- 										<th>No</th>
 
- 										<th>Jenis Pelanggaran</th>
 
- 										<th>Sanksi</th>
 
- 									</tr>
 
- 								</thead>
 
- 								<tbody>
 
- 									{dataPelanggaran
 
- 										? dataPelanggaran.map((e, i) => (
 
- 											<tr key={e._id}>
 
- 												<td>{++i}</td>
 
- 												<td>
 
- 													<div className="media align-items-center">
 
- 														<div className="media-body d-flex">
 
- 															<div>
 
- 																<p>{e.pelanggaran}</p>
 
- 																<p>TMT : {e.tmt_bulan} Bulan</p>
 
- 																<p>Level Pelanggaran : {e.label_sanksi}</p>
 
- 															</div>
 
- 														</div>
 
- 													</div>
 
- 												</td>
 
- 												<td>
 
- 													<div className="media align-items-center">
 
- 														<div className="media-body d-flex">
 
- 															<div>
 
- 																<p>{e.sanksi}</p>
 
- 																<p>Keterangan : {e.keterangan_sanksi}</p>
 
- 															</div>
 
- 														</div>
 
- 													</div>
 
- 												</td>
 
- 											</tr>
 
- 										))
 
- 										: ""}
 
- 								</tbody>
 
- 							</Table>
 
- 						</Card>
 
- 					</Col>
 
- 				</Row>
 
- 				<Row>
 
- 					<Col>
 
- 						<p className="lead bb">Nomor Surat Keputusan Sanksi</p>
 
- 						<form className="form-horizontal">
 
- 							<FormGroup row>
 
- 								<Col md="4">Nomor Surat:</Col>
 
- 								<Col md="8">
 
- 									{dataUpload?.nomorSanksi ? (<strong>{dataUpload.nomorSanksi}</strong>) : (<span className="text-danger text-bold">Belum diisi</span>)}
 
- 								</Col>
 
- 							</FormGroup>
 
- 							<FormGroup row>
 
- 								<Col md="4">Keterangan:</Col>
 
- 								<Col md="8">
 
- 									{dataUpload?.keterangan ? (<strong>{dataUpload.keterangan}</strong>) : (<span className="text-danger text-bold">Belum diisi</span>)}
 
- 								</Col>
 
- 							</FormGroup>
 
- 							{dataUpload && !dataUpload.tidakPerluTMTCheck ? (
 
- 								<FormGroup row>
 
- 									<Col md="4">TMT Berlaku:</Col>
 
- 									<Col md="8">
 
- 										<strong>
 
- 											{dataUpload && dataUpload.akhirTMT ? (
 
- 												<p>
 
- 													{moment(dataUpload.awalTMT).locale("id").format("DD MMMM YYYY")} - {moment(dataUpload.akhirTMT).locale("id").format("DD MMMM YYYY")}
 
- 												</p>
 
- 											) : (
 
- 												(<span className="text-danger text-bold">Belum diisi</span>)
 
- 											)}
 
- 										</strong>
 
- 									</Col>
 
- 								</FormGroup>
 
- 							) : (
 
- 								""
 
- 							)}
 
- 							{/* <FormGroup row>
 
- 								<Col md="4">Tanggal Penetapan Sanksi:</Col>
 
- 								<Col md="8">
 
- 									<strong>
 
- 										{dataUpload && dataUpload.awalTMT ? (
 
- 											<p>
 
- 												{moment(dataUpload.awalTMT).locale("id").format("DD MMMM YYYY")} ////////tidak digunakan
 
- 											</p>
 
- 										) : (
 
- 											""
 
- 										)}
 
- 									</strong>
 
- 								</Col>
 
- 							</FormGroup> */}
 
- 							{dataUpload && !dataUpload.tidakPerluTMTCheck ? (
 
- 								<FormGroup row>
 
- 									<Col md="4">TMT :</Col>
 
- 									<Col md="8">
 
- 										<strong>
 
- 											{dataUpload && dataUpload.akhirTMT ? (
 
- 												<p>
 
- 													{moment(dataUpload.akhirTMT).diff(dataUpload.awalTMT, 'month')} bulan
 
- 												</p>
 
- 											) : (
 
- 												(<span className="text-danger text-bold">Belum diisi</span>)
 
- 											)}
 
- 										</strong>
 
- 									</Col>
 
- 								</FormGroup>
 
- 							) : ("")}
 
- 							<FormGroup row>
 
- 								<Col md="4">Sanksi:</Col>
 
- 								<Col md="8">
 
- 									<strong>{dataUpload?.listSanksi?.length ? (dataUpload.listSanksi.map((e, index) => <p>{index + 1 + " " + e.value}</p>)) : (<span className="text-danger text-bold">Belum diisi</span>)}		</strong>
 
- 								</Col>
 
- 							</FormGroup>
 
- 							<FormGroup row>
 
- 								<Col md="4">Surat Sanksi:</Col>
 
- 								<Col md="8">
 
- 									<Scrollable height="120px" className="list-group">
 
- 										<table className="table table-bordered bg-transparent">
 
- 											<tbody>
 
- 												{dataUpload?.files?.length ?
 
- 													(dataUpload.files.map((e) => (
 
- 														<tr>
 
- 															<td style={{ width: "30px" }}>
 
- 																<em className="fa-lg far fa-file-code"></em>
 
- 															</td>
 
- 															<td>
 
- 																<a className="text-muted" href={e.preview} download={e.name}>
 
- 																	{e.path}
 
- 																</a>
 
- 															</td>
 
- 														</tr>
 
- 													)))
 
- 													: (<span className="text-danger text-bold">Belum diisi</span>)}
 
- 											</tbody>
 
- 										</table>
 
- 									</Scrollable>
 
- 								</Col>
 
- 							</FormGroup>
 
- 							{/* <FormGroup row>
 
- 								<Col md="4">Surat Berita Acara:</Col>
 
- 								<Col md="8">
 
- 						
 
- 									<ReactToPrint
 
- 										trigger={() => {
 
- 											return <span>
 
- 												<Button color className="btn-labeled-4 mt-0">
 
- 													<h5 className="p-0 mt-2"><em className="fas fa-download mr-2" />Print dan Download</h5>
 
- 												</Button>
 
- 											</span>
 
- 										}}
 
- 										content={() => this.componentRef}
 
- 									/>
 
- 									<div style={{ display: "none" }}>
 
- 										<ComponentToPrint ref={el => (this.componentRef = el)} query={this.props.query} dataPelanggaran={this.props.dataPelanggaran} dataSuratBA={this.props.dataSuratBA} />
 
- 									</div>
 
- 								</Col>
 
- 							</FormGroup> */}
 
- 								{dataUpload && !dataUpload.tidakPerluTMTCheck && (
 
- 							<FormGroup row>
 
- 								<Col md="4">Tanggal Terima Surat Sanksi :</Col>
 
- 								<Col md="8">
 
- 									<strong>
 
- 										{dataUpload && dataUpload?.terimaSuratSanksi ? (
 
- 											(<p>
 
- 												{moment(dataUpload.terimaSuratSanksi).locale("id").format("DD MMMM YYYY")}
 
- 											</p>)
 
- 										) : (
 
- 											(<span className="text-danger text-bold">Belum diisi</span>)
 
- 										)}
 
- 									</strong>
 
- 								</Col>
 
- 							</FormGroup>)}
 
- 							<FormGroup row>
 
- 								<Col md="4">Dokumen Tanda Terima Surat Sanksi:</Col>
 
- 								<Col md="8">
 
- 									<Scrollable height="120px" className="list-group">
 
- 										<table className="table table-bordered bg-transparent">
 
- 											<tbody>
 
- 												{dataUpload?.filesTandaTerimaSS?.length
 
- 													?( dataUpload.filesTandaTerimaSS.map((e) => (
 
- 														<tr>
 
- 															<td style={{ width: "30px" }}>
 
- 																<em className="fa-lg far fa-file-code"></em>
 
- 															</td>
 
- 															<td>
 
- 																<a className="text-muted" href={e.preview} download={e.name}>
 
- 																	{e.path}
 
- 																</a>
 
- 															</td>
 
- 														</tr>
 
- 													)))
 
- 													: 
 
- 													(<span className="text-danger text-bold">Belum diisi</span>)}
 
- 											</tbody>
 
- 										</table>
 
- 									</Scrollable>
 
- 								</Col>
 
- 							</FormGroup>
 
- 							{dataUpload && !dataUpload.tidakPerluTMTCheck && (
 
- 								<FormGroup row>
 
- 									<Col md="4">Tanggal Akhir Pengajuan Keberatan :</Col>
 
- 									<Col md="8">
 
- 										<strong>
 
- 											{dataUpload && dataUpload.tglAkhirKeberatan ? (
 
- 												(<p>
 
- 													{moment(dataUpload.tglAkhirKeberatan).locale("id").format("DD MMMM YYYY")}
 
- 												</p>)
 
- 											) : (
 
- 												(<span className="text-danger text-bold">Belum diisi</span>)
 
- 											)}
 
- 										</strong>
 
- 									</Col>
 
- 								</FormGroup>
 
- 							)
 
- 							}
 
- 						</form>
 
- 					</Col>
 
- 				</Row>
 
- 			</>
 
- 		)
 
- 	}
 
- }
 
- // 	);
 
- // }
 
- export default Ringkasan;
 
 
  |