import React, { useRef, Component } from 'react'; import { useReactToPrint } from "react-to-print"; import { Row, Col, Button, Popover, PopoverHeader, PopoverBody, } from "reactstrap"; import Head from 'next/head' import SignatureCanvas from 'react-signature-canvas' import ComponentToPrint from "./SuratBA"; import ReactToPrint, { PrintContextConsumer } from 'react-to-print'; import { getOneLaporan, updateLaporan } from "@/actions/pelaporan"; import DatePicker from "react-datepicker"; import "react-datepicker/dist/react-datepicker.css"; import id from 'date-fns/locale/id'; import CopyToClipboard from "react-copy-to-clipboard"; import { getAutoSave } from "@/actions/autosave"; class BeritaAcara extends Component { constructor(props) { super(props); this.state = { isEditTempat: false, tempat: "[Mohon Diisi]", isEditTanggal: false, tanggal: "", setTanggal: false, namaPeserta: [], isEditNamaPeserta: false, simpulan: "", rekomendasi: "", isEditTemuanLain: false, temuanLain: [], memberatkan: [], isEditKeberatan: false, isEditMeringankan: false, meringankan: [], sanksi: "[Mohon Diisi]", isEditSanksi: false, copied: false, setTemuanLain: true, }; } static getInitialProps = async ({ query }) => { return { query }; }; componentDidMount = async () => { const { query, token } = this.props; const { id } = query; const getDataSave = await getAutoSave({ id, laporan: true }); const autoSaveDataSuratBA = getDataSave.data?.PenetapanSanksi?.dataSuratBA; const autoSaveDataPelanggaran = getDataSave.data?.PenetapanSanksi?.dataPelanggaran?.data; this.setState({ autoSaveDataPelanggaran, autoSaveDataSuratBA }); }; setDataSuratBA = () => { this.props.setDataSuratBA(this.state); } handleAutoSave = () => { this.props.handleAutoSave() } isEditTempat = () => { this.setState({ isEditTempat: !this.state.isEditTempat, }, this.setDataSuratBA, this.handleAutoSave()) } isEditTanggal = () => { this.setState({ isEditTanggal: !this.state.isEditTanggal, }, this.setDataSuratBA, this.handleAutoSave()) } isEditNamaPeserta = () => { this.setState({ isEditNamaPeserta: !this.state.isEditNamaPeserta, }, this.setDataSuratBA, this.handleAutoSave()) } isEditTemuanLain = () => { this.setState({ isEditTemuanLain: !this.state.isEditTemuanLain, }, this.setDataSuratBA, this.handleAutoSave()) } isEditKeberatan = () => { this.setState({ isEditKeberatan: !this.state.isEditKeberatan, }, this.setDataSuratBA, this.handleAutoSave()) } isEditMeringankan = () => { this.setState({ isEditMeringankan: !this.state.isEditMeringankan, }, this.setDataSuratBA, this.handleAutoSave()) } isEditSanksi = () => { this.setState({ isEditSanksi: !this.state.isEditSanksi, }, this.setDataSuratBA, this.handleAutoSave()) } updateValueTemuanLain = () => { const addTemuanLain = this.refs.inputTemuan.value this.setState({ temuanLain: [...this.state.temuanLain, addTemuanLain] }, this.setDataSuratBA, this.handleAutoSave()) } updateValueMemringankan = () => { const addMeringankan = this.refs.inputMeringankan.value this.setState({ meringankan: [...this.state.meringankan, addMeringankan] }, this.setDataSuratBA, this.handleAutoSave()) } updateValueMemberatkan = () => { const addKeberatan = this.refs.inputMemberatkan.value this.setState({ memberatkan: [...this.state.memberatkan, addKeberatan] }, this.setDataSuratBA, this.handleAutoSave()) } updateValueSanksi = () => { this.setState({ isEditSanksi: false, sanksi: this.refs.inputSanksi.value }, this.setDataSuratBA, this.handleAutoSave()) } Copied = () => this.setState({ copied: !this.state.copied }) CloseCopied = () => { setTimeout(() => { this.setState({ copied: !this.state.copied }); }, 3000); } render() { const { dataPelanggaran, dataLaporan, dataSuratBA } = this.props const { isEditTempat, tempat, isEditTanggal, tanggal, setTanggal, namaPeserta, isEditNamaPeserta, simpulan, isEditTemuanLain, temuanLain, memberatkan, isEditKeberatan, isEditMeringankan, meringankan, sanksi, isEditSanksi, autoSaveDataSuratBA } = this.state return (
 
                        
                                Pada hari ini
                                {isEditTanggal &&
                                    
                                        
Berdasarkan rapat evaluasi dan pembahasan dugaan pelanggaran penyelenggaraan oleh perguruan tinggi dan/atau badan penyelenggara {dataLaporan.data && ({dataLaporan.data.pt.nama})}, disampaikan sebagai berikut:
| NO | NAMA DAN IZIN PRODI | PELANGGARAN TERHADAP PERMENDIKBUD NO.7 TAHUN 2020 | SIMPULAN | REKOMENDASI | ||
|---|---|---|---|---|---|---|
| PASAL | BUTIR PELANGGARAN | DESKRIPSI PELANGGARAN | ||||
| {++i}{dataLaporan.data && ( | {dataLaporan.data.pt.nama})} | {e.pasal} | {e.butir_pelanggaran} | {e.pelanggaran} | [Mohon Diisi] | [Mohon Diisi] | 
Demikian Laporan Evaluasi dan Pembahasan ini dibuat dengan sesungguhnya dan telah dibaca dan dicermati oleh peserta rapat yang hadir.
                            Copy Link Add Peserta
                                    
| PESERTA RAPAT PENYUSUNAN REKOMENDASI | |||
|---|---|---|---|
| {value.nama} |  | ||