Jelajahi Sumber

5. Proses pelaporan tuntas, delegasi ini tidak terekam pada log/riwayat (BUG) DONE

andi 2 tahun lalu
induk
melakukan
d5798c1eb0

+ 8 - 13
actions/pelaporan.js

@@ -74,17 +74,17 @@ export const getPelaporanPublic = async ({ number, noHp }) => {
 		return false;
 	}
 };
-
-export const createPelaporan = async (token, data, _csrf) => {
-	const res = await axiosAPI.post(`/laporan/create?_csrf=${_csrf}`, data, { headers: { Authorization: token } });
-	logCreatePelaporan(token)
-	return res.data;
-};
 const logCreatePelaporan = async (token, id) => {
 	const getToken = await getCsrf();
 	const _csrf = getToken.token;
 	await createLog(token, { aktivitas: `Berhasil Membuat pelaporan`, _csrf: _csrf });
 }
+export const createPelaporan = async (token, data, _csrf) => {
+	const res = await axiosAPI.post(`/laporan/create?_csrf=${_csrf}`, data, { headers: { Authorization: token } });
+	await logCreatePelaporan(token)
+	return res.data;
+};
+
 
 // export const createLaporanPublic = async (data) => {
 // 	try {
@@ -116,21 +116,16 @@ export const createLaporanPublic = async (token, data, _csrf) => {
 // 	}
 // };
 
-export const updateLaporan = async (token, id, data, _csrf) => {
+export const updateLaporan = async (token, id, data, _csrf, menu) => {
 	try {
 		const res = await axiosAPI.put(`/laporan/update/${id}?_csrf=${_csrf}`, data, { headers: { Authorization: token } });
-		if (data.aktif === "false") logUpdateLaporan(token, id);
 		return res.data;
 	} catch (error) {
 		console.log("error", error.response.data);
 		return false;
 	}
 };
-const logUpdateLaporan = async (token, id) => {
-	const getToken = await getCsrf();
-	const _csrf = getToken.token;
-	await createLog(token, { aktivitas: `Berhasil menutup laporan, id: ${id}`, _csrf: _csrf });
-}
+
 
 export const jumlahLaporan = async (token) => {
 	try {

+ 1 - 1
actions/pemeriksaan.js

@@ -6,7 +6,7 @@ import { getCsrf } from "./security";
 export const insertPemeriksaan = async (token, id, data, _csrf) => {
 	const res = await axiosAPI.post(`/laporan/evaluasi/add/${id}?_csrf=${_csrf}`, data, { headers: { Authorization: token } });
 	// await createLog(token, { aktivitas: `Berhasil menambah evaluasi, id: ${id}` });
-	log(token, id)
+	await log(token, id)
 	return res.data;
 };
 const log = async (token, id) => {

+ 16 - 8
components/Extras/calendar.view.js

@@ -245,20 +245,27 @@ class Calendar extends Component {
 	};
 
 	handleChangeSelect = (selectedOption) => this.setState({ selectedOption });
-	logUpdateLaporanSuccess = async () => {
+
+	logUpdateLaporanError = async () => {
 		const getToken = await getCsrf();
 		const _csrf = getToken.token;
 		const { token, query } = this.props;
 		const { id } = query;
-		await createLog(token, { aktivitas: `Berhasil mengubah data laporan, id: ${id}`, _csrf: _csrf });
-
+		await createLog(token, { aktivitas: `Berhasil mengubah data laporan, id: ${id}`, _csrf: _csrf, menu: "Penjadwalan" });
 	}
-	logUpdateLaporanError = async () => {
+	logdelegasi = async () => {
+		const getToken = await getCsrf();
+		const _csrf = getToken.token;
+		const { token, query } = this.props;
+		const { id } = query;
+		await createLog(token, { aktivitas: `Berhasil Delegasi Laporan, id: ${id}`, _csrf: _csrf , menu :"Penjadwalan"});
+	}
+	logDitutup = async () => {
 		const getToken = await getCsrf();
 		const _csrf = getToken.token;
 		const { token, query } = this.props;
 		const { id } = query;
-		await createLog(token, { aktivitas: `Berhasil mengubah data laporan, id: ${id}`, _csrf: _csrf });
+		await createLog(token, { aktivitas: `Berhasil menutup laporan, id: ${id}`, _csrf: _csrf, menu: "Penjadwalan" });
 	}
 
 	handleSimpan = async (value) => {
@@ -288,18 +295,19 @@ class Calendar extends Component {
 				if (value.status.value === this.getStatus()[1].value) {
 					data.change_role = "true";
 					update = await updateLaporan(token, id, data, _csrf);
+					await this.logdelegasi()
 					Router.push("/app/penjadwalan");
 				} else if (value.status.value === this.getStatus()[2].value) {
-
 					update = await updateLaporan(token, id, formdata, _csrf + `&redudansi=true`);
+					await this.logDitutup()
 					Router.push("/app/penjadwalan");
 				}
 				if (!update) {
-					toast.update(toastid, { render: "Gagal simpan jadwal", type: "error", isLoading: false, autoClose: true, closeButton: true });
+					toast.update(toastid, { render: "Error", type: "error", isLoading: false, autoClose: true, closeButton: true });
 					this.logUpdateLaporanError()
 
 				} else {
-					toast.update(toastid, { render: "Input jadwal berhasil", type: "success", isLoading: false, autoClose: true, closeButton: true });
+					toast.update(toastid, { render: "Success", type: "success", isLoading: false, autoClose: true, closeButton: true });
 					this.logUpdateLaporanSuccess()
 					Router.push("/app/penjadwalan");
 				}

+ 9 - 1
components/Pemeriksaan/InputEvaluasi.js

@@ -12,6 +12,7 @@ import { connect } from "react-redux";
 import { getCsrf } from "../../actions/security";
 import Swal from "sweetalert2";
 import Select from "react-select";
+import { createLog } from "../../actions/log";
 
 
 
@@ -209,6 +210,13 @@ class InputEvaluasi extends Component {
 	handlechecklist = () => {
 		this.setState({ delegasichecklist: !this.state.delegasichecklist })
 	};
+	logDitutup = async () => {
+		const getToken = await getCsrf();
+		const _csrf = getToken.token;
+		const { token, query } = this.props;
+		const { id } = query;
+		await createLog(token, { aktivitas: `Berhasil menutup laporan, id: ${id}`, _csrf: _csrf, menu: "Pemeriksaan" });
+	}
 
 	handleTutupLaporan = async (data, value) => {
 		if (this.props?.user?.role.id === 2024) {
@@ -238,8 +246,8 @@ class InputEvaluasi extends Component {
 					autoClose: 1000
 				},
 				error: "Error",
-
 			});
+			await this.logDitutup()
 			await Router.push({
 				pathname: "/app/pemeriksaan",
 			});

+ 11 - 2
components/Sanksi/Redudansi.js

@@ -10,6 +10,7 @@ import { updateLaporan } from "../../actions/pelaporan"
 import { getCsrf } from "../../actions/security";
 import { ToastContainer, toast } from "react-toastify";
 import Router from "next/router";
+import { createLog } from "../../actions/log";
 
 
 
@@ -87,6 +88,13 @@ export class Redudansi extends Component {
             files: [...prevState.files, ...selectFile]
         }))
     };
+    logDitutup = async () => {
+        const getToken = await getCsrf();
+        const _csrf = getToken.token;
+        const { token, query } = this.props;
+        const { id } = query;
+        await createLog(token, { aktivitas: `Berhasil menutup laporan, id: ${id}`, _csrf: _csrf, menu: "Sanksi" });
+    }
     handleTutupLaporan = async (data, value) => {
         if (this.props.role === 2024) {
             Swal.fire({
@@ -112,8 +120,9 @@ export class Redudansi extends Component {
                 success: "Success",
                 error: "Error",
                 autoClose: 1000
-            });
-           await Router.push("/app/sanksi");
+            }); 
+            await this.logDitutup()
+            await Router.push("/app/sanksi");
         }
 
     };

+ 0 - 3
components/Sanksi/TablePenetapanSanksi.js

@@ -3,9 +3,6 @@ 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";
 

+ 11 - 1
pages/app/sanksi/proses.js

@@ -26,6 +26,7 @@ import { updatePddikti } from "../../../actions/sanksi";
 import { ENV } from "../../../env";
 import Swal from "sweetalert2";
 import Redudansi from "../../../components/Sanksi/Redudansi";
+import { createLog } from "../../../actions/log";
 
 
 
@@ -195,6 +196,13 @@ class ProsesSanksi extends Component {
 
 	}
 
+	logdelegasi = async () => {
+		const getToken = await getCsrf();
+		const _csrf = getToken.token;
+		const { token, query } = this.props;
+		const { id } = query;
+		await createLog(token, { aktivitas: `Berhasil Delegasi Laporan, id: ${id}`, _csrf: _csrf, menu: "Sanksi" });
+	}
 	handleDelegasi = async (data) => {
 		if (this.props?.user?.role.id === 2024) {
 			Swal.fire({
@@ -219,8 +227,10 @@ class ProsesSanksi extends Component {
 
 			if (!update) {
 				toast.update(toastid, { render: "Laporan gagal didelegasi", type: "error", isLoading: false, autoClose: true, closeButton: true });
+
 			} else {
 				toast.update(toastid, { render: "Laporan berhasil didelegasi", type: "success", isLoading: false, autoClose: true, closeButton: true });
+				await this.logdelegasi()
 				Router.push("/app/sanksi");
 			}
 		}
@@ -453,7 +463,7 @@ class ProsesSanksi extends Component {
 												<Card className="card-default">
 
 													<CardBody>
-														<Redudansi setDataStatusLaporan={this.setDataStatusLaporan} id={pelaporan.data?._id}  role={this.props?.user?.role.id}/>
+														<Redudansi setDataStatusLaporan={this.setDataStatusLaporan} id={pelaporan.data?._id} role={this.props?.user?.role.id} />
 													</CardBody>
 												</Card>
 											</div>