andi 2 yıl önce
ebeveyn
işleme
c2c1966274

+ 2 - 2
actions/cabutSanksi.js

@@ -63,10 +63,10 @@ export const bypassCabutSanksi = async (token, id, _csrf) => {
 const logSuccessBypassCabutSanksi = async (token, id) => {
 	const getToken = await getCsrf();
 	const _csrf = getToken.token;
-	await createLog(token, { aktivitas: `Berhasil melakukan bypass ke pencabutan sanksi, id: ${id}`, _csrf: _csrf });
+	await createLog(token, { aktivitas: `Berhasil melakukan bypass ke pencabutan sanksi, id: ${id}`,menu:"Bypass Pencabutan Sanksi", _csrf: _csrf });
 }
 const logErrorBypassCabutSanksi = async (token, id) => {
 	const getToken = await getCsrf();
 	const _csrf = getToken.token;
-	await createLog(token, { aktivitas: `Gagal melakukan bypass ke pencabutan sanksi, id: ${id}`, _csrf: _csrf });
+	await createLog(token, { aktivitas: `Gagal melakukan bypass ke pencabutan sanksi, id: ${id}`, menu:"Bypass Pencabutan Sanksi",_csrf: _csrf });
 }

+ 15 - 3
actions/pelaporan.js

@@ -7,7 +7,7 @@ export const getPelaporan = async (token, query = {}) => {
 	try {
 		let url = "/laporan";
 		if (query != null) {
-			const { jadwal, evaluasi, pt_id, delegasi, aktif, sanksi, all } = query;
+			const { jadwal, evaluasi, pt_id, delegasi, aktif, sanksi, all, tuntas } = query;
 			url += "?";
 			const parseURL = [];
 			if (jadwal) {
@@ -23,6 +23,9 @@ export const getPelaporan = async (token, query = {}) => {
 			if (delegasi) {
 				parseURL.push(`delegasi=true`);
 			}
+			if (tuntas) {
+				parseURL.push(`tuntas=true`);
+			}
 
 			if (pt_id) {
 				parseURL.push(`pt_id=${pt_id}`);
@@ -77,7 +80,7 @@ export const getPelaporanPublic = async ({ number, noHp }) => {
 const logCreatePelaporan = async (token, id) => {
 	const getToken = await getCsrf();
 	const _csrf = getToken.token;
-	await createLog(token, { aktivitas: `Berhasil Membuat pelaporan`, _csrf: _csrf });
+	await createLog(token, { aktivitas: `Berhasil Membuat pelaporan`, menu: "Pelaporan", _csrf: _csrf });
 }
 export const createPelaporan = async (token, data, _csrf) => {
 	const res = await axiosAPI.post(`/laporan/create?_csrf=${_csrf}`, data, { headers: { Authorization: token } });
@@ -140,7 +143,7 @@ export const getlaporanByPembina = async (token, idPembina, query = {}) => {
 	try {
 		let url = `/laporan/byPembina/${idPembina}`;
 		if (query != null) {
-			const { idPembina, penjadwalan, pemeriksaan, sanksi, keberatan, banding, perbaikan, cabutSanksi, aktif } = query;
+			const { idPembina, penjadwalan, pemeriksaan, sanksi, keberatan, banding, perbaikan, cabutSanksi, aktif, ditutup, delegasi, diterima } = query;
 			url += "?";
 			const parseURL = [];
 			if (idPembina) {
@@ -167,6 +170,15 @@ export const getlaporanByPembina = async (token, idPembina, query = {}) => {
 			if (cabutSanksi) {
 				parseURL.push(`cabutSanksi=true`);
 			};
+			if (ditutup) {
+				parseURL.push(`ditutup=true`);
+			};
+			if (diterima) {
+				parseURL.push(`diterima=true`);
+			};
+			if (delegasi) {
+				parseURL.push(`delegasi=true`);
+			};
 			if (aktif === false) {
 				parseURL.push(`aktif=false`);
 			}

+ 1 - 1
actions/pemeriksaan.js

@@ -12,6 +12,6 @@ export const insertPemeriksaan = async (token, id, data, _csrf) => {
 const log = async (token, id) => {
 	const getToken = await getCsrf();
 	const _csrf = getToken.token;
-	await createLog(token, { aktivitas: `Berhasil menambah evaluasi, id: ${id}`, _csrf: _csrf });
+	await createLog(token, { aktivitas: `Berhasil menambah evaluasi, id: ${id}`, menu: "Pemeriksaan", _csrf: _csrf });
 
 }

+ 4 - 4
actions/sanksi.js

@@ -17,7 +17,7 @@ export const updatePddikti = async (token, id, _csrf) => {
 const logCreateSanksi = async (token, id) => {
 	const getToken = await getCsrf();
 	const _csrf = getToken.token;
-	await createLog(token, { aktivitas: `Berhasil melakukan penetapan sanksi, id: ${id}`, _csrf: _csrf });
+	await createLog(token, { aktivitas: `Berhasil melakukan penetapan sanksi, id: ${id}`, menu: "Sanksi", _csrf: _csrf });
 
 }
 
@@ -35,7 +35,7 @@ export const getSanksi = async (token, query = {}) => {
 
 			if (jawaban) parseURL.push(`jawaban=true`);
 			else if (jawaban === false) parseURL.push(`jawaban=false`);
-			
+
 			if (delegasi) parseURL.push(`delegasi=true`);
 			if (turunSanksi) parseURL.push(`turunSanksi=true`);
 			if (naikSanksi) parseURL.push(`naikSanksi=true`);
@@ -87,7 +87,7 @@ export const addRekomendasiDelegasi = async (token, id, data, _csrf) => {
 const logSuccessAddRekomendasiDelegasi = async (token, id) => {
 	const getToken = await getCsrf();
 	const _csrf = getToken.token;
-	await createLog(token, { aktivitas: `Berhasil melakukan Rekomendasi Delegasi, id: ${id}`, _csrf: _csrf });
+	await createLog(token, { aktivitas: `Berhasil melakukan Rekomendasi Delegasi, id: ${id}`, menu: "Sanksi", _csrf: _csrf });
 
 }
 const logErrorAddRekomendasiDelegasi = async (token, id) => {
@@ -141,6 +141,6 @@ export const removePesertaPleno = async (token, data, _csrf) => {
 const logRemovePesertaPleno = async (token) => {
 	const getToken = await getCsrf();
 	const _csrf = getToken.token;
-	await createLog(token, { aktivitas: `Berhasil hapus peserta pleno`, _csrf: _csrf });
+	await createLog(token, { aktivitas: `Berhasil hapus peserta pleno`, menu: "Sanksi - Berita Acara", _csrf: _csrf });
 
 }

+ 1 - 1
components/Extras/calendar.view.js

@@ -196,7 +196,7 @@ class Calendar extends Component {
 		const { id } = query;
 		const getToken = await getCsrf();
 		const _csrf = getToken.token;
-		await createLog(token, { aktivitas: `Berhasil menetapkan jadwal, id: ${id}`, _csrf: _csrf });
+		await createLog(token, { aktivitas: `Berhasil menetapkan jadwal, id: ${id}`,menu: "Penjadwalan", _csrf: _csrf });
 
 	}
 

+ 1 - 1
components/Maps/jquery-jvectormap.id.js

@@ -1,6 +1,6 @@
 /**
  * Indonesia Map for jVectorMap
- *
+ *https://github.com/davchezt/indonesia-map-for-jvectormap
  * Copyright 2017, Leonardo DaVchezt
  * Licensed under the MIT license.
  *

+ 1 - 1
components/PelaporanTuntas/CaseProgress.js

@@ -112,7 +112,7 @@ function CaseProgress({ data, nextButton, prevButton, tahun, excelSemua, excelMe
 							Unduh
 						</Dropdown.Toggle>
 						<Dropdown.Menu>
-							<Dropdown.Item onClick={excelMenu}>Unduh dokumen sanksi</Dropdown.Item>
+							<Dropdown.Item onClick={excelMenu}>Unduh dokumen pelaporan tuntas</Dropdown.Item>
 							<Dropdown.Item onClick={excelSemua}>Unduh dokumen semua menu</Dropdown.Item>
 						</Dropdown.Menu>
 					</Dropdown>

+ 2 - 2
components/PelaporanTuntas/DetailLaporan.js

@@ -168,7 +168,7 @@ function DetailLaporan({ data, noTitle = false, noStatus = false, role }) {
 				</FormGroup>
 
 			</form>
-			<form className="form-horizontal">
+			{data.tuntas.keterangan && (<form className="form-horizontal">
 				{noTitle ? (
 					""
 				) : (
@@ -220,7 +220,7 @@ function DetailLaporan({ data, noTitle = false, noStatus = false, role }) {
 							</Scrollable>
 						</Col>
 					</FormGroup>) : ""}
-			</form>
+			</form>)}
 		</>
 	);
 }

+ 2 - 3
components/PelaporanTuntas/TableLaporan.js

@@ -4,7 +4,6 @@ import Link from "next/link";
 import moment from "moment";
 
 function TableLaporan({ listData, to, linkName }) {
-	console.log(listData)
 	return (
 		<div className="card b">
 			<div className="card-body card-over">
@@ -47,14 +46,14 @@ function TableLaporan({ listData, to, linkName }) {
 												</div>
 											</td>
 											<td>
-												{data.aktif === false ? <div className="badge badge-green">Selesai</div> : <div className="badge badge-red">Ditutup</div>}
+												{data.flag === "diterima" ? <div className="badge badge-success">Selesai - Diterima</div> :data.status === "Diterima" ? <div className="badge badge-success">Selesai - Diterima</div> : data.status === "Ditutup" ? <div className="badge badge-danger">Ditutup</div> : data.status === "Selesai" ? <div className="badge badge-success">Selesai</div> : ""}
 											</td>
 											<td>
 												<div className="ml-auto">
 													<Link
 														href={{
 															pathname: to,
-															query: { id: data._id, data: data.no_sanksi ? "sanksi" : "laporan" },
+															query: { id: data._id },
 														}}
 													>
 														<Button className="btn-login loader" color>

+ 127 - 16
components/Riwayat/Maps.js

@@ -10,6 +10,43 @@ const defaultColors = {
     scaleColors: ["#146804", "#ff0000"],
     regionFill: '#bbbec6'
 };
+
+const init = {
+    'LLDIKTI I': 'ID_su',
+    'LLDIKTI II': 'ID_ss',
+    'LLDIKTI II': 'ID_la',
+    'LLDIKTI II': 'ID_be',
+    'LLDIKTI II': 'ID_bb',
+    'LLDIKTI III': 'ID_jk',
+    'LLDIKTI IV': 'ID_jb',
+    'LLDIKTI IV': 'ID_bt',
+    'LLDIKTI V': 'ID_yo',
+    'LLDIKTI VI': 'ID_jt',
+    'LLDIKTI VII': 'ID_jl',
+    'LLDIKTI VIII': 'ID_ba',
+    'LLDIKTI VIII': 'ID_nb',
+    'LLDIKTI IX': 'ID_sg',
+    'LLDIKTI IX': 'ID_sn',
+    'LLDIKTI IX': 'ID_sr',
+    'LLDIKTI X': 'ID_sb',
+    'LLDIKTI X': 'ID_ri',
+    'LLDIKTI X': 'ID_kr',
+    'LLDIKTI X': 'ID_ja',
+    'LLDIKTI XI': 'ID_ks',
+    'LLDIKTI XI': 'ID_kb',
+    'LLDIKTI XI': 'ID_ki',
+    'LLDIKTI XI': 'ID_kt',
+    'LLDIKTI XI': 'ID_ku',
+    'LLDIKTI XII': 'ID_ma',
+    'LLDIKTI XII': 'ID_mu',
+    'LLDIKTI XIII': 'ID_ac',
+    'LLDIKTI XIV': 'ID_pa',
+    'LLDIKTI XIV': 'ID_pb',
+    'LLDIKTI XV': 'ID_nt',
+    'LLDIKTI XVI': 'ID_go',
+    'LLDIKTI XVI': 'ID_st',
+    'LLDIKTI XVI': 'ID_sa',
+}
 const RegionValues = {
     'ID_su': 0,
     'ID_su': 0,
@@ -124,6 +161,42 @@ const LLDIKTI = {
 class Maps extends Component {
 
     state = {
+        LLDIKTI: {
+            'ID_su': '<h5>LLDIKTI Wilayah I</h5>',
+            'ID_ss': '<h5>LLDIKTI Wilayah II</h5>',
+            'ID_la': '<h5>LLDIKTI Wilayah II</h5>',
+            'ID_be': '<h5>LLDIKTI Wilayah II</h5>',
+            'ID_bb': '<h5>LLDIKTI Wilayah II</h5>',
+            'ID_jk': '<h5>LLDIKTI Wilayah III</h5>',
+            'ID_jb': '<h5>LLDIKTI Wilayah IV</h5>',
+            'ID_bt': '<h5>LLDIKTI Wilayah IV</h5>',
+            'ID_yo': '<h5>LLDIKTI Wilayah V</h5>',
+            'ID_jt': '<h5>LLDIKTI Wilayah VI</h5>',
+            'ID_jl': '<h5>LLDIKTI Wilayah VII</h5>',
+            'ID_ba': '<h5>LLDIKTI Wilayah VIII</h5>',
+            'ID_nb': '<h5>LLDIKTI Wilayah VIII</h5>',
+            'ID_sg': '<h5>LLDIKTI Wilayah IX</h5>',
+            'ID_sn': '<h5>LLDIKTI Wilayah IX</h5>',
+            'ID_sr': '<h5>LLDIKTI Wilayah IX</h5>',
+            'ID_sb': '<h5>LLDIKTI Wilayah X</h5>',
+            'ID_ri': '<h5>LLDIKTI Wilayah X</h5>',
+            'ID_kr': '<h5>LLDIKTI Wilayah X</h5>',
+            'ID_ja': '<h5>LLDIKTI Wilayah X</h5>',
+            'ID_ks': '<h5>LLDIKTI Wilayah XI</h5>',
+            'ID_kb': '<h5>LLDIKTI Wilayah XI</h5>',
+            'ID_ki': '<h5>LLDIKTI Wilayah XI</h5>',
+            'ID_kt': '<h5>LLDIKTI Wilayah XI</h5>',
+            'ID_ku': '<h5>LLDIKTI Wilayah XI</h5>',
+            'ID_ma': '<h5>LLDIKTI Wilayah XII</h5>',
+            'ID_mu': '<h5>LLDIKTI Wilayah XII</h5>',
+            'ID_ac': '<h5>LLDIKTI Wilayah XIII</h5>',
+            'ID_pa': '<h5>LLDIKTI Wilayah XIV</h5>',
+            'ID_pb': '<h5>LLDIKTI Wilayah XIV</h5>',
+            'ID_nt': '<h5>LLDIKTI Wilayah XV</h5>',
+            'ID_go': '<h5>LLDIKTI Wilayah XVI</h5>',
+            'ID_st': '<h5>LLDIKTI Wilayah XVI</h5>',
+            'ID_sa': '<h5>LLDIKTI Wilayah XVI</h5>',
+        },
         series: {
             regions: [{
                 values: RegionValues,
@@ -133,21 +206,8 @@ class Maps extends Component {
         },
         markers: [
 
-            // { latLng: [0.293347, 101.706825], name: 'aceh' },
+
             // { latLng: [4.695135, 96.749397], name: 'ID_ac' },
-            // { latLng: [-0.52, 166.93], name: 'Nauru' },
-            // { latLng: [-8.51, 179.21], name: 'Tuvalu' },
-            // { latLng: [7.11, 171.06], name: 'Marshall Islands' },
-            // { latLng: [17.3, -62.73], name: 'Saint Kitts and Nevis' },
-            // { latLng: [3.2, 73.22], name: 'Maldives' },
-            // { latLng: [35.88, 14.5], name: 'Malta' },
-            // { latLng: [41.0, -71.06], name: 'New England' },
-            // { latLng: [12.05, -61.75], name: 'Grenada' },
-            // { latLng: [13.16, -59.55], name: 'Barbados' },
-            // { latLng: [17.11, -61.85], name: 'Antigua and Barbuda' },
-            // { latLng: [-4.61, 55.45], name: 'Seychelles' },
-            // { latLng: [7.35, 134.46], name: 'Palau' },
-            // { latLng: [42.5, 1.51], name: 'Andorra' }
         ],
         options: {
             map: 'id_ID',
@@ -183,10 +243,61 @@ class Maps extends Component {
                     stroke: defaultColors.markerColor
                 }
             },
-            onRegionLabelShow: (e, el, code) => {
-                el.html(LLDIKTI[code] + el.html() + ' : ' + RegionValues[code] + ' pelaporan');
+            onRegionLabelShow: (event, code, region) => {
+                console.log(this.state.RegionValues, RegionValues[region])
+                code.html(this.state.LLDIKTI[region] + code.html() + ' : ' + this.state.RegionValues[region] + ' pelaporan');
+
+
             }
         }
+    }
+    async componentDidMount() {
+        const { token } = this.props;
+        const data = await jumlahLaporan(token);
+        const empat = "16"
+        console.log(data.data.filter(e => e._id.includes('LLDIKTI')))
+        this.setState({
+            RegionValues: {
+                'ID_su': 2,
+                'ID_su': 0,
+                'ID_ss': 0,
+                'ID_la': 0,
+                'ID_be': 0,
+                'ID_bb': 0,
+                'ID_jk': 0,
+                'ID_jb': 0,
+                'ID_bt': 0,
+                'ID_yo': 0,
+                'ID_jt': 2,
+                'ID_jl': 21,
+                'ID_ba': 0,
+                'ID_nb': 123,
+                'ID_sg': 0,
+                'ID_sn': 0,
+                'ID_sr': 0,
+                'ID_sb': 0,
+                'ID_ri': 0,
+                'ID_kr': 0,
+                'ID_ja': 0,
+                'ID_ks': 0,
+                'ID_kb': 0,
+                'ID_ki': 0,
+                'ID_kt': 0,
+                'ID_ku': 0,
+                'ID_ma': 0,
+                'ID_mu': 0,
+                'ID_ac': empat,
+                'ID_pa': 0,
+                'ID_pb': 0,
+                'ID_nt': 0,
+                'ID_go': 0,
+                'ID_st': 0,
+                'ID_sa': 0,
+            }
+        })
+        // this.setState({ RegionValues: data.data.filter(e => e._id.includes('LLDIKTI')) })
+
+
     }
     render() {
         return (

+ 3 - 4
components/Riwayat/TableRadar.js

@@ -4,7 +4,7 @@ import { Row, Col, Card, CardHeader, CardBody, Table, Button } from 'reactstrap'
 import { Line } from 'react-chartjs-2';
 
 
-function TableRadar({ listData, to, linkName, jadwal, pemeriksaan, sanksi, keberatan, banding, perbaikan, cabutSanksi, all_Laporan, ditutup, selesai, delegasi }) {
+function TableRadar({ listData, to, linkName, jadwal, pemeriksaan, sanksi, keberatan, banding, perbaikan, cabutSanksi, all_Laporan, tuntasDitutup, tuntasCabutsanksi, delegasi }) {
     return (
         <Card className="card-default">
             <CardBody style={{
@@ -128,7 +128,6 @@ function TableRadar({ listData, to, linkName, jadwal, pemeriksaan, sanksi, keber
 
                     </thead>
                     {listData.map((data) => {
-                        console.log(data)
                         return (
                             <tr key={data.id}>
                                 <td>{data.pembina.name}</td>
@@ -146,7 +145,7 @@ function TableRadar({ listData, to, linkName, jadwal, pemeriksaan, sanksi, keber
                                 </Link>
                                 <Link
                                     href={{
-                                        pathname: ditutup,
+                                        pathname: tuntasDitutup,
                                         query: { id: data.pembina.id },
                                     }}
                                 >
@@ -262,7 +261,7 @@ function TableRadar({ listData, to, linkName, jadwal, pemeriksaan, sanksi, keber
                                 </Link>
                                 <Link
                                     href={{
-                                        pathname: selesai,
+                                        pathname: tuntasCabutsanksi,
                                         query: { id: data.pembina.id },
                                     }}
                                 >

+ 1 - 1
pages/app/dashboard/all_Laporan.js

@@ -48,7 +48,7 @@ class Penjadwalan extends Component {
                 </div>
                 <Row>
                     <Col lg="12">
-                        {laporanPembina.data && < TableLaporan listData={laporanPembina.data.laporan} to="/app/pelaporan/detail" linkName="Detail" />}
+                        {laporanPembina.data && < TableLaporan listData={laporanPembina.data} to="/app/pelaporan/detail" linkName="Detail" />}
 
 
                     </Col>

+ 2 - 3
pages/app/dashboard/banding.js

@@ -37,8 +37,7 @@ class Banding extends Component {
         const id = query.id;
         const idPembina = id;
         const laporanPembina = await getlaporanByPembina(token, idPembina, { banding: true });
-        const laporan = laporanPembina.data.sanksi.map((e) => e.laporan)
-        this.setState({ laporanPembina, laporan });
+        this.setState({ laporanPembina });
     };
 
     render() {
@@ -50,7 +49,7 @@ class Banding extends Component {
                 </div>
                 <Row>
                     <Col lg="12">
-                        {laporanPembina.data && < TableLaporan listData={laporan} to="/app/pelaporan/detail" linkName="Detail" />}
+                        {laporanPembina.data && < TableLaporan listData={laporanPembina.data} to="/app/pelaporan/detail" linkName="Detail" />}
 
 
                     </Col>

+ 3 - 4
pages/app/dashboard/cabutSanksi.js

@@ -36,12 +36,11 @@ class cabutSanksi extends Component {
         const id = query.id;
         const idPembina = id;
         const laporanPembina = await getlaporanByPembina(token, idPembina, { cabutSanksi: true });
-        const laporan = laporanPembina.data.sanksi.map((e) => e.laporan)
-        this.setState({ laporanPembina, laporan });
+        this.setState({ laporanPembina });
     };
 
     render() {
-        const { laporanPembina, laporan } = this.state;
+        const { laporanPembina } = this.state;
         return (
             <ContentWrapper>
                 <div className="content-heading">
@@ -49,7 +48,7 @@ class cabutSanksi extends Component {
                 </div>
                 <Row>
                     <Col lg="12">
-                        {laporanPembina.data && < TableLaporan listData={laporan} to="/app/pelaporan/detail" linkName="Detail" />}
+                        {laporanPembina.data && < TableLaporan listData={laporanPembina.data} to="/app/pelaporan/detail" linkName="Detail" />}
 
 
                     </Col>

+ 62 - 0
pages/app/dashboard/delegasi.js

@@ -0,0 +1,62 @@
+import React, { Component } from "react";
+import ContentWrapper from "@/components/Layout/ContentWrapper";
+import Link from "next/link";
+import { Row, Col, Button } from "reactstrap";
+import { connect } from "react-redux";
+import Loader from "@/components/Common/Loader";
+import Router from "next/router";
+import TableRiwayat from "@/components/Riwayat/TableRiwayat";
+import ChartData from "@/components/Riwayat/ChartData";
+import ChartDataBar from "@/components/Riwayat/ChartDataBar";
+import Maps from "@/components/Riwayat/Maps"
+import TableRadar from "../../../components/Riwayat/TableRadar";
+import { getjumlahStatusLaporan } from "../../../actions/graph";
+import { getOneLaporan, getPelaporan, getlaporanByPembina } from "../../../actions/pelaporan";
+import ChartRadarB from "../../../components/Riwayat/ChartRadarB";
+import ChartRadarA from "../../../components/Riwayat/ChartRadarA";
+import TableLaporan from "../../../components/Riwayat/TableLaporan";
+
+
+
+class Pemeriksaan extends Component {
+    constructor(props) {
+        super(props);
+        this.state = {
+            laporanPembina: {},
+
+        };
+    }
+
+    static getInitialProps = async ({ query }) => {
+        return { query };
+    }
+
+    componentDidMount = async () => {
+        const { token, query } = this.props;
+        const id = query.id;
+        const idPembina = id;
+        const laporanPembina = await getlaporanByPembina(token, idPembina, { delegasi: true });
+        // const pembina = laporanPembina.data.laporan.map((e) => e.pt.pembina)
+        this.setState({ laporanPembina,  });
+    };
+
+    render() {
+        const { laporanPembina } = this.state;
+        return (
+            <ContentWrapper>
+                <div className="content-heading">
+                    <span className="font-color-white">List Laporan Wilayah</span>
+                </div>
+                <Row>
+                    <Col lg="12">
+                        {laporanPembina.data && < TableLaporan listData={laporanPembina?.data} to="/app/pelaporan/detail" linkName="Detail" />}
+
+
+                    </Col>
+                </Row>
+            </ContentWrapper>
+        );
+    }
+}
+const mapStateToProps = (state) => ({ user: state.user, token: state.token });
+export default connect(mapStateToProps)(Pemeriksaan);

+ 1 - 1
pages/app/dashboard/detail.js

@@ -49,7 +49,7 @@ class laporanByPembina extends Component {
                 </div>
                 <Row>
                     <Col lg="12">
-                        {laporanPembina.data && < TableLaporan listData={laporanPembina.data.laporan} to="/app/pelaporan/detail" linkName="Detail" />}
+                        {laporanPembina.data && < TableLaporan listData={laporanPembina?.data} to="/app/pelaporan/detail" linkName="Detail" />}
 
 
                     </Col>

+ 1 - 1
pages/app/dashboard/index.js

@@ -58,7 +58,7 @@ class Dashboard extends Component {
             <ChartRadarB />
           </Col>
           <Col lg="12">
-            {jumlahStatusLaporan?.data ? <TableRadar listData={jumlahStatusLaporan.data} ditutup="" selesai="" delegasi="" to="/app/dashboard/detail" jadwal="/app/dashboard/penjadwalan" all_Laporan="/app/dashboard/all_Laporan" pemeriksaan="/app/dashboard/pemeriksaan" sanksi="/app/dashboard/sanksi" keberatan="/app/dashboard/keberatan" banding="/app/dashboard/banding" perbaikan="/app/dashboard/perbaikan" cabutSanksi="/app/dashboard/cabutSanksi" linkName="Lihat" /> : <Loader />}
+            {jumlahStatusLaporan?.data ? <TableRadar listData={jumlahStatusLaporan.data} to="/app/dashboard/detail" jadwal="/app/dashboard/penjadwalan" all_Laporan="/app/dashboard/all_Laporan" pemeriksaan="/app/dashboard/pemeriksaan" sanksi="/app/dashboard/sanksi" keberatan="/app/dashboard/keberatan" banding="/app/dashboard/banding" perbaikan="/app/dashboard/perbaikan" cabutSanksi="/app/dashboard/cabutSanksi" tuntasCabutsanksi="/app/dashboard/tuntasCabutsanksi" tuntasDitutup="/app/dashboard/tuntasDitutup" delegasi="/app/dashboard/delegasi" linkName="Lihat" /> : <Loader />}
           </Col>
         </Row>
       </ContentWrapper>

+ 3 - 4
pages/app/dashboard/keberatan.js

@@ -37,12 +37,11 @@ class Keberatan extends Component {
         const id = query.id;
         const idPembina = id;
         const laporanPembina = await getlaporanByPembina(token, idPembina, { keberatan: true });
-        const laporan = laporanPembina.data.sanksi.map((e) => e.laporan)
-        this.setState({ laporanPembina, laporan });
+        this.setState({ laporanPembina });
     };
 
     render() {
-        const { laporanPembina, laporan } = this.state;
+        const { laporanPembina } = this.state;
         return (
             <ContentWrapper>
                 <div className="content-heading">
@@ -50,7 +49,7 @@ class Keberatan extends Component {
                 </div>
                 <Row>
                     <Col lg="12">
-                        {laporanPembina.data && < TableLaporan listData={laporan} to="/app/pelaporan/detail" linkName="Detail" />}
+                        {laporanPembina.data && < TableLaporan listData={laporanPembina.data} to="/app/pelaporan/detail" linkName="Detail" />}
 
 
                     </Col>

+ 1 - 2
pages/app/dashboard/pemeriksaan.js

@@ -38,7 +38,6 @@ class Pemeriksaan extends Component {
         const laporanPembina = await getlaporanByPembina(token, idPembina, { pemeriksaan: true });
         // const pembina = laporanPembina.data.laporan.map((e) => e.pt.pembina)
         this.setState({ laporanPembina, });
-        console.log(laporanPembina)
     };
 
     render() {
@@ -50,7 +49,7 @@ class Pemeriksaan extends Component {
                 </div>
                 <Row>
                     <Col lg="12">
-                        {laporanPembina.data && < TableLaporan listData={laporanPembina?.data?.laporan} to="/app/pelaporan/detail" linkName="Detail" />}
+                        {laporanPembina.data && < TableLaporan listData={laporanPembina?.data} to="/app/pelaporan/detail" linkName="Detail" />}
 
 
                     </Col>

+ 1 - 1
pages/app/dashboard/penjadwalan.js

@@ -48,7 +48,7 @@ class Penjadwalan extends Component {
                 </div>
                 <Row>
                     <Col lg="12">
-                        {laporanPembina.data && < TableLaporan listData={laporanPembina?.data?.laporan} to="/app/pelaporan/detail" linkName="Detail" />}
+                        {laporanPembina.data && < TableLaporan listData={laporanPembina?.data} to="/app/pelaporan/detail" linkName="Detail" />}
 
 
                     </Col>

+ 2 - 3
pages/app/dashboard/perbaikan.js

@@ -37,8 +37,7 @@ class Perbaikan extends Component {
         const id = query.id;
         const idPembina = id;
         const laporanPembina = await getlaporanByPembina(token, idPembina, { perbaikan: true });
-        const laporan = laporanPembina.data.sanksi.map((e) => e.laporan)
-        this.setState({ laporanPembina, laporan });
+        this.setState({ laporanPembina});
     };
 
     render() {
@@ -50,7 +49,7 @@ class Perbaikan extends Component {
                 </div>
                 <Row>
                     <Col lg="12">
-                        {laporanPembina.data && < TableLaporan listData={laporan} to="/app/pelaporan/detail" linkName="Detail" />}
+                        {laporanPembina.data && < TableLaporan listData={laporanPembina.data} to="/app/pelaporan/detail" linkName="Detail" />}
 
 
                     </Col>

+ 3 - 4
pages/app/dashboard/sanksi.js

@@ -37,12 +37,11 @@ class sanksi extends Component {
         const id = query.id;
         const idPembina = id;
         const laporanPembina = await getlaporanByPembina(token, idPembina, { sanksi: true });
-        const laporan = laporanPembina.data.sanksi.map((e) => e.laporan)
-        this.setState({ laporanPembina, laporan });
+        this.setState({ laporanPembina });
     };
 
     render() {
-        const { laporanPembina, laporan } = this.state;
+        const { laporanPembina } = this.state;
         return (
             <ContentWrapper>
                 <div className="content-heading">
@@ -50,7 +49,7 @@ class sanksi extends Component {
                 </div>
                 <Row>
                     <Col lg="12">
-                        {laporanPembina.data && < TableLaporan listData={laporan} to="/app/pelaporan/detail" linkName="Detail" />}
+                        {laporanPembina.data && < TableLaporan listData={laporanPembina?.data} to="/app/pelaporan/detail" linkName="Detail" />}
 
 
                     </Col>

+ 61 - 0
pages/app/dashboard/tuntasCabutsanksi.js

@@ -0,0 +1,61 @@
+import React, { Component } from "react";
+import ContentWrapper from "@/components/Layout/ContentWrapper";
+import Link from "next/link";
+import { Row, Col, Button } from "reactstrap";
+import { connect } from "react-redux";
+import Loader from "@/components/Common/Loader";
+import Router from "next/router";
+import TableRiwayat from "@/components/Riwayat/TableRiwayat";
+import ChartData from "@/components/Riwayat/ChartData";
+import ChartDataBar from "@/components/Riwayat/ChartDataBar";
+import Maps from "@/components/Riwayat/Maps"
+import TableRadar from "../../../components/Riwayat/TableRadar";
+import { getjumlahStatusLaporan } from "../../../actions/graph";
+import { getOneLaporan, getPelaporan, getlaporanByPembina } from "../../../actions/pelaporan";
+import ChartRadarB from "../../../components/Riwayat/ChartRadarB";
+import ChartRadarA from "../../../components/Riwayat/ChartRadarA";
+import TableLaporan from "../../../components/Riwayat/TableLaporan";
+
+
+
+class tuntasCabutsanksi extends Component {
+    constructor(props) {
+        super(props);
+        this.state = {
+            laporanPembina: {},
+
+        };
+    }
+
+    static getInitialProps = async ({ query }) => {
+        return { query };
+    }
+
+    componentDidMount = async () => {
+        const { token, query } = this.props;
+        const id = query.id;
+        const idPembina = id;
+        const laporanPembina = await getlaporanByPembina(token, idPembina, { diterima: true });
+        this.setState({ laporanPembina });
+    };
+
+    render() {
+        const { laporanPembina, laporan } = this.state;
+        return (
+            <ContentWrapper>
+                <div className="content-heading">
+                    <span className="font-color-white">List Laporan Wilayah</span>
+                </div>
+                <Row>
+                    <Col lg="12">
+                        {laporanPembina.data && < TableLaporan listData={laporanPembina.data} to="/app/pelaporan/detail" linkName="Detail" />}
+
+
+                    </Col>
+                </Row>
+            </ContentWrapper>
+        );
+    }
+}
+const mapStateToProps = (state) => ({ user: state.user, token: state.token });
+export default connect(mapStateToProps)(tuntasCabutsanksi);

+ 61 - 0
pages/app/dashboard/tuntasDitutup.js

@@ -0,0 +1,61 @@
+import React, { Component } from "react";
+import ContentWrapper from "@/components/Layout/ContentWrapper";
+import Link from "next/link";
+import { Row, Col, Button } from "reactstrap";
+import { connect } from "react-redux";
+import Loader from "@/components/Common/Loader";
+import Router from "next/router";
+import TableRiwayat from "@/components/Riwayat/TableRiwayat";
+import ChartData from "@/components/Riwayat/ChartData";
+import ChartDataBar from "@/components/Riwayat/ChartDataBar";
+import Maps from "@/components/Riwayat/Maps"
+import TableRadar from "../../../components/Riwayat/TableRadar";
+import { getjumlahStatusLaporan } from "../../../actions/graph";
+import { getOneLaporan, getPelaporan, getlaporanByPembina } from "../../../actions/pelaporan";
+import ChartRadarB from "../../../components/Riwayat/ChartRadarB";
+import ChartRadarA from "../../../components/Riwayat/ChartRadarA";
+import TableLaporan from "../../../components/Riwayat/TableLaporan";
+
+
+
+class tuntasDitutup extends Component {
+    constructor(props) {
+        super(props);
+        this.state = {
+            laporanPembina: {},
+
+        };
+    }
+
+    static getInitialProps = async ({ query }) => {
+        return { query };
+    }
+
+    componentDidMount = async () => {
+        const { token, query } = this.props;
+        const id = query.id;
+        const idPembina = id;
+        const laporanPembina = await getlaporanByPembina(token, idPembina, { ditutup: true });
+        this.setState({ laporanPembina });
+    };
+
+    render() {
+        const { laporanPembina } = this.state;
+        return (
+            <ContentWrapper>
+                <div className="content-heading">
+                    <span className="font-color-white">List Laporan Wilayah</span>
+                </div>
+                <Row>
+                    <Col lg="12">
+                        {laporanPembina.data && < TableLaporan listData={laporanPembina?.data} to="/app/pelaporan/detail" linkName="Detail" />}
+
+
+                    </Col>
+                </Row>
+            </ContentWrapper>
+        );
+    }
+}
+const mapStateToProps = (state) => ({ user: state.user, token: state.token });
+export default connect(mapStateToProps)(tuntasDitutup);

+ 0 - 1
pages/app/pelaporan/search.js

@@ -129,7 +129,6 @@ class Search extends Component {
 
 	render() {
 		const { selectedOptionMulti, pembina } = this.state;
-		console.log(this.state)
 		return (
 			<ContentWrapper>
 				<div className="content-heading">

+ 106 - 106
pages/app/pencabutan-sanksi/detail.js

@@ -233,9 +233,9 @@ class JawabanPencabutanSanksi extends Component {
 												>
 													{({ isSubmitting }) => (
 														<Form className="form-horizontal">
-															<FormGroup>
-																<label className="row-form-label">Status:</label>
-																<div className="row-md-10">
+															<FormGroup row>
+																<label className="col-md-2 col-form-label font-weight-bold font-color-black">Status:</label>
+																<div className="col-md-10">
 																	<Field name="status">
 																		{({ field, form }) => (
 																			<Select
@@ -257,9 +257,9 @@ class JawabanPencabutanSanksi extends Component {
 																</div>
 															</FormGroup>
 															{selectedOption && selectedOption.value === "Rekomendasi Perbaikan" ? (
-																<FormGroup>
-																	<label className="row-form-label">Keterangan:</label>
-																	<div className="row-md-10">
+																<FormGroup row>
+																	<label className="col-md-2 col-form-label">Keterangan:</label>
+																	<div className="col-md-10">
 																		<Field name="keterangan">{({ field }) => <Input type="textarea" {...field} />}</Field>
 																		<ErrorMessage name="keterangan" component="div" className="form-text text-danger" />
 																		{/* <span className="form-text">Deskripsi pelaporan minimum karakter 50 maksimum 200 karakter</span> */}
@@ -270,114 +270,114 @@ class JawabanPencabutanSanksi extends Component {
 															)}
 															{selectedOption && selectedOption.value === "Rekomendasi Perbaikan" ? (
 																<FormGroup row>
-																<label className="col-md-2 col-form-label">Upload File Pendukung<span className="text-danger">*</span></label>
-																<div className="col-md-10">
-																	<Field name="dokumen">
-																		{({ field, form, meta }) => (
-																			<DropzoneWrapper
-																				className=""
-																				onDrop={(e) => {
-																					this.onDrop(e);
-																					form.setFieldValue(field.name, e);
-																				}}
-																			>
-																				{({ getRootProps, getInputProps, isDragActive }) => {
-																					return (
-																						<div {...getRootProps()} className={"dropzone card" + (isDragActive ? "dropzone-drag-active" : "")}>
-																							<input name="dokumen" {...getInputProps()} />
-																							<div className="dropzone-style-1">
-																								<div className="center-ver-hor dropzone-previews flex">{this.state.files.length > 0 ?
-																									<div className="text-center fa-2x icon-cloud-upload mr-2 ">
-																										<h5 className="text-center dz-default dz-message">Klik untuk tambah file</h5>
-																									</div> :
-																									<div className="text-center fa-2x icon-cloud-upload mr-2 ">
-																										<h5 className="text-center dz-default dz-message">Klik untuk upload dokumen</h5>
+																	<label className="col-md-2 col-form-label">Upload File Pendukung<span className="text-danger">*</span></label>
+																	<div className="col-md-10">
+																		<Field name="dokumen">
+																			{({ field, form, meta }) => (
+																				<DropzoneWrapper
+																					className=""
+																					onDrop={(e) => {
+																						this.onDrop(e);
+																						form.setFieldValue(field.name, e);
+																					}}
+																				>
+																					{({ getRootProps, getInputProps, isDragActive }) => {
+																						return (
+																							<div {...getRootProps()} className={"dropzone card" + (isDragActive ? "dropzone-drag-active" : "")}>
+																								<input name="dokumen" {...getInputProps()} />
+																								<div className="dropzone-style-1">
+																									<div className="center-ver-hor dropzone-previews flex">{this.state.files.length > 0 ?
+																										<div className="text-center fa-2x icon-cloud-upload mr-2 ">
+																											<h5 className="text-center dz-default dz-message">Klik untuk tambah file</h5>
+																										</div> :
+																										<div className="text-center fa-2x icon-cloud-upload mr-2 ">
+																											<h5 className="text-center dz-default dz-message">Klik untuk upload dokumen</h5>
+																										</div>
+																									}
 																									</div>
-																								}
+																								</div>
+																								<div className="d-flex align-items-center">
+																									<small className="ml-auto">
+																										<button
+																											type="button"
+																											className="btn btn-link"
+																											onClick={(e) => {
+																												this.clearFiles(e);
+																												form.setFieldValue(field.name, []);
+																											}}
+																										>
+																											Reset dokumen
+																										</button>
+																									</small>
 																								</div>
 																							</div>
-																							<div className="d-flex align-items-center">
-																								<small className="ml-auto">
-																									<button
-																										type="button"
-																										className="btn btn-link"
-																										onClick={(e) => {
-																											this.clearFiles(e);
-																											form.setFieldValue(field.name, []);
-																										}}
-																									>
-																										Reset dokumen
-																									</button>
-																								</small>
-																							</div>
-																						</div>
-																					);
-																				}}
-																			</DropzoneWrapper>
-																		)}
-																	</Field>
-																	{thumbs}
-																	<ErrorMessage name="dokumen" component="div" className="form-text text-danger" />
-																	<p className="mrgn-top-5 font-color-black">
-																		Ukuran setiap dokumen maksimal 15mb
-																	</p>
-																</div>
-															</FormGroup>
+																						);
+																					}}
+																				</DropzoneWrapper>
+																			)}
+																		</Field>
+																		{thumbs}
+																		<ErrorMessage name="dokumen" component="div" className="form-text text-danger" />
+																		<p className="mrgn-top-5 font-color-black">
+																			Ukuran setiap dokumen maksimal 15mb
+																		</p>
+																	</div>
+																</FormGroup>
 															) : (
 																<FormGroup row>
-																<label className="col-md-2 col-form-label">Upload File Pendukung<span className="text-danger">*</span></label>
-																<div className="col-md-10">
-																	<Field name="dokumen">
-																		{({ field, form, meta }) => (
-																			<DropzoneWrapper
-																				className=""
-																				onDrop={(e) => {
-																					this.onDrop(e);
-																					form.setFieldValue(field.name, e);
-																				}}
-																			>
-																				{({ getRootProps, getInputProps, isDragActive }) => {
-																					return (
-																						<div {...getRootProps()} className={"dropzone card" + (isDragActive ? "dropzone-drag-active" : "")}>
-																							<input name="dokumen" {...getInputProps()} />
-																							<div className="dropzone-style-1">
-																								<div className="center-ver-hor dropzone-previews flex">{this.state.files.length > 0 ?
-																									<div className="text-center fa-2x icon-cloud-upload mr-2 ">
-																										<h5 className="text-center dz-default dz-message">Klik untuk tambah file</h5>
-																									</div> :
-																									<div className="text-center fa-2x icon-cloud-upload mr-2 ">
-																										<h5 className="text-center dz-default dz-message">Klik untuk upload dokumen</h5>
+																	<label className="col-md-2 col-form-label">Upload File Pendukung<span className="text-danger">*</span></label>
+																	<div className="col-md-10">
+																		<Field name="dokumen">
+																			{({ field, form, meta }) => (
+																				<DropzoneWrapper
+																					className=""
+																					onDrop={(e) => {
+																						this.onDrop(e);
+																						form.setFieldValue(field.name, e);
+																					}}
+																				>
+																					{({ getRootProps, getInputProps, isDragActive }) => {
+																						return (
+																							<div {...getRootProps()} className={"dropzone card" + (isDragActive ? "dropzone-drag-active" : "")}>
+																								<input name="dokumen" {...getInputProps()} />
+																								<div className="dropzone-style-1">
+																									<div className="center-ver-hor dropzone-previews flex">{this.state.files.length > 0 ?
+																										<div className="text-center fa-2x icon-cloud-upload mr-2 ">
+																											<h5 className="text-center dz-default dz-message">Klik untuk tambah file</h5>
+																										</div> :
+																										<div className="text-center fa-2x icon-cloud-upload mr-2 ">
+																											<h5 className="text-center dz-default dz-message">Klik untuk upload dokumen</h5>
+																										</div>
+																									}
 																									</div>
-																								}
+																								</div>
+																								<div className="d-flex align-items-center">
+																									<small className="ml-auto">
+																										<button
+																											type="button"
+																											className="btn btn-link"
+																											onClick={(e) => {
+																												this.clearFiles(e);
+																												form.setFieldValue(field.name, []);
+																											}}
+																										>
+																											Reset dokumen
+																										</button>
+																									</small>
 																								</div>
 																							</div>
-																							<div className="d-flex align-items-center">
-																								<small className="ml-auto">
-																									<button
-																										type="button"
-																										className="btn btn-link"
-																										onClick={(e) => {
-																											this.clearFiles(e);
-																											form.setFieldValue(field.name, []);
-																										}}
-																									>
-																										Reset dokumen
-																									</button>
-																								</small>
-																							</div>
-																						</div>
-																					);
-																				}}
-																			</DropzoneWrapper>
-																		)}
-																	</Field>
-																	{thumbs}
-																	<ErrorMessage name="dokumen" component="div" className="form-text text-danger" />
-																	<p className="mrgn-top-5 font-color-black">
-																		Ukuran setiap dokumen maksimal 15mb
-																	</p>
-																</div>
-															</FormGroup>
+																						);
+																					}}
+																				</DropzoneWrapper>
+																			)}
+																		</Field>
+																		{thumbs}
+																		<ErrorMessage name="dokumen" component="div" className="form-text text-danger" />
+																		<p className="mrgn-top-5 font-color-black">
+																			Ukuran setiap dokumen maksimal 15mb
+																		</p>
+																	</div>
+																</FormGroup>
 															)}
 															<FormGroup>
 																<div className="row-xl-10">

+ 1 - 0
pages/app/sanksi/detail.js

@@ -30,6 +30,7 @@ class Detail extends Component {
 		const { query, token } = this.props;
 		const sanksi = await getOneSanksi(token, query.id);
 		this.setState({ sanksi });
+		console.log(sanksi)
 	};
 
 	render() {

+ 18 - 15
pages/app/tuntas/detail.js

@@ -29,16 +29,16 @@ class DetailPelaporan extends Component {
 		const { token, query } = this.props;
 		const getTokenCsrf = await getCsrf();
 		const _csrf = getTokenCsrf.token;
-		if (query.data === "sanksi") {
-			const sanksi = await getOneSanksi(this.props.token, query.id + "?aktif=false");
-			await createLog(token, { aktivitas: `Mengakses halaman detail Pelaporan Tuntas dengan No. Laporan ${sanksi.data.laporan.no_laporan}`, menu: "Pelaporan", _csrf: _csrf });
-			this.setState({ sanksi });
-		}
-		else {
-			const pelaporan = await getOneLaporan(this.props.token, query.id + "?aktif=false");
+		// if (query.data === "sanksi") {
+		// 	const sanksi = await getOneSanksi(this.props.token, query.id + "?aktif=false");
+		// 	await createLog(token, { aktivitas: `Mengakses halaman detail Pelaporan Tuntas dengan No. Laporan ${sanksi.data.laporan.no_laporan}`, menu: "Pelaporan", _csrf: _csrf });
+		// 	this.setState({ sanksi });
+		// }
+		// else {
+			const pelaporan = await getOneLaporan(this.props.token, query.id);
 			await createLog(token, { aktivitas: `Mengakses halaman detail Pelaporan Tuntas dengan No. Laporan ${pelaporan?.data?.no_laporan}`, menu: "Pelaporan", _csrf: _csrf });
 			this.setState({ pelaporan });
-		}
+		// }
 
 
 	};
@@ -62,7 +62,7 @@ class DetailPelaporan extends Component {
 					</div>
 					<Row>
 						<Col xl="9">
-							{query?.data === "sanksi" &&
+							{/* {query?.data === "sanksi" &&
 								<Card className="card-default">
 									<CardBody>
 										<Row>
@@ -72,20 +72,23 @@ class DetailPelaporan extends Component {
 										</Row>
 									</CardBody>
 								</Card>
-							}
-							{query?.data === "laporan" &&
+							} */}
+							{/* {query?.data === "laporan" && */}
 								<Card className="card-default">
 									<CardBody>
 										<Row>
 											<Col lg={12}>
-												{pelaporan?.data && query.data === "laporan" ? <DetailLaporan data={pelaporan.data} role={this.props.user.role.id} /> : <Loader />}</Col>
+												{pelaporan?.data ? <DetailLaporan data={pelaporan.data} role={this.props.user.role.id} /> : <Loader />}</Col>
 										</Row>
 									</CardBody>
 								</Card>
-							}
+							{/* } */}
 						</Col>
-						{query?.data === "sanksi" && <Col xl="3">{sanksi?.data ? <DetailPT data={sanksi?.data.laporan?.pt} /> : <Loader />}</Col>}
-						{query?.data === "laporan" && <Col xl="3">{pelaporan?.data ? <DetailPT data={pelaporan?.data.pt} /> : <Loader />}</Col>}
+						{/* {query?.data === "sanksi" && <Col xl="3">{sanksi?.data ? <DetailPT data={sanksi?.data.laporan?.pt} /> : <Loader />}</Col>} */}
+						{/* {query?.data === "laporan" && */}
+						
+						<Col xl="3">{pelaporan?.data ? <DetailPT data={pelaporan?.data.pt} /> : <Loader />}</Col>
+						{/* } */}
 					</Row>
 				</div>
 			</ContentWrapper>

+ 6 - 4
pages/app/tuntas/index.js

@@ -32,9 +32,10 @@ class PelaporanTuntas extends Component {
                 ...laporanSelesai.data, laporan: [...laporanSelesai.data.laporan, ...laporanSelesai.data.sanksi], sanksi: null
             }
         }
-        const pelaporan = await getPelaporan(token, { jadwal: true, aktif: false });
+        const pelaporan = await getPelaporan(token, { tuntas: true });
         const graph = await getGraph(this.props.token, { evaluasi: true, listJadwal: true, aktif: false });
         this.setState({ pelaporan, graph, laporanSelesai });
+        console.log(this.state.pelaporan)
     };
 
     nextButton = async () => {
@@ -83,7 +84,7 @@ class PelaporanTuntas extends Component {
                 tahun: this.state.tahun,
                 pelaporan: true,
             });
-            if (this.state.graph.data.jumlah_ditutup && this.state.graph.data.jumlah_selesai) {
+            if (this.state.laporanSelesai.data.jumlah_ditutup && this.state.laporanSelesai.data.jumlah_selesai) {
                 Router.push(url);
             } else {
                 swal.fire({
@@ -112,7 +113,7 @@ class PelaporanTuntas extends Component {
                 sanksi: true,
 
             });
-            if (this.state.graph.data.jumlah_ditutup && this.state.graph.data.jumlah_selesai) {
+            if (this.state.laporanSelesai.data.jumlah_ditutup && this.state.laporanSelesai.data.jumlah_selesai) {
                 Router.push(url);
             } else {
                 swal.fire({
@@ -126,6 +127,7 @@ class PelaporanTuntas extends Component {
 
     render() {
         const { pelaporan, graph, laporanSelesai } = this.state;
+        console.log(pelaporan)
         return (
             <ContentWrapper>
                 <div className="content-heading">
@@ -135,7 +137,7 @@ class PelaporanTuntas extends Component {
                 </div>
                 <Row>
                     <Col lg="4">{laporanSelesai?.data ? <CaseProgress data={laporanSelesai.data} nextButton={this.nextButton} prevButton={this.prevButton} tahun={this.state.tahun} excel={this.excel} excelMenu={this.excelMenu} excelSemua={this.excelSemua} /> : <Loader />}</Col>
-                    <Col lg="8">{laporanSelesai?.data?.laporan ? <TableLaporan status noBy listData={laporanSelesai.data.laporan} to="/app/tuntas/detail" linkName="Detail" /> : <Loader />}</Col>
+                    <Col lg="8">{laporanSelesai?.data?.laporan ? <TableLaporan status noBy listData={pelaporan.data} to="/app/tuntas/detail" linkName="Detail" /> : <Loader />}</Col>
                 </Row>
             </ContentWrapper>
         );

+ 1 - 1
pages/pt/jawaban-pencabutan-sanksi/index.js

@@ -16,7 +16,7 @@ class JawabanCabutSanksi extends Component {
 
 	componentDidMount = async () => {
 		const { token } = this.props;
-		const sanksi = await getSanksi(token, { cabutSanksi: true, jawaban: false });
+		const sanksi = await getSanksi(token, { cabutSanksi: true, jawaban: true });
 		this.setState({ sanksi });
 	};