浏览代码

add edit application for gld user

master
Alex Cheung 1年前
父节点
当前提交
2ee60d1bd5
共有 7 个文件被更改,包括 215 次插入90 次删除
  1. +82
    -27
      src/pages/PublicNoticeDetail_GLD/ApplicationDetailCard.js
  2. +12
    -12
      src/pages/PublicNoticeDetail_GLD/ClientDetailCard.js
  3. +6
    -6
      src/pages/PublicNoticeDetail_GLD/GazetteDetailCard.js
  4. +29
    -19
      src/pages/PublicNoticeDetail_GLD/StatusChangeDialog.js
  5. +80
    -21
      src/pages/PublicNoticeDetail_GLD/index.js
  6. +1
    -0
      src/utils/ApiPathConst.js
  7. +5
    -5
      src/utils/ComboData.js

+ 82
- 27
src/pages/PublicNoticeDetail_GLD/ApplicationDetailCard.js 查看文件

@@ -39,8 +39,10 @@ import DownloadIcon from '@mui/icons-material/Download';
const ApplicationDetailCard = ( const ApplicationDetailCard = (
{ applicationDetailData, { applicationDetailData,
setStatus, setStatus,
// isCollectData,
// updateUserObject,
setReload,
isEditMode,
setUpdateApplicationObject,
setiIsSave,
// isNewRecord // isNewRecord
} }
) => { ) => {
@@ -53,8 +55,24 @@ const ApplicationDetailCard = (
// const navigate = useNavigate() // const navigate = useNavigate()
// const params = useParams(); // const params = useParams();


const [editMode, setEditMode] = useState(false);
const onEditClick = () => () => {
setEditMode(true);
isEditMode(true);
};
const onSaveClick = () => () => {
//upload latest data to parent
const values = getValues();
const objectData ={
...values,
}
setUpdateApplicationObject({objectData});
setiIsSave(true)
};

const {register, const {register,
// getValues
getValues
} = useForm() } = useForm()


useEffect(() => { useEffect(() => {
@@ -84,8 +102,13 @@ const ApplicationDetailCard = (
}); });
}; };


const reloadHandle = () => () => {
setReload(true)
setEditMode(false)
};

const acceptedClick = () => () =>{ const acceptedClick = () => () =>{
setStatus("accepted")
setStatus("accept")
}; };


const rejectedClick = () => () =>{ const rejectedClick = () => () =>{
@@ -108,7 +131,7 @@ const ApplicationDetailCard = (
border={false} border={false}
content={false} content={false}
> >
{verified?
{verified && currentApplicationDetailData.status != "rejected"?
<Grid container spacing={4} direction="row"> <Grid container spacing={4} direction="row">
<Grid item xs={12} md={4} > <Grid item xs={12} md={4} >
<Stack <Stack
@@ -118,17 +141,49 @@ const ApplicationDetailCard = (
spacing={2} spacing={2}
mb={2} mb={2}
> >
<Button
// size="large"
variant="contained"
// onClick={handleNewUserClick}
sx={{
textTransform: 'capitalize',
alignItems: 'end',
}}>
<BorderColorOutlinedIcon/>
<Typography ml={1}> Edit</Typography>
</Button>
{editMode?
<>
<Button
size="large"
variant="contained"
onClick={reloadHandle()}
sx={{
textTransform: 'capitalize',
alignItems: 'end'
}}
>
Reset & Back
</Button>
<Button
size="large"
variant="contained"
onClick={onSaveClick()}
color="success"
sx={{
textTransform: 'capitalize',
alignItems: 'end'
}}
>
Save
</Button>
</>:
<>
<Grid item sx={{ml: 3, mr: 3}}>
<Button
// size="large"
variant="contained"
onClick={onEditClick()}
sx={{
textTransform: 'capitalize',
alignItems: 'end',
}}>
<BorderColorOutlinedIcon/>
<Typography ml={1}> Edit</Typography>
</Button>
</Grid>
</>
}
{currentApplicationDetailData.status =="accepted"? {currentApplicationDetailData.status =="accepted"?
<Button <Button
// size="large" // size="large"
@@ -228,7 +283,7 @@ const ApplicationDetailCard = (
</Grid> </Grid>


<Grid item xs={12} md={9} lg={9}> <Grid item xs={12} md={9} lg={9}>
<FormControl variant="outlined" fullWidth >
<FormControl variant="outlined" fullWidth disabled >
<OutlinedInput <OutlinedInput
fullWidth fullWidth
size="small" size="small"
@@ -267,7 +322,7 @@ const ApplicationDetailCard = (
</Grid> </Grid>


<Grid item xs={12} md={9} lg={9}> <Grid item xs={12} md={9} lg={9}>
<FormControl variant="outlined" fullWidth >
<FormControl variant="outlined" fullWidth disabled >
{ currentApplicationDetailData.orgId===null? { currentApplicationDetailData.orgId===null?
<OutlinedInput <OutlinedInput
fullWidth fullWidth
@@ -301,20 +356,20 @@ const ApplicationDetailCard = (


<Grid item xs={12} md={8} lg={8}> <Grid item xs={12} md={8} lg={8}>
<Stack direction="row"> <Stack direction="row">
<FormControl variant="outlined" sx={{width:'25%'}}>
<FormControl variant="outlined" sx={{width:'25%'}} disabled={!editMode} >
<OutlinedInput <OutlinedInput
size="small" size="small"
{...register("countryCode",
{...register("contactTelNo.countryCode",
{ {
value: currentApplicationDetailData.contactTelNo.countryCode, value: currentApplicationDetailData.contactTelNo.countryCode,
})} })}
id='countryCode' id='countryCode'
/> />
</FormControl> </FormControl>
<FormControl variant="outlined" sx={{width:'100%'}}>
<FormControl variant="outlined" sx={{width:'100%'}} disabled={!editMode} >
<OutlinedInput <OutlinedInput
size="small" size="small"
{...register("phoneNumber",
{...register("contactTelNo.phoneNumber",
{ {
value: currentApplicationDetailData.contactTelNo.phoneNumber, value: currentApplicationDetailData.contactTelNo.phoneNumber,
})} })}
@@ -336,7 +391,7 @@ const ApplicationDetailCard = (
</Grid> </Grid>


<Grid item xs={12} md={9} lg={9}> <Grid item xs={12} md={9} lg={9}>
<FormControl variant="outlined" fullWidth >
<FormControl variant="outlined" fullWidth disabled={!editMode}>
<OutlinedInput <OutlinedInput
fullWidth fullWidth
size="small" size="small"
@@ -359,20 +414,20 @@ const ApplicationDetailCard = (


<Grid item xs={12} md={8} lg={8}> <Grid item xs={12} md={8} lg={8}>
<Stack direction="row"> <Stack direction="row">
<FormControl variant="outlined" sx={{width:'25%'}}>
<FormControl variant="outlined" sx={{width:'25%'}} disabled={!editMode}>
<OutlinedInput <OutlinedInput
size="small" size="small"
{...register("countryCode",
{...register("contactFaxNo.countryCode",
{ {
value: currentApplicationDetailData.contactFaxNo.countryCode, value: currentApplicationDetailData.contactFaxNo.countryCode,
})} })}
id='countryCode' id='countryCode'
/> />
</FormControl> </FormControl>
<FormControl variant="outlined" sx={{width:'100%'}}>
<FormControl variant="outlined" sx={{width:'100%'}} disabled={!editMode}>
<OutlinedInput <OutlinedInput
size="small" size="small"
{...register("faxNumber",
{...register("contactFaxNo.faxNumber",
{ {
value: currentApplicationDetailData.contactFaxNo.faxNumber, value: currentApplicationDetailData.contactFaxNo.faxNumber,
})} })}


+ 12
- 12
src/pages/PublicNoticeDetail_GLD/ClientDetailCard.js 查看文件

@@ -137,7 +137,7 @@ const ClientDetailCard = (
<FormLabel>Client Type:</FormLabel> <FormLabel>Client Type:</FormLabel>
</Grid> </Grid>
<Grid item xs={12} md={12} lg={12} mb={1} sx={{width:'100%'}} > <Grid item xs={12} md={12} lg={12} mb={1} sx={{width:'100%'}} >
<FormControl variant="outlined" sx={{width:'100%'}} >
<FormControl variant="outlined" sx={{width:'100%'}} disabled>
<OutlinedInput <OutlinedInput
size="small" size="small"
{...register("type", {...register("type",
@@ -158,7 +158,7 @@ const ClientDetailCard = (
<FormLabel>Company Name (English):</FormLabel> <FormLabel>Company Name (English):</FormLabel>
</Grid> </Grid>
<Grid item xs={12} md={12} lg={12} mb={1} sx={{width:'100%'}} > <Grid item xs={12} md={12} lg={12} mb={1} sx={{width:'100%'}} >
<FormControl variant="outlined" sx={{width:'100%'}} >
<FormControl variant="outlined" sx={{width:'100%'}} disabled >
<OutlinedInput <OutlinedInput
size="small" size="small"
{...register("enCompanyName", {...register("enCompanyName",
@@ -177,7 +177,7 @@ const ClientDetailCard = (
<FormLabel>Company Name (Chinese):</FormLabel> <FormLabel>Company Name (Chinese):</FormLabel>
</Grid> </Grid>
<Grid item xs={12} md={12} lg={12} mb={1} sx={{width:'100%'}} > <Grid item xs={12} md={12} lg={12} mb={1} sx={{width:'100%'}} >
<FormControl variant="outlined" sx={{width:'100%'}} >
<FormControl variant="outlined" sx={{width:'100%'}} disabled >
<OutlinedInput <OutlinedInput
size="small" size="small"
{...register("chCompanyName", {...register("chCompanyName",
@@ -196,7 +196,7 @@ const ClientDetailCard = (
<FormLabel>English Name:</FormLabel> <FormLabel>English Name:</FormLabel>
</Grid> </Grid>
<Grid item xs={12} md={12} lg={12} mb={1} sx={{width:'100%'}} > <Grid item xs={12} md={12} lg={12} mb={1} sx={{width:'100%'}} >
<FormControl variant="outlined" sx={{width:'100%'}} >
<FormControl variant="outlined" sx={{width:'100%'}} disabled >
<OutlinedInput <OutlinedInput
size="small" size="small"
{...register("contactPerson", {...register("contactPerson",
@@ -216,7 +216,7 @@ const ClientDetailCard = (
</Grid> </Grid>
<Grid item xs={12} md={12} lg={12} mb={1} > <Grid item xs={12} md={12} lg={12} mb={1} >
<Stack direction="row"> <Stack direction="row">
<FormControl variant="outlined" sx={{width:'40%'}}>
<FormControl variant="outlined" sx={{width:'40%'}} disabled>
<OutlinedInput <OutlinedInput
size="small" size="small"
{...register("countryCode", {...register("countryCode",
@@ -226,7 +226,7 @@ const ClientDetailCard = (
id='countryCode' id='countryCode'
/> />
</FormControl> </FormControl>
<FormControl variant="outlined" sx={{width:'100%'}}>
<FormControl variant="outlined" sx={{width:'100%'}} disabled>
<OutlinedInput <OutlinedInput
size="small" size="small"
{...register("phoneNumber", {...register("phoneNumber",
@@ -246,7 +246,7 @@ const ClientDetailCard = (
<FormLabel>Email:</FormLabel> <FormLabel>Email:</FormLabel>
</Grid> </Grid>
<Grid item xs={12} md={12} lg={12} mb={1} sx={{width:'100%'}} > <Grid item xs={12} md={12} lg={12} mb={1} sx={{width:'100%'}} >
<FormControl variant="outlined" sx={{width:'100%'}} >
<FormControl variant="outlined" sx={{width:'100%'}} disabled >
<OutlinedInput <OutlinedInput
size="small" size="small"
{...register("emailBus", {...register("emailBus",
@@ -267,7 +267,7 @@ const ClientDetailCard = (
<FormLabel>English Name:</FormLabel> <FormLabel>English Name:</FormLabel>
</Grid> </Grid>
<Grid item xs={12} md={12} lg={12} mb={1} sx={{width:'100%'}} > <Grid item xs={12} md={12} lg={12} mb={1} sx={{width:'100%'}} >
<FormControl variant="outlined" sx={{width:'100%'}} >
<FormControl variant="outlined" sx={{width:'100%'}} disabled >
<OutlinedInput <OutlinedInput
size="small" size="small"
{...register("enName", {...register("enName",
@@ -286,7 +286,7 @@ const ClientDetailCard = (
<FormLabel>Chinese Name:</FormLabel> <FormLabel>Chinese Name:</FormLabel>
</Grid> </Grid>
<Grid item xs={12} md={12} lg={12} mb={1} sx={{width:'100%'}} > <Grid item xs={12} md={12} lg={12} mb={1} sx={{width:'100%'}} >
<FormControl variant="outlined" sx={{width:'100%'}} >
<FormControl variant="outlined" sx={{width:'100%'}} disabled >
<OutlinedInput <OutlinedInput
size="small" size="small"
{...register("chName", {...register("chName",
@@ -306,7 +306,7 @@ const ClientDetailCard = (
</Grid> </Grid>
<Grid item xs={12} md={12} lg={12} mb={1} sx={{width:'100%'}} > <Grid item xs={12} md={12} lg={12} mb={1} sx={{width:'100%'}} >
<Stack direction="row"> <Stack direction="row">
<FormControl variant="outlined" sx={{width:'40%'}}>
<FormControl variant="outlined" sx={{width:'40%'}} disabled>
<OutlinedInput <OutlinedInput
size="small" size="small"
{...register("countryCode", {...register("countryCode",
@@ -316,7 +316,7 @@ const ClientDetailCard = (
id='countryCode' id='countryCode'
/> />
</FormControl> </FormControl>
<FormControl variant="outlined" sx={{width:'100%'}}>
<FormControl variant="outlined" sx={{width:'100%'}} disabled>
<OutlinedInput <OutlinedInput
size="small" size="small"
{...register("phoneNumber", {...register("phoneNumber",
@@ -336,7 +336,7 @@ const ClientDetailCard = (
<FormLabel>Email:</FormLabel> <FormLabel>Email:</FormLabel>
</Grid> </Grid>
<Grid item xs={12} md={12} lg={12} mb={1} sx={{width:'100%'}} > <Grid item xs={12} md={12} lg={12} mb={1} sx={{width:'100%'}} >
<FormControl variant="outlined" sx={{width:'100%'}} >
<FormControl variant="outlined" sx={{width:'100%'}} disabled >
<OutlinedInput <OutlinedInput
size="small" size="small"
{...register("emailAddress", {...register("emailAddress",


+ 6
- 6
src/pages/PublicNoticeDetail_GLD/GazetteDetailCard.js 查看文件

@@ -95,7 +95,7 @@ const GazetteDetailCard = (
</Grid> </Grid>


<Grid item xs={12} md={9} lg={9}> <Grid item xs={12} md={9} lg={9}>
<FormControl variant="outlined" fullWidth >
<FormControl variant="outlined" fullWidth disabled >
<OutlinedInput <OutlinedInput
fullWidth fullWidth
size="small" size="small"
@@ -117,7 +117,7 @@ const GazetteDetailCard = (
</Grid> </Grid>


<Grid item xs={12} md={9} lg={9}> <Grid item xs={12} md={9} lg={9}>
<FormControl variant="outlined" fullWidth >
<FormControl variant="outlined" fullWidth disabled >
<OutlinedInput <OutlinedInput
fullWidth fullWidth
size="small" size="small"
@@ -142,7 +142,7 @@ const GazetteDetailCard = (
</Grid> </Grid>


<Grid item xs={12} md={9} lg={9}> <Grid item xs={12} md={9} lg={9}>
<FormControl variant="outlined" fullWidth >
<FormControl variant="outlined" fullWidth disabled >
<OutlinedInput <OutlinedInput
fullWidth fullWidth
size="small" size="small"
@@ -158,13 +158,13 @@ const GazetteDetailCard = (
</Grid> </Grid>
<Grid item xs={12} md={5} lg={5} sx={{mb: 1, ml:1}}> <Grid item xs={12} md={5} lg={5} sx={{mb: 1, ml:1}}>
<Grid container alignItems={"center"}> <Grid container alignItems={"center"}>
<Grid item xs={12} md={4} lg={4}
<Grid item xs={12} md={3} lg={3}
sx={{display: 'flex', alignItems: 'center'}}> sx={{display: 'flex', alignItems: 'center'}}>
<FormLabel>Group Title:</FormLabel> <FormLabel>Group Title:</FormLabel>
</Grid> </Grid>


<Grid item xs={12} md={8} lg={8}>
<FormControl variant="outlined" fullWidth >
<Grid item xs={12} md={9} lg={9}>
<FormControl variant="outlined" fullWidth disabled >
<OutlinedInput <OutlinedInput
fullWidth fullWidth
size="small" size="small"


+ 29
- 19
src/pages/PublicNoticeDetail_GLD/StatusChangeDialog.js 查看文件

@@ -1,6 +1,6 @@
import { import {
useEffect, useEffect,
// useState
useState
} from "react"; } from "react";


// material-ui // material-ui
@@ -25,19 +25,20 @@ import * as yup from 'yup';




const StatusChangeDialog = (props) => { const StatusChangeDialog = (props) => {
// const [selectedGazetteGroup, setSelectedGazetteGroup] = useState({});
const [status, setStatus] = useState("");
// const [selectedGazetteGroupInputType, setSelectedGazetteGroupInputType] = useState(""); // const [selectedGazetteGroupInputType, setSelectedGazetteGroupInputType] = useState("");
const groupTitleComboList = ComboData.groupTitle; const groupTitleComboList = ComboData.groupTitle;
useEffect(() => { useEffect(() => {
if(props.getStatus == "accepted"){
onAcceptedClick()
console.log(Object.keys(!props.selectedGazetteGroup).length)
if(props.getStatus == "accept"){
setStatus("Accept")
}else if (props.getStatus == "reject"){ }else if (props.getStatus == "reject"){
onRejectedClick()
setStatus("Reject")
}else if (props.getStatus == "complete"){ }else if (props.getStatus == "complete"){
onComplatedClick()
setStatus("Complete")
}else if (props.getStatus == "withdraw"){ }else if (props.getStatus == "withdraw"){
onWithdrawnClick()
setStatus("Withdraw")
} }
}, [props.getStatus]); }, [props.getStatus]);
@@ -47,12 +48,12 @@ const StatusChangeDialog = (props) => {
}; };


const formik = useFormik({
initialValues:({
username:'',
}),
validationSchema:yup.object().shape({
}),
const formik = useFormik({
initialValues:({
username:'',
}),
validationSchema:yup.object().shape({
}),
}); });


// const handleReset = () => { // const handleReset = () => {
@@ -72,7 +73,7 @@ const StatusChangeDialog = (props) => {
<Grid item> <Grid item>
<Stack direction="row" height='70px' justifyContent="flex-start" alignItems="center"> <Stack direction="row" height='70px' justifyContent="flex-start" alignItems="center">
<Typography variant="h4"> <Typography variant="h4">
Accept Application
{status} Application
</Typography> </Typography>
</Stack> </Stack>
</Grid> </Grid>
@@ -82,6 +83,7 @@ const StatusChangeDialog = (props) => {
<form> <form>
<DialogContent> <DialogContent>
<DialogContentText> <DialogContentText>
{props.getStatus == "accept"?
<Grid container direction="row" justifyContent="center" alignItems="center"> <Grid container direction="row" justifyContent="center" alignItems="center">
<Grid item xs={12} md={8} lg={8} sx={{mb: 1,}}> <Grid item xs={12} md={8} lg={8} sx={{mb: 1,}}>
<Grid container alignItems={"center"}> <Grid container alignItems={"center"}>
@@ -113,7 +115,7 @@ const StatusChangeDialog = (props) => {
if (newValue!=null && newValue != {}){ if (newValue!=null && newValue != {}){
props.setSelectedGazetteGroupInputType(newValue.label); props.setSelectedGazetteGroupInputType(newValue.label);
props.setSelectedGazetteGroup(newValue); props.setSelectedGazetteGroup(newValue);
formik.setFieldValue("checkDigit","")
formik.setFieldValue("gazetteGroup","")
}else{ }else{
props.setSelectedGazetteGroupInputType(""); props.setSelectedGazetteGroupInputType("");
} }
@@ -124,19 +126,27 @@ const StatusChangeDialog = (props) => {
</Grid> </Grid>
</Grid> </Grid>
</Grid> </Grid>
</Grid>
</Grid>:
<Grid container direction="row" justifyContent="center" alignItems="center">
<Grid item xs={12} md={5} lg={5} sx={{mb: 5,}}>
<FormLabel sx={{fontSize: "20px", color:"#000000",textAlign:"center"}}>
Are you really {status} the Application?
</FormLabel>
</Grid>
</Grid>
}
</DialogContentText> </DialogContentText>
</DialogContent> </DialogContent>
</form> </form>
</FormikProvider> </FormikProvider>
<Stack direction="row" justifyContent="space-around"> <Stack direction="row" justifyContent="space-around">
<DialogActions> <DialogActions>
<Button variant="contained" color="success" onClick={acceptedHandle()} autoFocus>
Accept
<Button variant="contained" color="success" onClick={acceptedHandle()} autoFocus disabled={Object.keys(props.selectedGazetteGroup).length === 0}>
{status}
</Button> </Button>
</DialogActions> </DialogActions>
<DialogActions> <DialogActions>
<Button variant="contained" onClick={props.handleClose} autoFocus>
<Button variant="contained" onClick={props.handleClose} autoFocus >
Cancel Cancel
</Button> </Button>
</DialogActions> </DialogActions>


+ 80
- 21
src/pages/PublicNoticeDetail_GLD/index.js 查看文件

@@ -25,7 +25,11 @@ const ClientDetailCard = Loadable(lazy(() => import('./ClientDetailCard')));
const TabTableDetail = Loadable(lazy(() => import('./tabTableDetail/TabTable'))); const TabTableDetail = Loadable(lazy(() => import('./tabTableDetail/TabTable')));
import { import {
GET_PUBLIC_NOTICE_APPLY_DETAIL, GET_PUBLIC_NOTICE_APPLY_DETAIL,
SET_PUBLIC_NOTICE_STATUS_ACCEPTED
UPDATE_PUBLIC_NOTICE_APPLY_DETAIL,
SET_PUBLIC_NOTICE_STATUS_ACCEPTED,
SET_PUBLIC_NOTICE_STATUS_REJRCTED,
SET_PUBLIC_NOTICE_STATUS_COMPLATED,
SET_PUBLIC_NOTICE_STATUS_WITHDRAW
} from "utils/ApiPathConst"; } from "utils/ApiPathConst";
const StatusChangeDialog = Loadable(lazy(() => import('./StatusChangeDialog'))); const StatusChangeDialog = Loadable(lazy(() => import('./StatusChangeDialog')));
import * as DateUtils from "utils/DateUtils"; import * as DateUtils from "utils/DateUtils";
@@ -38,18 +42,31 @@ const PublicNoticeDetail_GLD = () => {
// const navigate = useNavigate() // const navigate = useNavigate()
const [applicationDetailData, setApplicationDetailData] = useState({}); const [applicationDetailData, setApplicationDetailData] = useState({});
// const [refApplicationDetailData, setRefApplicationDetailData] = React.useState({}); // const [refApplicationDetailData, setRefApplicationDetailData] = React.useState({});
const [reload, setReload] = useState(false);
const [isLoading,setLoading] = useState(false);
const LoadingComponent = Loadable(lazy(() => import('../extra-pages/LoadingComponent')));
//pageTitle
const [appNo, setAapNo] = useState(""); const [appNo, setAapNo] = useState("");
const [gazetteIssue, setGazetteIssue] = useState(""); const [gazetteIssue, setGazetteIssue] = useState("");
const [issueDate,setIssueDate] = useState(""); const [issueDate,setIssueDate] = useState("");
const [issueNum,setIssueNum] = useState(""); const [issueNum,setIssueNum] = useState("");
const [groupNo, setGroupNo] = useState(""); const [groupNo, setGroupNo] = useState("");
const [groupTitle, setGroupTitle] = useState("");
// const [groupTitle, setGroupTitle] = useState("");
//statusWindow
const [open, setOpen] = useState(false); const [open, setOpen] = useState(false);
const [getStatus, setStatus] = useState(""); const [getStatus, setStatus] = useState("");
const [statusWindowAccepted, setStatusWindowAccepted] = useState(false); const [statusWindowAccepted, setStatusWindowAccepted] = useState(false);
const [selectedGazetteGroup, setSelectedGazetteGroup] = useState({}); const [selectedGazetteGroup, setSelectedGazetteGroup] = useState({});
const [selectedGazetteGroupInputType, setSelectedGazetteGroupInputType] = useState(""); const [selectedGazetteGroupInputType, setSelectedGazetteGroupInputType] = useState("");
//editMode
const [updateApplicationObject, setUpdateApplicationObject] = useState({});
const [editMode, isEditMode] = useState(false);
const [isSave, setiIsSave] = useState(false);


const BackgroundHead = { const BackgroundHead = {
backgroundImage: `url(${titleBackgroundImg})`, backgroundImage: `url(${titleBackgroundImg})`,
width: '100%', width: '100%',
@@ -57,14 +74,26 @@ const PublicNoticeDetail_GLD = () => {
backgroundSize:'cover' backgroundSize:'cover'
} }


const title = groupNo!=""?("Application / "+appNo+", "+gazetteIssue+", "+groupNo+" , "+groupTitle):("Application / "+appNo+", "+gazetteIssue)
const title = groupNo!=null?("Application / "+appNo+", "+gazetteIssue+", "+issueNum+" , "+groupNo):("Application / "+appNo+", "+gazetteIssue+", "+issueNum)


useEffect(() => { useEffect(() => {
loadApplicationDetail()
loadApplicationDetail()
}, []); }, []);

useEffect(() => {
if (reload){
loadApplicationDetail()
}
}, [reload]);
useEffect(() => {
if(editMode&&isSave){
onUpdateClick(updateApplicationObject)
}
}, [updateApplicationObject]);
const loadApplicationDetail = () => { const loadApplicationDetail = () => {
if(params.id > 0 ){
if(params.id > 0){
axios.get(`${GET_PUBLIC_NOTICE_APPLY_DETAIL}/${params.id}`) axios.get(`${GET_PUBLIC_NOTICE_APPLY_DETAIL}/${params.id}`)
.then((response) => { .then((response) => {
if (response.status === 200) { if (response.status === 200) {
@@ -74,10 +103,8 @@ const PublicNoticeDetail_GLD = () => {
setGazetteIssue(gazetteIssueDetail.year +" Vol "+gazetteIssueDetail.volume); setGazetteIssue(gazetteIssueDetail.year +" Vol "+gazetteIssueDetail.volume);
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)"));
if (gazetteIssueDetail.data!==null&&gazetteIssueDetail.data!==undefined){
setGroupNo("No. "+gazetteIssueDetail.data.groupNo);
setGroupTitle("No. "+gazetteIssueDetail.data.groupTitle);
}
setGroupNo(response.data.data.groupNo);
setLoading(false);
} }
}) })
.catch(error => { .catch(error => {
@@ -87,6 +114,29 @@ const PublicNoticeDetail_GLD = () => {
} }
} }


const onUpdateClick = (updateApplicationObject) => {
const data = updateApplicationObject.objectData
if(params.id > 0 ){
setLoading(true);
axios.post(`${UPDATE_PUBLIC_NOTICE_APPLY_DETAIL}/${params.id}`,
{
contactPerson:data.contactPerson,
contactFaxNo:data.contactFaxNo,
contactTelNo:data.contactTelNo,
}
)
.then((response) => {
if (response.status === 200) {
loadApplicationDetail()
}
})
.catch(error => {
console.log(error);
return false;
});
}
};

useEffect(() => { useEffect(() => {
// console.log(getStatus) // console.log(getStatus)
if(getStatus!==""){ if(getStatus!==""){
@@ -108,8 +158,7 @@ const PublicNoticeDetail_GLD = () => {


useEffect(() => { useEffect(() => {
if(statusWindowAccepted){ if(statusWindowAccepted){
console.log(selectedGazetteGroup)
if(getStatus == "accepted"){
if(getStatus == "accept"){
onAcceptedClick() onAcceptedClick()
}else if (getStatus== "reject"){ }else if (getStatus== "reject"){
onRejectedClick() onRejectedClick()
@@ -123,7 +172,12 @@ const PublicNoticeDetail_GLD = () => {


const onAcceptedClick = () => { const onAcceptedClick = () => {
if(params.id > 0 ){ if(params.id > 0 ){
axios.get(`${SET_PUBLIC_NOTICE_STATUS_ACCEPTED}/${params.id}`)
axios.post(`${SET_PUBLIC_NOTICE_STATUS_ACCEPTED}/${params.id}`,
{
"groupTitle": selectedGazetteGroup.title,
"groupNo": selectedGazetteGroup.type,
}
)
.then((response) => { .then((response) => {
if (response.status === 204) { if (response.status === 204) {
setOpen(false); setOpen(false);
@@ -138,7 +192,7 @@ const PublicNoticeDetail_GLD = () => {
} }
}; };
const onRejectedClick = () => () => {
const onRejectedClick = () => {
if(params.id > 0 ){ if(params.id > 0 ){
axios.get(`${SET_PUBLIC_NOTICE_STATUS_REJRCTED}/${params.id}`) axios.get(`${SET_PUBLIC_NOTICE_STATUS_REJRCTED}/${params.id}`)
.then((response) => { .then((response) => {
@@ -155,7 +209,7 @@ const PublicNoticeDetail_GLD = () => {
} }
}; };
const onComplatedClick = () => () => {
const onComplatedClick = () => {
if(params.id > 0 ){ if(params.id > 0 ){
axios.get(`${SET_PUBLIC_NOTICE_STATUS_COMPLATED}/${params.id}`) axios.get(`${SET_PUBLIC_NOTICE_STATUS_COMPLATED}/${params.id}`)
.then((response) => { .then((response) => {
@@ -172,7 +226,7 @@ const PublicNoticeDetail_GLD = () => {
} }
}; };
const onWithdrawnClick = () => () => {
const onWithdrawnClick = () => {
if(params.id > 0 ){ if(params.id > 0 ){
axios.get(`${SET_PUBLIC_NOTICE_STATUS_WITHDRAW}/${params.id}`) axios.get(`${SET_PUBLIC_NOTICE_STATUS_WITHDRAW}/${params.id}`)
.then((response) => { .then((response) => {
@@ -192,7 +246,7 @@ const PublicNoticeDetail_GLD = () => {
return ( return (
<Grid container sx={{maxnHeight: '500vh',backgroundColor:'#ffffff'}} direction="column"> <Grid container sx={{maxnHeight: '500vh',backgroundColor:'#ffffff'}} direction="column">
<StatusChangeDialog open={open} handleClose={handleClose} setStatusWindowAccepted={setStatusWindowAccepted} <StatusChangeDialog open={open} handleClose={handleClose} setStatusWindowAccepted={setStatusWindowAccepted}
issueDate={issueDate} issueNum={issueNum} gazetteIssue={gazetteIssue}
getStatus={getStatus} issueDate={issueDate} issueNum={issueNum} gazetteIssue={gazetteIssue}
selectedGazetteGroup={selectedGazetteGroup} setSelectedGazetteGroup={setSelectedGazetteGroup} selectedGazetteGroup={selectedGazetteGroup} setSelectedGazetteGroup={setSelectedGazetteGroup}
selectedGazetteGroupInputType={selectedGazetteGroupInputType} setSelectedGazetteGroupInputType={setSelectedGazetteGroupInputType} selectedGazetteGroupInputType={selectedGazetteGroupInputType} setSelectedGazetteGroupInputType={setSelectedGazetteGroupInputType}
/> />
@@ -214,13 +268,18 @@ const PublicNoticeDetail_GLD = () => {
<Grid container direction="column"> <Grid container direction="column">
<Grid item xs={12} md={10}> <Grid item xs={12} md={10}>
<Box xs={12} ml={4} mt={3} sx={{ p: 2, border: '3px groove grey', borderRadius: '10px'}}> <Box xs={12} ml={4} mt={3} sx={{ p: 2, border: '3px groove grey', borderRadius: '10px'}}>
<ApplicationDetailCard
// updateUserObject={updateUserObject}
{isLoading&&editMode?
<LoadingComponent/>:
<ApplicationDetailCard
applicationDetailData={applicationDetailData} applicationDetailData={applicationDetailData}
setStatus = {setStatus} setStatus = {setStatus}
// isCollectData={isCollectData}
setReload = {setReload}
setUpdateApplicationObject={setUpdateApplicationObject}
isEditMode = {isEditMode}
setiIsSave={setiIsSave}
// isNewRecord={isNewRecord} // isNewRecord={isNewRecord}
/>
/>
}
</Box> </Box>
</Grid> </Grid>
<Grid item xs={12} md={10}> <Grid item xs={12} md={10}>


+ 1
- 0
src/utils/ApiPathConst.js 查看文件

@@ -63,6 +63,7 @@ export const SET_PUBLIC_NOTICE_STATUS_REJRCTED = apiPath+'/application/applicati
export const SET_PUBLIC_NOTICE_STATUS_CANCELLED = apiPath+'/application/application-detail-status-cancelled'; export const SET_PUBLIC_NOTICE_STATUS_CANCELLED = apiPath+'/application/application-detail-status-cancelled';
export const SET_PUBLIC_NOTICE_STATUS_COMPLATED = apiPath+'/application/application-detail-status-complated'; export const SET_PUBLIC_NOTICE_STATUS_COMPLATED = apiPath+'/application/application-detail-status-complated';
export const SET_PUBLIC_NOTICE_STATUS_WITHDRAW = apiPath+'/application/application-detail-status-withdrawn'; export const SET_PUBLIC_NOTICE_STATUS_WITHDRAW = apiPath+'/application/application-detail-status-withdrawn';
export const UPDATE_PUBLIC_NOTICE_APPLY_DETAIL = apiPath+'/application/save';


//User Group //User Group
export const POST_AND_UPDATE_USER_GROUP = apiPath+'/group/save'; export const POST_AND_UPDATE_USER_GROUP = apiPath+'/group/save';

+ 5
- 5
src/utils/ComboData.js 查看文件

@@ -34,9 +34,9 @@ export const publicNoticeStaticEng = [
]; ];


export const groupTitle = [ export const groupTitle = [
{ key: 1, label: 'Private Bill', type: 'A' },
{ key: 2, label: 'Companies Ordinance', type: 'B' },
{ key: 3, label: 'High Court', type: 'C' },
{ key: 4, label: 'Notices', type: 'D' },
{ key: 5, label: 'Miscellaneous (Companies)', type: 'E' },
{ key: 1, label: 'A - Private Bill', title: 'Private Bill', type: 'A'},
{ key: 2, label: 'B - Companies Ordinance', title: 'Companies Ordinance', type: 'B' },
{ key: 3, label: 'C - High Court', title: 'High Court', type: 'C' },
{ key: 4, label: 'D - Notices', title: 'Notices', type: 'D' },
{ key: 5, label: 'E - Miscellaneous (Companies)', title: 'Miscellaneous  (Companies)', type: 'E' },
]; ];

正在加载...
取消
保存