// material-ui
import {useState, useEffect} from 'react';
import {
Button,
Typography, useMediaQuery
} from '@mui/material';
import * as DateUtils from "utils/DateUtils";
import * as StatusUtils from "utils/statusUtils/PublicNoteStatusUtils";
import { useNavigate } from "react-router-dom";
import { FiDataGrid } from "components/FiDataGrid";
import {
isORGLoggedIn,
isDummyLoggedIn,
} from "utils/Utils";
import {GET_PUBLIC_NOTICE_LIST} from "utils/ApiPathConst";
import {getModeIntl } from "utils/statusUtils/PublicNoteStatusUtils";
import { useTheme } from "@emotion/react";
import { FormattedMessage, useIntl } from "react-intl";
import * as React from 'react';
// ==============================|| EVENT TABLE ||============================== //
export default function SearchPublicNoticeTable({ searchCriteria, applyGridOnReady, applySearch }) {
const navigate = useNavigate()
const theme = useTheme();
const isMdOrLg = useMediaQuery(theme.breakpoints.up('md'));
const intl = useIntl();
const [_searchCriteria, set_searchCriteria] = useState(searchCriteria);
useEffect(() => {
set_searchCriteria(searchCriteria);
}, [searchCriteria]);
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,
renderCell: (params) => {
return [params.row.appNo+getModeIntl(params,intl)]
},
},
{
id: 'created',
field: 'created',
headerName: intl.formatMessage({ id: 'submitDate' }),
width: isMdOrLg ? 'auto' : 160,
flex: isMdOrLg ? 1 : undefined,
valueGetter: (params) => {
return DateUtils.datetimeStr(params?.value);
}
},
// {
// id: 'contactPerson',
// field: 'contactPerson',
// headerName: '聯絡人',
// flex: 2,
// renderCell: (params) => {
// let phone = JSON.parse(params.row.contactTelNo);
// let faxNo = JSON.parse(params.row.contactFaxNo);
// let contact = "";
// if (phone) {
// contact = "電話: " + phone?.countryCode + " " + phone?.phoneNumber
// }
// if (faxNo && faxNo?.faxNumber) {
// if (contact != "")
// contact = contact + ", "
// contact = contact + "傳真:" + faxNo?.countryCode + " " + faxNo?.faxNumber
// }
// return (<>
// {params?.value}
// {contact}
// >);
// }
// },
{
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() ?
isDummyLoggedIn()?