Riwayat.js 1.8 KB

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