| @@ -57,9 +57,9 @@ export function FiDataGrid({ rows, columns, sx, autoHeight, | |||||
| if(applySearch!=undefined){ | if(applySearch!=undefined){ | ||||
| if (Object.keys(getSearchCriteria(window.location.pathname)).length>0){ | if (Object.keys(getSearchCriteria(window.location.pathname)).length>0){ | ||||
| const localStorageSearchCriteria = getSearchCriteria(window.location.pathname) | const localStorageSearchCriteria = getSearchCriteria(window.location.pathname) | ||||
| console.log(localStorageSearchCriteria) | |||||
| // console.log(localStorageSearchCriteria) | |||||
| if(localStorageSearchCriteria.start!=undefined){ | if(localStorageSearchCriteria.start!=undefined){ | ||||
| console.log(localStorageSearchCriteria) | |||||
| // console.log(localStorageSearchCriteria) | |||||
| setPage(localStorageSearchCriteria.start/pageSize); | setPage(localStorageSearchCriteria.start/pageSize); | ||||
| } | } | ||||
| } | } | ||||
| @@ -38,7 +38,6 @@ const ApplicationDetailCard = ({ | |||||
| useEffect(() => { | useEffect(() => { | ||||
| if (formData) { | if (formData) { | ||||
| console.log(formData) | |||||
| setData(formData); | setData(formData); | ||||
| } | } | ||||
| }, [formData]); | }, [formData]); | ||||
| @@ -134,29 +133,33 @@ const ApplicationDetailCard = ({ | |||||
| alignItems="center" | alignItems="center" | ||||
| > | > | ||||
| Public Notice: Proofreading Reply | Public Notice: Proofreading Reply | ||||
| <Button | |||||
| component="span" | |||||
| variant="contained" | |||||
| size="large" | |||||
| disabled={!showProofBtn||onDownload} | |||||
| onClick={genProof} | |||||
| > | |||||
| <Typography variant="h5">Proof Slip</Typography> | |||||
| </Button> | |||||
| { | |||||
| isGranted(["MAINTAIN_PROOF"]) ? <Button | |||||
| component="span" | |||||
| variant="contained" | |||||
| size="large" | |||||
| color="error" | |||||
| disabled={showCancelBtn} | |||||
| onClick={doCancel} | |||||
| > | |||||
| <Typography variant="h5">Cancel</Typography> | |||||
| </Button> : <></> | |||||
| {data.appMode != "offline"? | |||||
| <> | |||||
| <Button | |||||
| component="span" | |||||
| variant="contained" | |||||
| size="large" | |||||
| disabled={!showProofBtn||onDownload} | |||||
| onClick={genProof} | |||||
| > | |||||
| <Typography variant="h5">Proof Slip</Typography> | |||||
| </Button> | |||||
| { | |||||
| isGranted(["MAINTAIN_PROOF"]) ? <Button | |||||
| component="span" | |||||
| variant="contained" | |||||
| size="large" | |||||
| color="error" | |||||
| disabled={showCancelBtn} | |||||
| onClick={doCancel} | |||||
| > | |||||
| <Typography variant="h5">Cancel</Typography> | |||||
| </Button> : <></> | |||||
| } | |||||
| </> | |||||
| :null | |||||
| } | } | ||||
| </Stack> | </Stack> | ||||
| </Typography> | </Typography> | ||||
| @@ -55,6 +55,7 @@ const ApplicationDetailCard = ( | |||||
| const [paymentMeans, setPaymentMeans] = useState(ComboData.paymentMeans[0]); | const [paymentMeans, setPaymentMeans] = useState(ComboData.paymentMeans[0]); | ||||
| const [oldPaymentMeans, setOldPaymentMeans] = useState(""); | const [oldPaymentMeans, setOldPaymentMeans] = useState(""); | ||||
| const [isPaymentMeansPopUp, setIsPaymentMeansPopUp] = useState(false); | const [isPaymentMeansPopUp, setIsPaymentMeansPopUp] = useState(false); | ||||
| const [mode, setMode] = useState(""); | |||||
| const { register, handleSubmit } = useForm() | const { register, handleSubmit } = useForm() | ||||
| const intl = useIntl(); | const intl = useIntl(); | ||||
| @@ -88,6 +89,9 @@ const ApplicationDetailCard = ( | |||||
| setVerified(applicationDetailData.userData.verifiedBy ? true : false) | setVerified(applicationDetailData.userData.verifiedBy ? true : false) | ||||
| setfileDetail(applicationDetailData.fileDetail); | setfileDetail(applicationDetailData.fileDetail); | ||||
| setProofId(applicationDetailData.proofId); | setProofId(applicationDetailData.proofId); | ||||
| if (applicationDetailData.data.mode != null){ | |||||
| setMode(applicationDetailData.data.mode); | |||||
| } | |||||
| if (applicationDetailData.data.status == 'submitted'||applicationDetailData.data.status == 'reviewed'||applicationDetailData.data.status == 'confirmed'){ | if (applicationDetailData.data.status == 'submitted'||applicationDetailData.data.status == 'reviewed'||applicationDetailData.data.status == 'confirmed'){ | ||||
| setShowPaymentMeans(true) | setShowPaymentMeans(true) | ||||
| if (applicationDetailData.data.paymentMethod!=null){ | if (applicationDetailData.data.paymentMethod!=null){ | ||||
| @@ -236,161 +240,118 @@ const ApplicationDetailCard = ( | |||||
| > | > | ||||
| {verified && currentApplicationDetailData.status !== "notAccepted" ? | {verified && currentApplicationDetailData.status !== "notAccepted" ? | ||||
| isGrantedAny("MAINTAIN_APPLICATION") ? | isGrantedAny("MAINTAIN_APPLICATION") ? | ||||
| <Grid container spacing={4} direction="row"> | |||||
| <Grid item xs={12} md={4} > | |||||
| <Stack | |||||
| direction="row" | |||||
| justifyContent="flex-start" | |||||
| alignItems="center" | |||||
| spacing={2} | |||||
| mb={2} | |||||
| > | |||||
| {currentApplicationDetailData.status === "reviewed" && isGranted("MAINTAIN_PROOF") ? | |||||
| <Button | |||||
| // size="large" | |||||
| variant="contained" | |||||
| onClick={() => { onProofClick() }} | |||||
| sx={{ | |||||
| textTransform: 'capitalize', | |||||
| alignItems: 'end' | |||||
| }}> | |||||
| <EditNoteIcon /> | |||||
| <Typography ml={1} variant="h5"> Create Proof</Typography> | |||||
| </Button> : | |||||
| null | |||||
| } | |||||
| </Stack> | |||||
| </Grid> | |||||
| <Grid item xs={12} md={8} > | |||||
| <Stack | |||||
| direction="row" | |||||
| justifyContent="flex-start" | |||||
| alignItems="center" | |||||
| spacing={2} | |||||
| mb={2} | |||||
| > | |||||
| { | |||||
| !(orgDetail?.creditor) && currentApplicationDetailData.creditor && currentApplicationDetailData.status === "published" ? | |||||
| <> | |||||
| <div> | |||||
| {mode != "offline"? | |||||
| <Grid container spacing={4} direction="row"> | |||||
| <Grid item xs={12} md={4} > | |||||
| <Stack | |||||
| direction="row" | |||||
| justifyContent="flex-start" | |||||
| alignItems="center" | |||||
| spacing={2} | |||||
| mb={2} | |||||
| > | |||||
| {currentApplicationDetailData.status === "reviewed" && isGranted("MAINTAIN_PROOF") ? | |||||
| <Button | <Button | ||||
| // size="large" | |||||
| variant="contained" | variant="contained" | ||||
| onClick={paidClick()} | |||||
| onClick={() => { onProofClick() }} | |||||
| sx={{ | sx={{ | ||||
| textTransform: 'capitalize', | textTransform: 'capitalize', | ||||
| alignItems: 'end', | |||||
| alignItems: 'end' | |||||
| }}> | }}> | ||||
| <DoneIcon /> | |||||
| <Typography ml={1} variant="h5">Paid</Typography> | |||||
| </Button> | |||||
| </> | |||||
| : | |||||
| <></> | |||||
| } | |||||
| {currentApplicationDetailData.status === "submitted" || currentApplicationDetailData.status == "reviewed" ? | |||||
| <> | |||||
| <Button | |||||
| // size="large" | |||||
| variant="contained" | |||||
| onClick={reSubmitClick()} | |||||
| color="orange" | |||||
| > | |||||
| <ReplayIcon /> | |||||
| <Typography ml={1} variant="h5"> Re-Submit</Typography> | |||||
| </Button> | |||||
| <EditNoteIcon /> | |||||
| <Typography ml={1} variant="h5"> Create Proof</Typography> | |||||
| </Button> : | |||||
| null | |||||
| } | |||||
| </Stack> | |||||
| </Grid> | |||||
| <Grid item xs={12} md={8} > | |||||
| <Stack | |||||
| direction="row" | |||||
| justifyContent="flex-start" | |||||
| alignItems="center" | |||||
| spacing={2} | |||||
| mb={2} | |||||
| > | |||||
| { | { | ||||
| proofId == null || proofId == 0? | |||||
| <Button | |||||
| // size="large" | |||||
| variant="contained" | |||||
| onClick={notAcceptedClick()} | |||||
| color="error" | |||||
| sx={{ | |||||
| textTransform: 'capitalize', | |||||
| alignItems: 'end', | |||||
| }}> | |||||
| <CloseIcon /> | |||||
| <Typography ml={1} variant="h5">Not Accept</Typography> | |||||
| </Button> | |||||
| : | |||||
| null | |||||
| !(orgDetail?.creditor) && currentApplicationDetailData.creditor && currentApplicationDetailData.status === "published" ? | |||||
| <> | |||||
| <Button | |||||
| variant="contained" | |||||
| onClick={paidClick()} | |||||
| sx={{ | |||||
| textTransform: 'capitalize', | |||||
| alignItems: 'end', | |||||
| }}> | |||||
| <DoneIcon /> | |||||
| <Typography ml={1} variant="h5">Paid</Typography> | |||||
| </Button> | |||||
| </> | |||||
| : | |||||
| <></> | |||||
| } | } | ||||
| </> : | |||||
| (currentApplicationDetailData.status == "confirmed" && currentApplicationDetailData.creditor == 1) ? | |||||
| <> | |||||
| <Button | |||||
| // size="large" | |||||
| variant="contained" | |||||
| onClick={doPublish()} | |||||
| disabled={setCompleteDisable()} | |||||
| sx={{ | |||||
| textTransform: 'capitalize', | |||||
| alignItems: 'end', | |||||
| backgroundColor: '#52b202' | |||||
| }}> | |||||
| <DoneIcon /> | |||||
| <Typography ml={1} variant="h5">Publish</Typography> | |||||
| </Button> | |||||
| <Button | |||||
| // size="large" | |||||
| variant="contained" | |||||
| onClick={withdrawnClick()} | |||||
| sx={{ | |||||
| textTransform: 'capitalize', | |||||
| alignItems: 'end', | |||||
| backgroundColor: '#ffa733' | |||||
| }}> | |||||
| <CloseIcon /> | |||||
| <Typography ml={1} variant="h5">Withdraw</Typography> | |||||
| </Button> | |||||
| </> | |||||
| : | |||||
| (currentApplicationDetailData.status == "confirmed" && currentApplicationDetailData.creditor == 0) ? | |||||
| {currentApplicationDetailData.status === "submitted" || currentApplicationDetailData.status == "reviewed" ? | |||||
| <> | <> | ||||
| <Button | <Button | ||||
| // size="large" | // size="large" | ||||
| variant="contained" | variant="contained" | ||||
| onClick={withdrawnClick()} | |||||
| sx={{ | |||||
| textTransform: 'capitalize', | |||||
| alignItems: 'end', | |||||
| backgroundColor: '#ffa733' | |||||
| }}> | |||||
| <CloseIcon /> | |||||
| <Typography ml={1} variant="h5">Withdraw</Typography> | |||||
| onClick={reSubmitClick()} | |||||
| color="orange" | |||||
| > | |||||
| <ReplayIcon /> | |||||
| <Typography ml={1} variant="h5"> Re-Submit</Typography> | |||||
| </Button> | </Button> | ||||
| </> | |||||
| : | |||||
| ( | |||||
| (currentApplicationDetailData.status == "paid" && currentApplicationDetailData.creditor == 0) ? | |||||
| <> | |||||
| { | |||||
| proofId == null || proofId == 0? | |||||
| <Button | <Button | ||||
| // size="large" | // size="large" | ||||
| variant="contained" | variant="contained" | ||||
| onClick={revokeClick()} | |||||
| disabled={currentApplicationDetailData.paymentMethod == "online" || currentApplicationDetailData.paymentMethod == null} | |||||
| onClick={notAcceptedClick()} | |||||
| color="error" | |||||
| sx={{ | sx={{ | ||||
| textTransform: 'capitalize', | textTransform: 'capitalize', | ||||
| alignItems: 'end', | alignItems: 'end', | ||||
| backgroundColor: '#ffa733' | |||||
| }}> | }}> | ||||
| <ReplayIcon /> | |||||
| <Typography ml={1} variant="h5">Revoke Payment</Typography> | |||||
| </Button> | |||||
| <Button | |||||
| // size="large" | |||||
| variant="contained" | |||||
| onClick={complatedClick()} | |||||
| disabled={setCompleteDisable()} | |||||
| sx={{ | |||||
| textTransform: 'capitalize', | |||||
| alignItems: 'end', | |||||
| backgroundColor: '#52b202' | |||||
| }}> | |||||
| <DoneIcon /> | |||||
| <Typography ml={1} variant="h5">Publish</Typography> | |||||
| <CloseIcon /> | |||||
| <Typography ml={1} variant="h5">Not Accept</Typography> | |||||
| </Button> | </Button> | ||||
| : | |||||
| null | |||||
| } | |||||
| </> : | |||||
| (currentApplicationDetailData.status == "confirmed" && currentApplicationDetailData.creditor == 1) ? | |||||
| <> | |||||
| <Button | |||||
| // size="large" | |||||
| variant="contained" | |||||
| onClick={doPublish()} | |||||
| disabled={setCompleteDisable()} | |||||
| sx={{ | |||||
| textTransform: 'capitalize', | |||||
| alignItems: 'end', | |||||
| backgroundColor: '#52b202' | |||||
| }}> | |||||
| <DoneIcon /> | |||||
| <Typography ml={1} variant="h5">Publish</Typography> | |||||
| </Button> | |||||
| <Button | |||||
| // size="large" | |||||
| variant="contained" | |||||
| onClick={withdrawnClick()} | |||||
| sx={{ | |||||
| textTransform: 'capitalize', | |||||
| alignItems: 'end', | |||||
| backgroundColor: '#ffa733' | |||||
| }}> | |||||
| <CloseIcon /> | |||||
| <Typography ml={1} variant="h5">Withdraw</Typography> | |||||
| </Button> | |||||
| </> | |||||
| : | |||||
| (currentApplicationDetailData.status == "confirmed" && currentApplicationDetailData.creditor == 0) ? | |||||
| <> | |||||
| <Button | <Button | ||||
| // size="large" | // size="large" | ||||
| variant="contained" | variant="contained" | ||||
| @@ -403,13 +364,61 @@ const ApplicationDetailCard = ( | |||||
| <CloseIcon /> | <CloseIcon /> | ||||
| <Typography ml={1} variant="h5">Withdraw</Typography> | <Typography ml={1} variant="h5">Withdraw</Typography> | ||||
| </Button> | </Button> | ||||
| </> : null | |||||
| ) | |||||
| } | |||||
| </Stack> | |||||
| </Grid> | |||||
| </Grid> | |||||
| </> | |||||
| : | |||||
| ( | |||||
| (currentApplicationDetailData.status == "paid" && currentApplicationDetailData.creditor == 0) ? | |||||
| <> | |||||
| <Button | |||||
| // size="large" | |||||
| variant="contained" | |||||
| onClick={revokeClick()} | |||||
| disabled={currentApplicationDetailData.paymentMethod == "online" || currentApplicationDetailData.paymentMethod == null} | |||||
| sx={{ | |||||
| textTransform: 'capitalize', | |||||
| alignItems: 'end', | |||||
| backgroundColor: '#ffa733' | |||||
| }}> | |||||
| <ReplayIcon /> | |||||
| <Typography ml={1} variant="h5">Revoke Payment</Typography> | |||||
| </Button> | |||||
| <Button | |||||
| // size="large" | |||||
| variant="contained" | |||||
| onClick={complatedClick()} | |||||
| disabled={setCompleteDisable()} | |||||
| sx={{ | |||||
| textTransform: 'capitalize', | |||||
| alignItems: 'end', | |||||
| backgroundColor: '#52b202' | |||||
| }}> | |||||
| <DoneIcon /> | |||||
| <Typography ml={1} variant="h5">Publish</Typography> | |||||
| </Button> | |||||
| <Button | |||||
| // size="large" | |||||
| variant="contained" | |||||
| onClick={withdrawnClick()} | |||||
| sx={{ | |||||
| textTransform: 'capitalize', | |||||
| alignItems: 'end', | |||||
| backgroundColor: '#ffa733' | |||||
| }}> | |||||
| <CloseIcon /> | |||||
| <Typography ml={1} variant="h5">Withdraw</Typography> | |||||
| </Button> | |||||
| </> : null | |||||
| ) | |||||
| } | |||||
| </Stack> | |||||
| </Grid> | |||||
| </Grid> | |||||
| :null | |||||
| } | |||||
| </div> | |||||
| : null | : null | ||||
| : null | : null | ||||
| } | } | ||||
| @@ -35,6 +35,7 @@ const GazetteDetailCard = ( | |||||
| const [currentStatus, setCurrentStatus] = useState({}); | const [currentStatus, setCurrentStatus] = useState({}); | ||||
| const [sysType, setSysType] = useState(null); | const [sysType, setSysType] = useState(null); | ||||
| const [careOf, setCareOf] = useState(""); | const [careOf, setCareOf] = useState(""); | ||||
| const [mode, setMode] = useState(""); | |||||
| const [isWarningPopUp, setIsWarningPopUp] = useState(false); | const [isWarningPopUp, setIsWarningPopUp] = useState(false); | ||||
| const [warningText, setWarningText] = useState(""); | const [warningText, setWarningText] = useState(""); | ||||
| @@ -55,6 +56,9 @@ const GazetteDetailCard = ( | |||||
| setSysType(applicationDetailData.userData.sysType) | setSysType(applicationDetailData.userData.sysType) | ||||
| setCareOf(applicationDetailData.data.careOf) | setCareOf(applicationDetailData.data.careOf) | ||||
| setGroupTitle(applicationDetailData.data.groupTitle) | setGroupTitle(applicationDetailData.data.groupTitle) | ||||
| if (applicationDetailData.data.mode != null){ | |||||
| setMode(applicationDetailData.data.mode); | |||||
| } | |||||
| } | } | ||||
| }, [applicationDetailData]); | }, [applicationDetailData]); | ||||
| @@ -99,6 +103,7 @@ const GazetteDetailCard = ( | |||||
| spacing={2} | spacing={2} | ||||
| mb={2} | mb={2} | ||||
| > | > | ||||
| {mode != "offline"? | |||||
| <Button | <Button | ||||
| // size="large" | // size="large" | ||||
| variant="contained" | variant="contained" | ||||
| @@ -111,6 +116,8 @@ const GazetteDetailCard = ( | |||||
| <EditNoteIcon /> | <EditNoteIcon /> | ||||
| <Typography variant="h5" ml={1}> Gen Gazette Code</Typography> | <Typography variant="h5" ml={1}> Gen Gazette Code</Typography> | ||||
| </Button> | </Button> | ||||
| :null | |||||
| } | |||||
| </Stack> | </Stack> | ||||
| </Grid> | </Grid> | ||||
| </Grid> | </Grid> | ||||
| @@ -63,6 +63,7 @@ const PublicNoticeDetail_GLD = () => { | |||||
| const [issueNum, setIssueNum] = useState(""); | const [issueNum, setIssueNum] = useState(""); | ||||
| const [groupNo, setGroupNo] = useState(""); | const [groupNo, setGroupNo] = useState(""); | ||||
| // const [groupTitle, setGroupTitle] = useState(""); | // const [groupTitle, setGroupTitle] = useState(""); | ||||
| const [mode, setMode] = useState(""); | |||||
| //statusWindow | //statusWindow | ||||
| const [open, setOpen] = useState(false); | const [open, setOpen] = useState(false); | ||||
| @@ -88,7 +89,7 @@ const PublicNoticeDetail_GLD = () => { | |||||
| backgroundPosition: 'right' | backgroundPosition: 'right' | ||||
| } | } | ||||
| const title = groupNo != null ? (appNo + ", " + gazetteIssue + ", " + issueNum + " , " + groupNo) : (appNo + ", " + gazetteIssue + ", " + issueNum) | |||||
| const title = groupNo != null ? (appNo + ", " + gazetteIssue + ", " + issueNum + " , " + groupNo +" "+ mode) : (appNo + ", " + gazetteIssue + ", " + issueNum+" "+ mode) | |||||
| useEffect(() => { | useEffect(() => { | ||||
| loadApplicationDetail(); | loadApplicationDetail(); | ||||
| @@ -122,6 +123,9 @@ const PublicNoticeDetail_GLD = () => { | |||||
| setIssueNum(" No. " + gazetteIssueDetail.issueNo); | setIssueNum(" No. " + gazetteIssueDetail.issueNo); | ||||
| setIssueDate(DateUtils.dateFormat(gazetteIssueDetail.issueDate, "D MMM YYYY (ddd)")); | setIssueDate(DateUtils.dateFormat(gazetteIssueDetail.issueDate, "D MMM YYYY (ddd)")); | ||||
| setGroupNo(response.data.data.groupNo); | setGroupNo(response.data.data.groupNo); | ||||
| if (response.data.data.mode != null){ | |||||
| setMode("("+response.data.data.mode+")"); | |||||
| } | |||||
| setLoading(false); | setLoading(false); | ||||
| } | } | ||||
| }) | }) | ||||
| @@ -62,6 +62,7 @@ const ApplicationDetailCard = ( | |||||
| const [issueNum, setIssueNum] = useState(""); | const [issueNum, setIssueNum] = useState(""); | ||||
| const [issueDate, setIssueDate] = useState(""); | const [issueDate, setIssueDate] = useState(""); | ||||
| const [onDownload, setOnDownload] = useState(false); | const [onDownload, setOnDownload] = useState(false); | ||||
| const [mode, setMode] = useState(""); | |||||
| const { register, | const { register, | ||||
| // getValues | // getValues | ||||
| @@ -79,6 +80,9 @@ const ApplicationDetailCard = ( | |||||
| setIssueNum(applicationDetailData.gazetteIssueDetail.volume + "/" + applicationDetailData.gazetteIssueDetail.issueYear | setIssueNum(applicationDetailData.gazetteIssueDetail.volume + "/" + applicationDetailData.gazetteIssueDetail.issueYear | ||||
| + " No. " + applicationDetailData.gazetteIssueDetail.issueNo); | + " No. " + applicationDetailData.gazetteIssueDetail.issueNo); | ||||
| setIssueDate(DateUtils.dateFormat(applicationDetailData.gazetteIssueDetail.issueDate, "D MMM YYYY (ddd)")); | setIssueDate(DateUtils.dateFormat(applicationDetailData.gazetteIssueDetail.issueDate, "D MMM YYYY (ddd)")); | ||||
| if (applicationDetailData.data.mode != null){ | |||||
| setMode(applicationDetailData.data.mode); | |||||
| } | |||||
| } | } | ||||
| }, [applicationDetailData]); | }, [applicationDetailData]); | ||||
| @@ -183,62 +187,68 @@ const ApplicationDetailCard = ( | |||||
| border={false} | border={false} | ||||
| content={false} | content={false} | ||||
| > | > | ||||
| <Grid container spacing={1} direction="row"> | |||||
| <Grid item xs={12}> | |||||
| <Stack | |||||
| direction="row" | |||||
| justifyContent="space-between" | |||||
| alignItems="center" | |||||
| spacing={2} | |||||
| mb={2} | |||||
| > | |||||
| <ThemeProvider theme={PNSPS_BUTTON_THEME}> | |||||
| { | |||||
| currentApplicationDetailData.status == "confirmed" ? | |||||
| {mode != "offline"? | |||||
| <div> | |||||
| <Grid container spacing={1} direction="row"> | |||||
| <Grid item xs={12}> | |||||
| <Stack | |||||
| direction="row" | |||||
| justifyContent="space-between" | |||||
| alignItems="center" | |||||
| spacing={2} | |||||
| mb={2} | |||||
| > | |||||
| <ThemeProvider theme={PNSPS_BUTTON_THEME}> | |||||
| { | |||||
| currentApplicationDetailData.status == "confirmed" ? | |||||
| <Button | |||||
| variant="contained" | |||||
| color="create" | |||||
| onClick={() => { checkExprityDate(true) }} | |||||
| disabled={currentApplicationDetailData.status == "rejected" | |||||
| || currentApplicationDetailData.status == "cancelled" | |||||
| || currentApplicationDetailData.status == "paid" | |||||
| || currentApplicationDetailData.creditor | |||||
| || currentApplicationDetailData.paymentMethod != "online" | |||||
| } | |||||
| startIcon={<EditNoteIcon />} | |||||
| aria-label={intl.formatMessage({ id: 'payFor' })} | |||||
| > | |||||
| <FormattedMessage id="payFor" /> | |||||
| </Button> | |||||
| : null | |||||
| } | |||||
| <Button | <Button | ||||
| variant="contained" | variant="contained" | ||||
| color="create" | |||||
| onClick={() => { checkExprityDate(true) }} | |||||
| onClick={cancelledClick()} | |||||
| color="edit" | |||||
| disabled={currentApplicationDetailData.status == "rejected" | disabled={currentApplicationDetailData.status == "rejected" | ||||
| || currentApplicationDetailData.status == "cancelled" | || currentApplicationDetailData.status == "cancelled" | ||||
| || currentApplicationDetailData.status == "paid" | |||||
| || currentApplicationDetailData.creditor | |||||
| || currentApplicationDetailData.paymentMethod != "online" | |||||
| || currentApplicationDetailData.status == "withdrawn" | |||||
| || currentApplicationDetailData.status == "completed" | |||||
| || currentApplicationDetailData.status == "notAccepted" | |||||
| || currentApplicationDetailData.status == "resubmit" | |||||
| || (!currentApplicationDetailData.creditor | |||||
| && currentApplicationDetailData.status == "paid") | |||||
| || (currentApplicationDetailData.creditor | |||||
| && currentApplicationDetailData.status == "confirmed") | |||||
| || (currentApplicationDetailData.creditor | |||||
| && currentApplicationDetailData.status == "published") | |||||
| } | } | ||||
| startIcon={<EditNoteIcon />} | |||||
| aria-label={intl.formatMessage({ id: 'payFor' })} | |||||
| title={intl.formatMessage({ id: 'cancelApp' })} | |||||
| startIcon={<CloseIcon />} | |||||
| aria-label={intl.formatMessage({ id: 'cancelApp' })} | |||||
| > | > | ||||
| <FormattedMessage id="payFor" /> | |||||
| <FormattedMessage id="cancelApp" /> | |||||
| </Button> | </Button> | ||||
| : null | |||||
| } | |||||
| <Button | |||||
| variant="contained" | |||||
| onClick={cancelledClick()} | |||||
| color="edit" | |||||
| disabled={currentApplicationDetailData.status == "rejected" | |||||
| || currentApplicationDetailData.status == "cancelled" | |||||
| || currentApplicationDetailData.status == "withdrawn" | |||||
| || currentApplicationDetailData.status == "completed" | |||||
| || currentApplicationDetailData.status == "notAccepted" | |||||
| || currentApplicationDetailData.status == "resubmit" | |||||
| || (!currentApplicationDetailData.creditor | |||||
| && currentApplicationDetailData.status == "paid") | |||||
| || (currentApplicationDetailData.creditor | |||||
| && currentApplicationDetailData.status == "confirmed") | |||||
| || (currentApplicationDetailData.creditor | |||||
| && currentApplicationDetailData.status == "published") | |||||
| } | |||||
| title={intl.formatMessage({ id: 'cancelApp' })} | |||||
| startIcon={<CloseIcon />} | |||||
| aria-label={intl.formatMessage({ id: 'cancelApp' })} | |||||
| > | |||||
| <FormattedMessage id="cancelApp" /> | |||||
| </Button> | |||||
| </ThemeProvider> | |||||
| </Stack> | |||||
| </Grid> | |||||
| </Grid> | |||||
| </ThemeProvider> | |||||
| </Stack> | |||||
| </Grid> | |||||
| </Grid> | |||||
| </div> | |||||
| :null | |||||
| } | |||||
| <Typography variant="h4" sx={{ mb: 2, borderBottom: "1px solid black" }}> | <Typography variant="h4" sx={{ mb: 2, borderBottom: "1px solid black" }}> | ||||
| <FormattedMessage id="publicNoticeDetailTitle" /> | <FormattedMessage id="publicNoticeDetailTitle" /> | ||||
| </Typography> | </Typography> | ||||
| @@ -13,8 +13,9 @@ import { | |||||
| isDummyLoggedIn, | isDummyLoggedIn, | ||||
| } from "utils/Utils"; | } from "utils/Utils"; | ||||
| import {useTheme} from "@emotion/react"; | import {useTheme} from "@emotion/react"; | ||||
| import {getStatusIntl} from "utils/statusUtils/PublicNoteStatusUtils"; | |||||
| import {getStatusIntl,getModeEng} from "utils/statusUtils/PublicNoteStatusUtils"; | |||||
| import {FormattedMessage, useIntl} from "react-intl"; | import {FormattedMessage, useIntl} from "react-intl"; | ||||
| // ==============================|| EVENT TABLE ||============================== // | // ==============================|| EVENT TABLE ||============================== // | ||||
| export default function BaseGrid({setCount, url}) { | export default function BaseGrid({setCount, url}) { | ||||
| @@ -36,6 +37,16 @@ export default function BaseGrid({setCount, url}) { | |||||
| width: isMdOrLg ? 'auto' : 160, | width: isMdOrLg ? 'auto' : 160, | ||||
| flex: isMdOrLg ? 1 : undefined, | flex: isMdOrLg ? 1 : undefined, | ||||
| }, | }, | ||||
| { | |||||
| id: 'mode', | |||||
| field: 'mode', | |||||
| headerName: intl.formatMessage({ id: 'applicationMode' }), | |||||
| width: isMdOrLg ? 'auto' : 100, | |||||
| flex: isMdOrLg ? 1 : undefined, | |||||
| renderCell: (params) => { | |||||
| return [getModeEng(params)] | |||||
| }, | |||||
| }, | |||||
| { | { | ||||
| id: 'created', | id: 'created', | ||||
| field: 'created', | field: 'created', | ||||
| @@ -42,6 +42,16 @@ export default function SearchPublicNoticeTable({ searchCriteria, applyGridOnRea | |||||
| width: isMdOrLg ? 'auto' : 160, | width: isMdOrLg ? 'auto' : 160, | ||||
| flex: isMdOrLg ? 1 : undefined, | flex: isMdOrLg ? 1 : undefined, | ||||
| }, | }, | ||||
| { | |||||
| id: 'mode', | |||||
| field: 'mode', | |||||
| headerName: intl.formatMessage({ id: 'applicationMode' }), | |||||
| width: isMdOrLg ? 'auto' : 100, | |||||
| flex: isMdOrLg ? 1 : undefined, | |||||
| renderCell: (params) => { | |||||
| return [StatusUtils.getModeEng(params)] | |||||
| }, | |||||
| }, | |||||
| { | { | ||||
| id: 'created', | id: 'created', | ||||
| field: 'created', | field: 'created', | ||||
| @@ -64,6 +64,16 @@ export default function SearchPublicNoticeTable({ searchCriteria, applyGridOnRea | |||||
| return clickableLink('/application/' + params.id, params.row.appNo); | return clickableLink('/application/' + params.id, params.row.appNo); | ||||
| }, | }, | ||||
| }, | }, | ||||
| { | |||||
| id: 'mode', | |||||
| field: 'mode', | |||||
| headerName: 'Mode', | |||||
| sortable: false, | |||||
| width: 100, | |||||
| renderCell: (params) => { | |||||
| return [StatusUtils.getModeEng(params)] | |||||
| }, | |||||
| }, | |||||
| { | { | ||||
| id: 'status', | id: 'status', | ||||
| field: 'status', | field: 'status', | ||||
| @@ -89,6 +89,7 @@ const SearchPublicNoticeForm = ({ applySearch, orgComboData, searchCriteria, iss | |||||
| issueId: issueSelected?.id, | issueId: issueSelected?.id, | ||||
| groupNo: data.groupNo, | groupNo: data.groupNo, | ||||
| gazettGroup: groupSelected?.code, | gazettGroup: groupSelected?.code, | ||||
| mode: data.mode, | |||||
| start:0, | start:0, | ||||
| limit:10 | limit:10 | ||||
| }; | }; | ||||
| @@ -126,7 +127,8 @@ const SearchPublicNoticeForm = ({ applySearch, orgComboData, searchCriteria, iss | |||||
| reset({ | reset({ | ||||
| appNo:"", | appNo:"", | ||||
| contact:"", | contact:"", | ||||
| groupNo:"" | |||||
| groupNo:"", | |||||
| mode:"" | |||||
| }); | }); | ||||
| localStorage.setItem('searchCriteria',"") | localStorage.setItem('searchCriteria',"") | ||||
| } | } | ||||
| @@ -418,6 +420,18 @@ const SearchPublicNoticeForm = ({ applySearch, orgComboData, searchCriteria, iss | |||||
| }} | }} | ||||
| /> | /> | ||||
| </Grid> | </Grid> | ||||
| <Grid item xs={9} s={6} md={5} lg={3} sx={{ ml: 3, mr: 3, mb: marginBottom }}> | |||||
| <TextField | |||||
| fullWidth | |||||
| {...register("mode")} | |||||
| id='mode' | |||||
| label="Mode" | |||||
| defaultValue={searchCriteria.mode} | |||||
| InputLabelProps={{ | |||||
| shrink: true | |||||
| }} | |||||
| /> | |||||
| </Grid> | |||||
| </Grid> | </Grid> | ||||
| @@ -368,6 +368,7 @@ | |||||
| "withdrawn": "Withdrawn", | "withdrawn": "Withdrawn", | ||||
| "searchApplyRecord": "Search application records", | "searchApplyRecord": "Search application records", | ||||
| "applicationId": "Application No.", | "applicationId": "Application No.", | ||||
| "applicationMode": "Mode", | |||||
| "submitDate": "Submit Date", | "submitDate": "Submit Date", | ||||
| "submitDateFrom": "Submit Date (From)", | "submitDateFrom": "Submit Date (From)", | ||||
| "submitDateTo": "Submit Date (To)", | "submitDateTo": "Submit Date (To)", | ||||
| @@ -401,6 +401,7 @@ | |||||
| "withdrawn": "已撤销", | "withdrawn": "已撤销", | ||||
| "searchApplyRecord": "搜寻申请记录", | "searchApplyRecord": "搜寻申请记录", | ||||
| "applicationId": "申请编号", | "applicationId": "申请编号", | ||||
| "applicationMode": "方式", | |||||
| "submitDate": "提交日期", | "submitDate": "提交日期", | ||||
| "submitDateFrom": "提交日期 (从)", | "submitDateFrom": "提交日期 (从)", | ||||
| "submitDateTo": "提交日期 (到)", | "submitDateTo": "提交日期 (到)", | ||||
| @@ -402,6 +402,7 @@ | |||||
| "withdrawn": "已撤銷", | "withdrawn": "已撤銷", | ||||
| "searchApplyRecord": "搜尋申請記錄", | "searchApplyRecord": "搜尋申請記錄", | ||||
| "applicationId": "申請編號", | "applicationId": "申請編號", | ||||
| "applicationMode": "方式", | |||||
| "submitDate": "提交日期", | "submitDate": "提交日期", | ||||
| "submitDateFrom": "提交日期 (從)", | "submitDateFrom": "提交日期 (從)", | ||||
| "submitDateTo": "提交日期 (到)", | "submitDateTo": "提交日期 (到)", | ||||
| @@ -102,3 +102,17 @@ export function getStatusByTextIntl(status, creditor, intl) { | |||||
| return getStatusTag({ text: status }) | return getStatusTag({ text: status }) | ||||
| } | } | ||||
| } | } | ||||
| export function getModeEng(params) { | |||||
| return getModeByTextEng(params.row.mode); | |||||
| } | |||||
| export function getModeByTextEng(mode) { | |||||
| switch (mode) { | |||||
| case "offline": | |||||
| return "Offline" | |||||
| case "online": | |||||
| return "Online" | |||||
| default: | |||||
| return "" | |||||
| } | |||||
| } | |||||