TableSanksi.js 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. import Datatable from "@/components/Tables/Datatable";
  2. import { Button } from "reactstrap";
  3. import Link from "next/link";
  4. import moment from "moment";
  5. function TableSanksi({ listData, to, linkName }) {
  6. return (
  7. <div className="card b">
  8. <div className="card-body">
  9. <Datatable options={{ responsive: true }}>
  10. <table className="table w-100">
  11. <thead>
  12. <tr>
  13. <th>Nomor Sanksi</th>
  14. <th>Keterangan Sanksi</th>
  15. <th>Created</th>
  16. <th>Status</th>
  17. <th></th>
  18. </tr>
  19. </thead>
  20. <tbody>
  21. {listData.length
  22. ? listData.map((data) => {
  23. return (
  24. <tr key={data._id}>
  25. <td>{data.no_sanksi}</td>
  26. <td>
  27. <div className="media align-items-center">
  28. <div className="media-body d-flex">
  29. <div>
  30. <h4 className="m-0">{data.laporan.pt.nama}</h4>
  31. <p>{data.keterangan.length > 25 ? data.keterangan.substring(0, 25) + "..." : data.keterangan}</p>
  32. </div>
  33. </div>
  34. </div>
  35. </td>
  36. <td>{moment(data.createdAt).fromNow()}</td>
  37. <td>{data.jawaban?.keberatan ? <div className="badge badge-info">Sudah Dijawab</div> : <div className="badge badge-danger">Belum Dijawab</div>}</td>
  38. <td>
  39. <div className="ml-auto">
  40. <Link
  41. href={{
  42. pathname: to,
  43. query: { id: data._id },
  44. }}
  45. >
  46. <Button color="primary" size="sm">
  47. {linkName}
  48. </Button>
  49. </Link>
  50. </div>
  51. </td>
  52. </tr>
  53. );
  54. })
  55. : ""}
  56. </tbody>
  57. </table>
  58. </Datatable>
  59. </div>
  60. </div>
  61. );
  62. }
  63. export default TableSanksi;