// material-ui
import {
FormControl,
Button,
Grid,
Typography, FormLabel,
OutlinedInput,
Stack
} from '@mui/material';
const MainCard = Loadable(lazy(() => import('components/MainCard')));
import { useForm } from "react-hook-form";
import {
useEffect,
useState
} from "react";
import Loadable from 'components/Loadable';
import { lazy } from 'react';
const LoadingComponent = Loadable(lazy(() => import('../extra-pages/LoadingComponent')));
import * as HttpUtils from "utils/HttpUtils"
import * as StatusUtils from "../PublicNotice/ListPanel/PublicNoteStatusUtils";
import DoneIcon from '@mui/icons-material/Done';
import CloseIcon from '@mui/icons-material/Close';
import EditNoteIcon from '@mui/icons-material/EditNote';
import DownloadIcon from '@mui/icons-material/Download';
import ReplayIcon from '@mui/icons-material/Replay';
// ==============================|| DASHBOARD - DEFAULT ||============================== //
const ApplicationDetailCard = (
{ applicationDetailData,
setStatus,
setUploadStatus
}
) => {
const [currentApplicationDetailData, setCurrentApplicationDetailData] = useState({});
const [companyName, setCompanyName] = useState({});
const [verified, setVerified] = useState(null);
const [fileDetail, setfileDetail] = useState({});
const [onReady, setOnReady] = useState(false);
const { register } = useForm()
useEffect(() => {
//if user data from parent are not null
// console.log(applicationDetailData)
if (Object.keys(applicationDetailData).length > 0) {
loadApplicationDetail()
}
}, [applicationDetailData]);
useEffect(() => {
//if state data are ready and assign to different field
// console.log(currentApplicationDetailData)
if (Object.keys(currentApplicationDetailData).length > 0) {
setOnReady(true);
}
}, [currentApplicationDetailData]);
const loadApplicationDetail = () => {
setCurrentApplicationDetailData(applicationDetailData.data);
setCompanyName(applicationDetailData.companyName);
setVerified(applicationDetailData.userData.verifiedBy ? true : false)
setfileDetail(applicationDetailData.fileDetail);
// setReload(false)
}
const onDownloadClick = () => () => {
HttpUtils.fileDownload({
fileId: fileDetail.id,
skey: fileDetail.skey,
filename: fileDetail.filename,
});
setUploadStatus(true)
};
const reSubmitClick = () => () => {
setStatus("resubmit")
};
const notAcceptedClick = () => () => {
setStatus("notAccepted")
};
const complatedClick = () => () => {
setStatus("complete")
};
const withdrawnClick = () => () => {
setStatus("withdraw")
};
const onProofClick = () => {
window.open("/proof/create/" + currentApplicationDetailData.id, "_blank", "noreferrer");
window.addEventListener("focus", onFocus)
}
const onFocus = () => {
location.reload();
window.removeEventListener("focus", onFocus)
}
return (
!onReady ?
:
{verified && currentApplicationDetailData.status != "notAccepted" ?
{currentApplicationDetailData.status == "reviewed" ?
:
null
}
{currentApplicationDetailData.status == "submitted"||currentApplicationDetailData.status == "reviewed" ?
<>
> :
currentApplicationDetailData.status == "paid" ?
<>
> : null
}
: null
}
Application Details
);
};
export default ApplicationDetailCard;