import React, { Component } from "react"; import { Card, Table } from "reactstrap"; import { getPelanggaran } from "@/actions/pelanggaran"; import { connect } from "react-redux"; import Button from "reactstrap/lib/Button"; import { getOneLaporan, updateLaporan } from "@/actions/pelaporan"; import Router from "next/router"; import { ToastContainer, toast } from "react-toastify"; import { getAutoSave } from "@/actions/autosave"; import Datatable from "@/components/Tables/Datatable"; export class TablePenetapanSanksi extends Component { checkedData = []; constructor(props) { super(props); this.state = { // pelanggaran: null, checkedData: [], labelSanksi: [], btnDelegasi: false, }; this.onHandleChange = this.onHandleChange.bind(this) } componentDidMount = async () => { const { token, query } = this.props; const { id } = query; const pelanggaran = await getPelanggaran(token); const getDataSave = await getAutoSave({ id, laporan: true }); const autoSaveDataPelanggaran = getDataSave.data?.PenetapanSanksi?.dataPelanggaran; this.setState({ pelanggaran, checkedData: autoSaveDataPelanggaran ? autoSaveDataPelanggaran.data.map(e => e._id) : [] }); this.checkedData = this.state.checkedData this.setState({ labelSanksi: autoSaveDataPelanggaran ? autoSaveDataPelanggaran?.data?.map(e => ({ value: e._id, labelSanksi: e.label_sanksi })) : [] }) }; onHandleChange = (evt) => { const checked = evt.target.checked; const item = evt.target.value; if (checked) this.state.checkedData.push(evt.target.value); // else this.setState((prevState) => ({ ...prevState, checkedData: prevState.checkedData.filter((e) => e != item) })); // else this.setState({ checkedData: this.state.checkedData.filter((e) => e != item) }); else this.state.checkedData = this.state.checkedData.filter((e) => e != item) this.props.setCheckedData(this.state.checkedData); }; setLabelSanksi = (evt, label_sanksi) => { const checked = evt.target.checked; const item = evt.target.value; if (checked) this.state.labelSanksi.push({ value: item, labelSanksi: label_sanksi }); else this.state.labelSanksi = this.state.labelSanksi.filter((e) => e.value != item); } ondelegasi = () => { this.props.handleDelegasi(this.state) } render() { const { pelanggaran, labelSanksi, checkedData } = this.state; return (
| No | Jenis Pelanggaran | Sanksi | |
|---|---|---|---|
|
{jp.pelanggaran} {/*TMT : {jp.tmt_bulan} Bulan */}Jenis Sanksi Administratif : {jp.label_sanksi} |
{jp.sanksi} Keterangan : {jp.keterangan_sanksi} |
|