Bladeren bron

7.setelah di lakukan cabut sanksi, data pindah ke menu pencabutan sanksi/detail (revisian DONE)
5. button download BA di menu pemantauan (masih dummy hanya prioritas untuk dokumentasi buku panduan DONE)
2. di menu bypass ketika cabut sanksi ada notifikasi dulu "Apakah Anda yakin akan mencabut sanksi pada laporan ini?" DONE

andi 2 jaren geleden
bovenliggende
commit
f0a512c140

+ 30 - 10
components/Bypass/TableBypass.js

@@ -6,23 +6,43 @@ import { bypassCabutSanksi } from "../../actions/cabutSanksi";
 import { useSelector } from "react-redux";
 import { ToastContainer, toast } from "react-toastify";
 import Router from "next/router";
+import { useState } from "react";
+import { Modal, ModalBody, ModalFooter } from "reactstrap";
 
 
 function TableBypass({ listData, to, linkName }) {
 
     const token = useSelector((state) => state.token)
-
-    const handleCabutSanksi = async (id) => {
-        await toast.promise(bypassCabutSanksi(token, id), {
-            pending: "Loading",
-            success: "Success",
-            error: "Error",
-        });
-        Router.push("/app/pencabutan-sanksi");
-        // await bypassCabutSanksi(token, id)
+    const [modalIsOpen, setModalIsOpen] = useState(false)
+    const [seledtedID, setSelectedID] = useState("")
+    const setmodal = (id) => {
+        setModalIsOpen(true)
+        setSelectedID(id)
     }
+
+
     return (
         <div className="card b">
+            <Modal isOpen={modalIsOpen} >
+                <ModalBody>Apakah Anda yakin akan mencabut sanksi pada laporan ini?</ModalBody>
+                <ModalFooter>
+
+                    <Button color className="btn-login" onClick={async () => {
+                        await toast.promise(bypassCabutSanksi(token, seledtedID), {
+                            pending: "Loading",
+                            success: "Success",
+                            error: "Error",
+                        });
+                        Router.push(`/app/pencabutan-sanksi/detail?id=${seledtedID}`);
+                        setModalIsOpen(false)
+                    }}>
+                        <span className="font-color-white">Ya</span>
+                    </Button>
+                    <Button color className="btn-v2" onClick={setModalIsOpen}>
+                        Tidak
+                    </Button>
+                </ModalFooter>
+            </Modal>
             <div className="card-body card-over">
                 <Datatable options={{ responsive: false, ordering: true }}>
                     <table className="table w-100" data-order='[[3, "desc"]]'>
@@ -118,7 +138,7 @@ function TableBypass({ listData, to, linkName }) {
                                                 </Link>
                                                 <Button className="btn-v2 float-right mr-2" color
                                                     style={{ borderRadius: "7px" }}
-                                                    onClick={() => { handleCabutSanksi(data._id) }}
+                                                    onClick={() => { setmodal(data._id) }}
                                                 >
                                                     <span className="font-color-black">
                                                         Cabut Sanksi

+ 8 - 0
components/Main/Timeline.js

@@ -1,5 +1,6 @@
 import moment from "moment";
 import { useSelector } from "react-redux";
+import { Button } from "reactstrap";
 
 function Timeline({ data, noFile = false, noJadwal = false }) {
 	const date = data && [...new Set(data.map((e) => moment(e.createdAt).format("DD MMMM YYYY")))];
@@ -79,6 +80,13 @@ function Timeline({ data, noFile = false, noJadwal = false }) {
 												) : (
 													""
 												)}
+												{data.action === "CREATE SANKSI" && (
+													<span className=" mb-5">
+														<Button color className="btn-labeled-4 mt-0 mb-2" style={{ borderRadius: "5px" }}>
+															<h5 className="p-0 mt-2"><em className="fas fa-download mr-2" />Print dan Download Berita Acara</h5>
+														</Button>
+													</span>
+												)}
 											</div>
 										</div>
 									</div>

+ 0 - 5
components/PT/JawabanPencabutanSanksi/TableSanksiJawaban.js

@@ -11,7 +11,6 @@ function TableSanksi({ listData, to, linkName }) {
 						<tr>
 							<th>Nomor Sanksi</th>
 							<th>Keterangan Sanksi</th>
-							{/* <th>Created</th> */}
 							<th>Status</th>
 						</tr>
 					</thead>
@@ -19,7 +18,6 @@ function TableSanksi({ listData, to, linkName }) {
 						{listData.map((data) => {
 							return (
 								<tr key={data._id}>
-									{/* <td>{data.no_sanksi}</td> */}
 									<td>
 										<div className="media align-items-center">
 											<div className="media-body d-flex">
@@ -35,16 +33,13 @@ function TableSanksi({ listData, to, linkName }) {
 											<div className="media align-items-center">
 												<div className="media-body d-flex">
 													<div>
-														{/* <h4 className="m-0">{data.laporan.pt.nama}</h4> */}
 														<h4 className="m-0">{data.laporan.pt.nama.length > 64 ? data.laporan.pt.nama.substring(0, 64) + "..." : data.laporan.pt.nama}</h4>
-														{/* <p className="w-105">{data.keterangan.length > 150 ? data.keterangan.substring(0, 150) + "..." : data.keterangan}</p> */}
 														<p className="w-105">{data.keterangan}</p>
 													</div>
 												</div>
 											</div>
 										</div>
 									</td>
-									{/* <td>{moment(data.createdAt).format("DD MMMM YYYY")}</td> */}
 									<td>
 										{data.jawaban?.cabut_sanksi ? (
 											<Link href={{ pathname: to, query: { id: data._id } }}>

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

@@ -28,7 +28,7 @@ class Bypass extends Component {
                         Bypass
                     </span></div>
                 <Row>
-                    <Col lg={12}>{sanksi.data?.length ? <TableBypass listData={sanksi.data} linkName="Detail" to="/app/bypass/detail" handleCabutSanksi={this.handlecabutsanksi} /> : sanksi.data ? "Tidak ada Sanksi" : <Loader />}</Col>
+                    <Col lg={12}>{sanksi.data?.length ? <TableBypass listData={sanksi.data} linkName="Detail" to="/app/bypass/detail" /> : sanksi.data ? "Tidak ada Sanksi" : <Loader />}</Col>
                 </Row>
             </ContentWrapper>
         );

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

@@ -93,6 +93,11 @@ class ProsesSanksi extends Component {
 					formdata.append("dokumen_terima_sanksi", e);
 				});
 			}
+			// if (this.state.dataUpload.filesBeritaAcara && this.state.dataUpload.filesBeritaAcara.length > 0) {
+			// 	this.state.dataUpload.filesBeritaAcara.forEach((e) => {
+			// 		formdata.append("berita_acara", e);
+			// 	});
+			// }
 			await createSanksi(token, id, formdata);
 
 			toast.update(toastid, { render: "All is good", type: "success", isLoading: false, autoClose: true, closeButton: true });