Эх сурвалжийг харах

fix list sanksi sama laporan tuntas

yazid138 3 жил өмнө
parent
commit
83579c666c

+ 10 - 0
actions/pelanggaran.js

@@ -56,3 +56,13 @@ export const getPelanggaranPublic = async (token) => {
 		return false;
 	}
 };
+
+export const getPelanggaranSanksi = async (token) => {
+	try {
+		const res = await axios.get("/pelanggaran/sanksi", {headers: {Authorization: token}});
+		return await res.data;
+	} catch (error) {
+		console.log("error", error);
+		return false;
+	}
+};

+ 2 - 2
components/PelaporanTuntas/TableLaporan.js

@@ -38,7 +38,7 @@ function TableLaporan({ listData, to, linkName }) {
 													<div className="media align-items-center">
 														<div className="media-body d-flex">
 															<div>
-																<h4 className="m-0">{data.pt.nama.length > 64 ? data.pt.nama.substring(0, 64) + "..." : data.pt.nama}</h4>
+																<h4 className="m-0">{data.pt?.nama.length > 64 || data.laporan?.pt.nama.length > 64 ? data.pt?.nama.substring(0, 64) + "..." ||  data.laporan?.pt.nama.substring(0, 64) + "..." : data.pt?.nama || data.laporan?.pt.nama}</h4>
 																<p className="w-105">{data.keterangan}</p>
 															</div>
 														</div>
@@ -46,7 +46,7 @@ function TableLaporan({ listData, to, linkName }) {
 												</div>
 											</td>
 											<td>
-												{data.evaluasi?.length ? <div className="badge badge-green">Selesai</div> : <div className="badge badge-red">Ditutup</div>}
+												{data.aktif === false ? <div className="badge badge-green">Selesai</div> : <div className="badge badge-red">Ditutup</div>}
 											</td>
 											<td>
 												<div className="ml-auto">

+ 1 - 1
components/Sanksi/UploadSurat.js

@@ -235,7 +235,7 @@ export class UploadSurat extends Component {
 					<label className="col-md-2 col-form-label">List sanksi </label>
 					<div className="col-md-10">
 						<Select
-							options={listSanksi}
+							options={this.props.listSanksi.map(e=> ({value: e, label: e}))}
 							formatOptionLabel={formatOptionLabel}
 							isMulti
 							onChange={(e) => {

+ 5 - 3
pages/app/sanksi/proses.js

@@ -12,7 +12,7 @@ import TablePenetapanSanksi from "@/components/Sanksi/TablePenetapanSanksi";
 import Link from "next/link";
 import { getOneLaporan } from "@/actions/pelaporan";
 import { createSanksi } from "@/actions/sanksi";
-import { getPelanggaran } from "@/actions/pelanggaran";
+import { getPelanggaran, getPelanggaranSanksi } from "@/actions/pelanggaran";
 import { connect } from "react-redux";
 import Loader from "@/components/Common/Loader";
 import { ToastContainer, toast } from "react-toastify";
@@ -30,6 +30,7 @@ class ProsesSanksi extends Component {
 			dataUpload: null,
 			dataPelanggaran: {},
 			pelaporan: {},
+			listSanksi: []
 		};
 	}
 
@@ -41,7 +42,8 @@ class ProsesSanksi extends Component {
 		const { query, token } = this.props;
 		const { id } = query;
 		const pelaporan = await getOneLaporan(token, id);
-		this.setState({ pelaporan });
+		const {data:listSanksi} = await getPelanggaranSanksi(token)
+		this.setState({ pelaporan, listSanksi });
 	};
 
 	done = async (e) => {
@@ -222,7 +224,7 @@ class ProsesSanksi extends Component {
 										<TabPane tabId="4">
 											<div className="pt-3 mb-3">
 												<h2>Penetapan Sanksi</h2>
-												<UploadSurat setUploadSuratSanksi={this.setUploadSuratSanksi} />
+												{this.state.listSanksi && <UploadSurat setUploadSuratSanksi={this.setUploadSuratSanksi} listSanksi={this.state.listSanksi} />}
 											</div>
 											<hr />
 											<div className="d-flex">

+ 10 - 5
pages/app/tuntas/index.js

@@ -2,7 +2,7 @@ import React, { Component } from "react";
 import ContentWrapper from "@/components/Layout/ContentWrapper";
 import { Row, Col } from "reactstrap";
 import { getPelaporan } from "@/actions/pelaporan";
-import { getGraph, getExcel } from "@/actions/graph";
+import { getGraph, getExcel,getlaporanselesai } from "@/actions/graph";
 import CaseProgress from "@/components/PelaporanTuntas/CaseProgress";
 import TableLaporan from "@/components/PelaporanTuntas/TableLaporan";
 import { connect } from "react-redux";
@@ -18,14 +18,19 @@ class PelaporanTuntas extends Component {
             pelaporan: {},
             graph: {},
             tahun: new Date().getFullYear(),
+            laporanSelesai: {}
         };
     }
 
     componentDidMount = async () => {
         const { token } = this.props;
+        let laporanSelesai = await getlaporanselesai(token);
+        laporanSelesai = {...laporanSelesai, data: {
+            ...laporanSelesai.data, laporan: [...laporanSelesai.data.laporan, ...laporanSelesai.data.sanksi], sanksi: null
+        }}
         const pelaporan = await getPelaporan(token, { jadwal: true, aktif: false });
         const graph = await getGraph(this.props.token, { evaluasi: true, listJadwal: true, aktif: false });
-        this.setState({ pelaporan, graph });
+        this.setState({ pelaporan, graph, laporanSelesai });
     };
 
     nextButton = async () => {
@@ -50,7 +55,7 @@ class PelaporanTuntas extends Component {
     };
 
     render() {
-        const { pelaporan, graph } = this.state;
+        const { pelaporan, graph, laporanSelesai } = this.state;
         return (
             <ContentWrapper>
                 <div className="content-heading">
@@ -59,8 +64,8 @@ class PelaporanTuntas extends Component {
                     </span>
                 </div>
                 <Row>
-                    <Col lg="4">{graph?.data ? <CaseProgress data={graph.data} nextButton={this.nextButton} prevButton={this.prevButton} tahun={this.state.tahun} excel={this.excel} /> : <Loader />}</Col>
-                    <Col lg="8">{pelaporan?.data ? <TableLaporan status noBy listData={pelaporan.data} to="/app/tuntas/detail" linkName="Detail" /> : <Loader />}</Col>
+                    <Col lg="4">{laporanSelesai?.data ? <CaseProgress data={laporanSelesai.data} nextButton={this.nextButton} prevButton={this.prevButton} tahun={this.state.tahun} excel={this.excel} /> : <Loader />}</Col>
+                    <Col lg="8">{laporanSelesai?.data?.laporan ? <TableLaporan status noBy listData={laporanSelesai.data.laporan} to="/app/tuntas/detail" linkName="Detail" /> : <Loader />}</Col>
                 </Row>
             </ContentWrapper>
         );