Você não pode selecionar mais de 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.
 
 

84 linhas
2.6 KiB

  1. // material-ui
  2. import * as React from 'react';
  3. import {
  4. Button, useMediaQuery
  5. } from '@mui/material';
  6. import { useNavigate } from "react-router-dom";
  7. import {FiDataGrid} from "components/FiDataGrid";
  8. import * as FormatUtils from "utils/FormatUtils"
  9. import * as DateUtils from "utils/DateUtils"
  10. import * as PaymentStatus from "utils/statusUtils/PaymentStatus"
  11. import {useTheme} from "@emotion/react";
  12. import {useIntl} from "react-intl";
  13. // import * as StatusUtils from "./PublicNoteStatusUtils";
  14. // ==============================|| EVENT TABLE ||============================== //
  15. export default function SubmittedTab({ rows }) {
  16. const navigate = useNavigate()
  17. const theme = useTheme();
  18. const isMdOrLg = useMediaQuery(theme.breakpoints.up('md'));
  19. const intl = useIntl();
  20. const handleEditClick = (params) => () => {
  21. navigate('/paymentPage/details/' + params.row.id);
  22. };
  23. const columns = [
  24. {
  25. field: 'actions',
  26. headerName: intl.formatMessage({id: 'payId'}),
  27. width: isMdOrLg ? 'auto' : 160,
  28. flex: isMdOrLg ? 1 : undefined,
  29. cellClassName: 'actions',
  30. renderCell: (params) => {
  31. return <Button onClick={handleEditClick(params)}><u>{params.row.transNo}</u></Button>;
  32. },
  33. },
  34. {
  35. id: 'transDateTime',
  36. field: 'transDateTime',
  37. headerName: intl.formatMessage({id: 'payDate'}),
  38. width: isMdOrLg ? 'auto' : 160,
  39. flex: isMdOrLg ? 1 : undefined,
  40. valueGetter: (params) => {
  41. return DateUtils.datetimeStr(params.value);
  42. }
  43. },
  44. {
  45. id: 'status',
  46. field: 'status',
  47. headerName: intl.formatMessage({id: 'payStatus'}),
  48. width: isMdOrLg ? 'auto' : 160,
  49. flex: isMdOrLg ? 1 : undefined,
  50. renderCell: (params) => {
  51. return PaymentStatus.getStatus_Cht(params);
  52. }
  53. },
  54. {
  55. id: 'payAmount',
  56. field: 'payAmount',
  57. headerName: intl.formatMessage({id: 'fee'}),
  58. width: 150,
  59. valueGetter: (params) => {
  60. return (params?.value) ? "$ " + FormatUtils.currencyFormat(params?.value) : "";
  61. }
  62. },
  63. ];
  64. return (
  65. <>
  66. <div style={{ height:'20%', width: '100%' }}>
  67. <FiDataGrid
  68. rows={rows}
  69. columns={columns}
  70. customPageSize={5}
  71. />
  72. </div>
  73. </>
  74. );
  75. }