Riwayat.js 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. import Datatable from "@/components/Tables/Datatable";
  2. import moment from "moment";
  3. import { Card, CardHeader, CardBody, CardTitle } from "reactstrap";
  4. import { API_URL } from "@/env";
  5. import Swal from "sweetalert2";
  6. function Riwayat({ data, role }) {
  7. const handleOpenAlert = () => {
  8. Swal.fire({
  9. icon: 'error',
  10. title: 'Oops...',
  11. html: 'Maaf anda tidak memiliki akses untuk menyelesaikan<p> proses ini.</p>',
  12. confirmButtonColor: "#3e3a8e",
  13. confirmButtonText: 'Oke'
  14. })
  15. };
  16. return (
  17. <Card className="card-default">
  18. <CardHeader>
  19. <CardTitle>Riwayat Perpanjangan Sanksi</CardTitle>
  20. </CardHeader>
  21. <CardBody>
  22. <Datatable options={{ responsive: true }}>
  23. <table className="table table-striped my-4 w-100" data-order='[ [2, "asc"]]'>
  24. <thead>
  25. <tr>
  26. <th>Tanggal perpanjangan</th>
  27. <th>Dokumen</th>
  28. <th>Perpanjangan Ke</th>
  29. </tr>
  30. </thead>
  31. <tbody>
  32. {data?.length
  33. ? data.map((data, i) => (
  34. <tr>
  35. <td>{moment(data.masa_berlaku.from_date).format("DD MMMM YYYY")}-{moment(data.masa_berlaku.to_date).format("DD MMMM YYYY")}</td>
  36. <td>
  37. {data.dokumen?.map((e) => (
  38. <>
  39. <em className="fa-lg far fa-file-code"></em>
  40. {role === 2024 ?
  41. <a className="text-muted" onClick={handleOpenAlert}>
  42. {e.judul}
  43. </a>
  44. :
  45. <>
  46. <a className="text-muted" href={e.path} target="_blank" download={e.judul}>
  47. {e.judul}
  48. </a>
  49. </>
  50. }
  51. </>
  52. ))}
  53. </td>
  54. <td>{i+1}</td>
  55. </tr>
  56. )) : (
  57. ""
  58. )}
  59. </tbody>
  60. </table>
  61. </Datatable>
  62. </CardBody>
  63. </Card>
  64. );
  65. }
  66. export default Riwayat;