import { useEffect, useState } from "react"; // material-ui import { Button, // Link, Stack, Typography, Dialog, DialogActions, DialogContent, DialogContentText, DialogTitle, FormLabel, Autocomplete, TextField } from '@mui/material'; import { Grid } from "../../../../node_modules/@mui/material/index"; import * as ComboData from "utils/ComboData"; import { useFormik, FormikProvider } from 'formik'; import * as yup from 'yup'; const StatusChangeDialog = (props) => { const [content, setContent] = useState(); const [dialogTitle, setDialogTitle] = useState("Confirm"); const [prositiveBtnText, setPrositiveBtnText] = useState("Confirm"); const [remarks, setRemarks] = useState(""); const [helperText, setHelperText] = useState(""); const [comboInputValue, setComboInputValue] = useState({}); const groupTitleComboList = ComboData.groupTitle; useEffect(() => { setComboInputValue({}); if (props.getStatus == "genGazetteCode") { setDialogTitle("Gen Gazette Code"); setPrositiveBtnText("Submit"); return getGazetteCodeContent() } else if (props.getStatus == "notAccepted") { setDialogTitle("Not Accept Reason"); setPrositiveBtnText("Mark Not Accept"); return getNotAcceptedContent(); }if (props.getStatus == "resubmit") { setDialogTitle("Re-Submit Reason"); setPrositiveBtnText("Mark Re-Submit"); return getNotAcceptedContent(); } else { setDialogTitle("Action Confirm"); setPrositiveBtnText("Confirm"); let str = "Are you sure you want to " + props.getStatus + " this application?" return getConfirmContent(str); } }, [props.getStatus]); const acceptedHandle = () => () => { const getStatus = props.getStatus.status; if (getStatus == "notAccepted") { if (!remarks || remarks == "") setHelperText("Please enter reason"); } if (!helperText) { props.setReason({ "reason": remarks }); if (remarks != null && remarks != "") { console.log(remarks) // props.setStatusWindowAccepted(true); } } if (getStatus != "notAccepted") { props.setStatusWindowAccepted(true); } }; const formik = useFormik({ initialValues: ({ username: '', }), validationSchema: yup.object().shape({ }), }); const getConfirmContent = (text) => { setContent( {text} ); } const getNotAcceptedContent = () => { setContent( { setRemarks(newValues.target.value); setHelperText(""); }} variant="outlined" InputProps={ { style: { minHeight: '42.5px', maxHeight: '50vh', height: 'auto' }, } } /> ); } const getGazetteCodeContent = () => { setContent( Target Issue: {props.gazetteIssue + ", "}{props.issueNum + ", "}{props.issueDate} Gazette Group: options} inputValue={comboInputValue.label} onChange={(event, newValue) => { if (newValue != null && newValue != {}) { console.log(comboInputValue) props.setSelectedGazetteGroupInputType(newValue.label); setComboInputValue(newValue); props.setSelectedGazetteGroup(newValue); formik.setFieldValue("", "") } else { gazetteGroup props.setSelectedGazetteGroupInputType(""); } }} // sx={{"& .MuiInputBase-root": { height: "41px" },"#idDocType":{padding: "0px 0px 0px 0px"}, "& .MuiAutocomplete-endAdornment": { top: "auto" },}} renderInput={(params) => } /> ); } return ( {dialogTitle}
{content}
); }; export default StatusChangeDialog;