// material-ui import * as React from 'react'; import {FiDataGrid} from "components/FiDataGrid"; import { Button, // Typography, useMediaQuery } from '@mui/material'; import * as DateUtils from "utils/DateUtils" import {useNavigate} from "react-router-dom"; import { isORGLoggedIn, } from "utils/Utils"; import {useTheme} from "@emotion/react"; import {getStatusIntl} from "utils/statusUtils/PublicNoteStatusUtils"; import {FormattedMessage, useIntl} from "react-intl"; // ==============================|| EVENT TABLE ||============================== // export default function BaseGrid({setCount, url}) { const navigate = useNavigate() const theme = useTheme(); const isMdOrLg = useMediaQuery(theme.breakpoints.up('md')); const intl = useIntl(); const handleDetailClick = (params) => () => { navigate('/publicNotice/'+ params.id); }; const columns = [ { id: 'appNo', field: 'appNo', headerName: intl.formatMessage({id: 'applicationId'}), width: isMdOrLg ? 'auto' : 160, flex: isMdOrLg ? 1 : undefined, }, { id: 'created', field: 'created', headerName: intl.formatMessage({id: 'submitDate'}), width: isMdOrLg ? 'auto' : 300, flex: isMdOrLg ? 1 : undefined, valueGetter:(params)=>{ return DateUtils.datetimeStr(params?.value); } }, { id: 'remarks', field: 'remarks', headerName: isORGLoggedIn()? intl.formatMessage({id: 'gazetteCount2_1'}) : intl.formatMessage({id: 'myRemarks'}), width: isMdOrLg ? 'auto' : 400, flex: isMdOrLg ? 3 : undefined, renderCell: (params) => ( isORGLoggedIn()?
: {params.row.issueVolume + "/" + params.row.issueYear + " No. " + params.row.issueNo}
: {params.row.careOf}
: {params.row.remarks}
:
: {params.row.issueVolume + "/" + params.row.issueYear + " No. " + params.row.issueNo}
:{params.row.remarks} {/* {params.row.remarks} */}
) }, { id: 'status', field: 'status', headerName: intl.formatMessage({id: 'status'}), width: isMdOrLg ? 'auto' : 160, flex: isMdOrLg ? 1 : undefined, renderCell: (params) => { return [getStatusIntl(params,intl)] }, }, { field: 'actions', headerName: '', width: 160, cellClassName: 'actions', renderCell: (params) => { return ; }, } ]; function handleRowDoubleClick(params) { navigate('/publicNotice/'+ params.id); } return (
'auto'} doLoad={React.useMemo(() => ({ url: url, params:{}, callback:(responseData)=>{ setCount(responseData.count??0); } }), [url])} />
); }