|  | @@ -2,6 +2,12 @@ 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";
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  export class TablePenetapanSanksi extends Component {
 | 
	
		
			
				|  |  |  	checkedData = [];
 | 
	
	
		
			
				|  | @@ -11,6 +17,9 @@ export class TablePenetapanSanksi extends Component {
 | 
	
		
			
				|  |  |  		this.state = {
 | 
	
		
			
				|  |  |  			pelanggaran: null,
 | 
	
		
			
				|  |  |  			checkedData: [],
 | 
	
		
			
				|  |  | +			labelSanksi: [],
 | 
	
		
			
				|  |  | +			btnDelegasi: false,
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |  		};
 | 
	
		
			
				|  |  |  	}
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -28,8 +37,46 @@ export class TablePenetapanSanksi extends Component {
 | 
	
		
			
				|  |  |  		this.props.setCheckedData(this.checkedData);
 | 
	
		
			
				|  |  |  	};
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +	setLabelSanksi = (evt, label_sanksi) => {
 | 
	
		
			
				|  |  | +		const checked = evt.target.checked;
 | 
	
		
			
				|  |  | +		const item = evt.target.value;
 | 
	
		
			
				|  |  | +		if (checked && label_sanksi === "Ringan") this.state.labelSanksi.push({ value: item, labelSanksi: label_sanksi });
 | 
	
		
			
				|  |  | +		else if (label_sanksi === "Ringan") this.state.labelSanksi = this.state.labelSanksi.filter((e) => e.value != item);
 | 
	
		
			
				|  |  | +		console.log(this.state.labelSanksi)
 | 
	
		
			
				|  |  | +	}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +	// handleDelegasi = async (value) => {
 | 
	
		
			
				|  |  | +	// 	const { token, query, data } = this.props;
 | 
	
		
			
				|  |  | +	// 	let update = null;
 | 
	
		
			
				|  |  | +	// 	if (this.state.labelSanksi.length > 0) {
 | 
	
		
			
				|  |  | +	// 		data.change_role = "true";
 | 
	
		
			
				|  |  | +	// 		data.keterangan = "delegasi ke LLDIKTI"
 | 
	
		
			
				|  |  | +	// 		update = await updateLaporan(token, query, data);
 | 
	
		
			
				|  |  | +	// 		Router.push("/app/sanksi");
 | 
	
		
			
				|  |  | +	// 	}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +	// }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +	handleDelegasi = async (e) => {
 | 
	
		
			
				|  |  | +		const toastid = toast.loading("Please wait...");
 | 
	
		
			
				|  |  | +		const { query, token, data } = this.props;
 | 
	
		
			
				|  |  | +		data.change_role = "true";
 | 
	
		
			
				|  |  | +		data.keterangan = "delegasi ke LLDIKTI"
 | 
	
		
			
				|  |  | +		await updateLaporan(token, query, data);
 | 
	
		
			
				|  |  | +		toast.update(toastid, { render: "All is good", type: "success", isLoading: false, autoClose: true, closeButton: true });
 | 
	
		
			
				|  |  | +		Router.push({
 | 
	
		
			
				|  |  | +			pathname: "/app/sanksi",
 | 
	
		
			
				|  |  | +		});
 | 
	
		
			
				|  |  | +	};
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |  	render() {
 | 
	
		
			
				|  |  | -		const { pelanggaran } = this.state;
 | 
	
		
			
				|  |  | +		const { pelanggaran, labelSanksi } = this.state;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |  		return (
 | 
	
		
			
				|  |  |  			<Card className="card-default">
 | 
	
		
			
				|  |  |  				<Table bordered hover responsive>
 | 
	
	
		
			
				|  | @@ -72,7 +119,10 @@ export class TablePenetapanSanksi extends Component {
 | 
	
		
			
				|  |  |  									<td>
 | 
	
		
			
				|  |  |  										<div className="checkbox c-checkbox">
 | 
	
		
			
				|  |  |  											<label>
 | 
	
		
			
				|  |  | -												<input type="checkbox" value={jp._id} onChange={this.onHandleChange} />
 | 
	
		
			
				|  |  | +												<input type="checkbox" value={jp._id} onChange={(evt) => {
 | 
	
		
			
				|  |  | +													this.onHandleChange(evt)
 | 
	
		
			
				|  |  | +													this.setLabelSanksi(evt, jp.label_sanksi)
 | 
	
		
			
				|  |  | +												}} />
 | 
	
		
			
				|  |  |  												<span className="fa fa-check"></span>
 | 
	
		
			
				|  |  |  											</label>
 | 
	
		
			
				|  |  |  										</div>
 | 
	
	
		
			
				|  | @@ -82,6 +132,15 @@ export class TablePenetapanSanksi extends Component {
 | 
	
		
			
				|  |  |  							: ""}
 | 
	
		
			
				|  |  |  					</tbody>
 | 
	
		
			
				|  |  |  				</Table>
 | 
	
		
			
				|  |  | +				{
 | 
	
		
			
				|  |  | +					labelSanksi.length &&
 | 
	
		
			
				|  |  | +					<Button className="btn-login" color onClick={this.handleDelegasi} >
 | 
	
		
			
				|  |  | +						<span className="font-color-white">
 | 
	
		
			
				|  |  | +							Delegasi ke LLDIKTI
 | 
	
		
			
				|  |  | +						</span>
 | 
	
		
			
				|  |  | +					</Button>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +				}
 | 
	
		
			
				|  |  |  			</Card>
 | 
	
		
			
				|  |  |  		);
 | 
	
		
			
				|  |  |  	}
 |