TableLaporan.js 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  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 TableLaporan({ listData }) {
  6. return (
  7. <div className="card b">
  8. <div className="card-body">
  9. {listData && (
  10. <Datatable options={{ responsive: false }}>
  11. <table className="table w-100" data-order='[[2, "asc"], [3, "desc"]]'>
  12. <thead>
  13. <tr>
  14. <th>No.Laporan</th>
  15. <th>Deskripsi Laporan</th>
  16. <th>Status</th>
  17. <th>Created</th>
  18. <th></th>
  19. </tr>
  20. </thead>
  21. <tbody>
  22. {listData.map((data) => {
  23. return (
  24. <tr key={data._id}>
  25. <td>{data.no_laporan}</td>
  26. <td className="text-nowrap">
  27. <div className="media align-items-center">
  28. <div className="media-body d-flex">
  29. <div>
  30. <h4 className="m-0">{data.pt.nama}</h4>
  31. <p>{data.keterangan.length > 35 ? data.keterangan.substring(0, 35) + "..." : data.keterangan}</p>
  32. </div>
  33. </div>
  34. </div>
  35. </td>
  36. <td>{data.sanksi ? <div className="badge badge-info">Sudah ditetapkan</div> : <div className="badge badge-danger">Belum ditetapkan</div>}</td>
  37. {/* <td>{moment(data.createdAt).fromNow()}</td> */}
  38. <td>{moment(data.createdAt).format("MM-DD-YYYY")}</td>
  39. <td>
  40. <div className="ml-auto">
  41. <Link
  42. href={{
  43. pathname: data.sanksi ? "/app/sanksi/detail" : "/app/sanksi/proses",
  44. query: { id: data.sanksi || data._id },
  45. }}
  46. >
  47. <Button color="primary" size="sm">
  48. {data.sanksi ? "Detail" : "Proses Sanksi"}
  49. </Button>
  50. </Link>
  51. </div>
  52. </td>
  53. </tr>
  54. );
  55. })}
  56. </tbody>
  57. </table>
  58. </Datatable>
  59. )}
  60. </div>
  61. </div>
  62. );
  63. }
  64. export default TableLaporan;