| 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;
 |