Riwayat.js 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  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 Jawaban Pencabutan Sanksi</CardTitle>
  22. </CardHeader>
  23. <CardBody>
  24. <Datatable options={{ responsive: true }}>
  25. <table className="table table-striped my-4 w-100" data-order='[ [0, "asc"]]'>
  26. <thead>
  27. <tr>
  28. <th>Tanggal</th>
  29. <th>Status</th>
  30. <th>Keterangan</th>
  31. <th>Dokumen</th>
  32. <th>Tahap</th>
  33. </tr>
  34. </thead>
  35. <tbody>
  36. {data?.length
  37. ? data.map((data, i) => (
  38. <tr>
  39. <td>{moment(data.createdAt).format("DD MMMM YYYY")}</td>
  40. <td>{data.status}</td>
  41. <td>{data.keterangan}</td>
  42. <td>
  43. {data.dokumen?.map((e) => (
  44. <>
  45. <em className="fa-lg far fa-file-code"></em>
  46. {role === 2071 ?
  47. <a className="text-muted" onClick={handleOpenAlert}>
  48. {e.judul}
  49. </a>
  50. :
  51. <>
  52. <a className="text-muted" href={e.path} target="_blank" download={e.judul}>
  53. {e.judul}
  54. </a>
  55. </>
  56. }
  57. </>
  58. ))}
  59. </td>
  60. <td>{data.index}</td>
  61. </tr>
  62. )) : (
  63. ""
  64. )}
  65. </tbody>
  66. </table>
  67. </Datatable>
  68. </CardBody>
  69. </Card>
  70. );
  71. }
  72. export default Riwayat;