Riwayat.js 1.7 KB

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