@@ -91,11 +91,11 @@ const FormPanel = ({ formData }) => { | |||
})); | |||
formik.setFieldValue("noOfPages", responseData.data.total_no_of_page); | |||
formik.setFieldValue("fee", (data.groupType == "Private Bill" ? 6552 * responseData.data.total_no_of_page : responseData.data.length * colValue)); | |||
if(data.groupType == "Private Bill" && responseData.data.file.length>0){ | |||
if (data.groupType == "Private Bill" && responseData.data.file.length > 0) { | |||
let attachmentList = attachments; | |||
for(let i=0; i<responseData.data.file.length; i++){ | |||
for (let i = 0; i < responseData.data.file.length; i++) { | |||
let file = responseData.data.file[i]; | |||
attachmentList.find(item=> item.name == file.filename)["no_of_page"] = file.no_of_page; | |||
attachmentList.find(item => item.name == file.filename)["no_of_page"] = file.no_of_page; | |||
} | |||
setAttachments(attachmentList); | |||
} | |||
@@ -129,7 +129,8 @@ const FormPanel = ({ formData }) => { | |||
length: values.length, | |||
colCount: columnPrice.colCount, | |||
noOfPages: values.noOfPages, | |||
returnBeforeDate: DateUtils.convertToDate(values.beforeDate).getTime() | |||
reviseDeadline: DateUtils.convertToDate(values.reviseDeadline).getTime(), | |||
proofPaymentDeadline: DateUtils.convertToDate(values.proofPaymentDeadline).getTime() | |||
}, | |||
files: attachments, | |||
onSuccess: function (responeData) { | |||
@@ -196,15 +197,41 @@ const FormPanel = ({ formData }) => { | |||
<Grid item xs={12} md={12}> | |||
<Stack direction="row" sx={{ display: 'flex', alignItems: 'center' }}> | |||
<FormLabel sx={{ paddingRight: 2, textAlign: "center" }}> | |||
<Typography variant="h5">Return Before Date:</Typography> | |||
<Typography variant="h5">Return Revise Before:</Typography> | |||
</FormLabel> | |||
<TextField | |||
fullWidth | |||
size="small" | |||
type="datetime-local" | |||
onChange={formik.handleChange} | |||
name="beforeDate" | |||
value={formik.values["beforeDate"]} | |||
name="reviseDeadline" | |||
value={formik.values["reviseDeadline"]} | |||
variant="outlined" | |||
sx={ | |||
{ | |||
"& .MuiInputBase-input.Mui-disabled": { | |||
WebkitTextFillColor: "#000000", | |||
background: "#f8f8f8", | |||
}, | |||
width: '30%' | |||
} | |||
} | |||
/> | |||
</Stack> | |||
</Grid> | |||
<Grid item xs={12} md={12}> | |||
<Stack direction="row" sx={{ display: 'flex', alignItems: 'center' }}> | |||
<FormLabel sx={{ paddingRight: 2, textAlign: "center" }}> | |||
<Typography variant="h5">Payment Before Date:</Typography> | |||
</FormLabel> | |||
<TextField | |||
fullWidth | |||
size="small" | |||
type="datetime-local" | |||
onChange={formik.handleChange} | |||
name="proofPaymentDeadline" | |||
value={formik.values["proofPaymentDeadline"]} | |||
variant="outlined" | |||
sx={ | |||
{ | |||
@@ -245,12 +272,12 @@ const FormPanel = ({ formData }) => { | |||
<Grid item xs={12} md={12}> | |||
<UploadFileTable | |||
key="uploadTable" | |||
recordList={attachments} | |||
setRecordList={setAttachments} | |||
showPageColumn = {formik.values.groupType == "Private Bill"} | |||
/> | |||
<UploadFileTable | |||
key="uploadTable" | |||
recordList={attachments} | |||
setRecordList={setAttachments} | |||
showPageColumn={formik.values.groupType == "Private Bill"} | |||
/> | |||
</Grid> | |||
{ | |||
@@ -414,7 +441,7 @@ const FormPanel = ({ formData }) => { | |||
variant="contained" | |||
color="success" | |||
type="submit" | |||
disabled = {saving} | |||
disabled={saving} | |||
sx={{ | |||
textTransform: 'capitalize', | |||
alignItems: 'end' | |||
@@ -59,7 +59,8 @@ const Index = () => { | |||
responseData.data["groupType"] = responseData.data.groupTitle; | |||
responseData.data["beforeDate"] = DateUtils.datetimeFieldFormat(responseData.data.returnBeforeDate); | |||
responseData.data["reviseDeadline"] = DateUtils.datetimeFieldFormat(responseData.data.reviseDeadline); | |||
responseData.data["proofPaymentDeadline"] = DateUtils.datetimeFieldFormat(responseData.data.proofPaymentDeadline); | |||
setRecord(responseData.data); | |||
} | |||
}); | |||
@@ -109,7 +109,7 @@ const Index = () => { | |||
<Typography variant="h4" sx={{ ml: 8, mt: 4, mr: 8, textAlign: "left" }}> | |||
我們已收到申請編號: {record?.appNo} 的稿件校對確定及可付印的指示。 | |||
<br /><br /> | |||
請於 <span style={{ color: "red" }}>{DateUtils.dateStr_Cht(record?.returnBeforeDate)} 下午 2:00 前</span> 完成繳費,我們將於收到繳費確認後處理刊出事宜。 | |||
請於 <span style={{ color: "red" }}>{DateUtils.datetimeStr(record?.proofPaymentDeadline)} 前</span> 完成繳費,我們將於收到繳費確認後處理刊出事宜。 | |||
<br /><br /> | |||
如你在憲報期數 {record?.issueYear} 年 {record?.issueVolume} 卷, 第 {record?.issueNo} 期內有多於一個公共啟事的申請,你可選擇完成所有此期所有稿件校對確定後,於繳費期限前在「我的公共啟事」內合併付款。 | |||
</Typography> | |||
@@ -266,10 +266,17 @@ const ApplicationDetailCard = ({ | |||
<Grid container alignItems={"center"}> | |||
<Grid item xs={12} md={12} lg={12} | |||
sx={{ display: 'flex', alignItems: 'center' }}> | |||
<Typography variant="h5">Deadline for payment and reply:</Typography> | |||
<Typography variant="h5">Deadline for payment:</Typography> | |||
</Grid> | |||
<Grid item xs={12} md={12} lg={12} sx={{ mb: 4, display: 'flex', alignItems: 'center' }}> | |||
<Typography variant="h5">Before {DateUtils.datetimeStr(data.returnBeforeDate)}</Typography> | |||
<Typography variant="h5">Before {DateUtils.datetimeStr(data.proofPaymentDeadline)}</Typography> | |||
</Grid> | |||
<Grid item xs={12} md={12} lg={12} | |||
sx={{ display: 'flex', alignItems: 'center' }}> | |||
<Typography variant="h5">Deadline for revise:</Typography> | |||
</Grid> | |||
<Grid item xs={12} md={12} lg={12} sx={{ mb: 4, display: 'flex', alignItems: 'center' }}> | |||
<Typography variant="h5">Before {DateUtils.datetimeStr(data.reviseDeadline)}</Typography> | |||
</Grid> | |||
<Grid item xs={12} md={3} lg={3} | |||
sx={{ mb: 1, display: 'flex', alignItems: 'center' }}> | |||
@@ -76,10 +76,10 @@ const Index = () => { | |||
responseData.data["groupType"] = responseData.data.groupTitle; | |||
responseData.data["action"] = responseData.data.replyDate ? responseData.data.action : true; | |||
let returnBeforeDate = DateUtils.convertToDate(responseData.data.returnBeforeDate); | |||
let proofPaymentDeadline = DateUtils.convertToDate(responseData.data.proofPaymentDeadline); | |||
let current = new Date(); | |||
setIsOverTime(current.getTime() > returnBeforeDate.getTime()); | |||
setShowCancelBtn(responseData.data.cancelled || responseData.data.replyDate || current.getTime() > returnBeforeDate.getTime()) | |||
setIsOverTime(current.getTime() > proofPaymentDeadline.getTime()); | |||
setShowCancelBtn(responseData.data.cancelled || responseData.data.replyDate || current.getTime() > proofPaymentDeadline.getTime()) | |||
@@ -240,12 +240,32 @@ const ApplicationDetailCard = ({ formData, }) => { | |||
<Grid item xs={12} md={12} lg={12} sx={{ mb: 4, display: 'flex', alignItems: 'center' }}> | |||
<Typography variant="h5">  | |||
{locale === 'en' ? | |||
`${intl.formatMessage({id: 'before'})} ${DateUtils.datetimeStr(data.returnBeforeDate)} ` | |||
`${intl.formatMessage({id: 'before'})} ${DateUtils.datetimeStr(data.reviseDeadline)} ` | |||
: | |||
`${DateUtils.datetimeStr_Cht(data.returnBeforeDate)} ${intl.formatMessage({id: 'before'})}` | |||
`${DateUtils.datetimeStr_Cht(data.reviseDeadline)} ${intl.formatMessage({id: 'before'})}` | |||
} | |||
</Typography> | |||
</Grid> | |||
<Grid item xs={12} md={12} lg={12} | |||
sx={{ display: 'flex', alignItems: 'center' }}> | |||
<Typography variant="h5" display="inline"> | |||
<Typography variant="h5" style={{color:'red'}} display="inline"> | |||
<FormattedMessage id="payAnd" /> | |||
</Typography> | |||
<FormattedMessage id="paymentDeadline" />: | |||
</Typography> | |||
</Grid> | |||
<Grid item xs={12} md={12} lg={12} sx={{ mb: 4, display: 'flex', alignItems: 'center' }}> | |||
<Typography variant="h5">  | |||
{locale === 'en' ? | |||
`${intl.formatMessage({id: 'before'})} ${DateUtils.datetimeStr(data.proofPaymentDeadline)} ` | |||
: | |||
`${DateUtils.datetimeStr_Cht(data.proofPaymentDeadline)} ${intl.formatMessage({id: 'before'})}` | |||
} | |||
</Typography> | |||
</Grid> | |||
<Grid item xs={12} sm={3} md={3} lg={3} | |||
sx={{ mb: 1, display: 'flex', alignItems: 'center' }}> | |||
<Typography variant="pnspsFormParagraph"> | |||
@@ -131,10 +131,10 @@ const FormPanel = ({ formData }) => { | |||
} | |||
const isOverTime = () => { | |||
let returnBeforeDate = DateUtils.convertToDate(formik.values?.returnBeforeDate); | |||
if (!returnBeforeDate) return true; | |||
let proofPaymentDeadline = DateUtils.convertToDate(formik.values?.proofPaymentDeadline); | |||
if (!proofPaymentDeadline) return true; | |||
let current = new Date(); | |||
return current.getTime() > returnBeforeDate; | |||
return current.getTime() > proofPaymentDeadline; | |||
} | |||
@@ -105,15 +105,15 @@ export default function SearchPublicNoticeTable({ recordList }) { | |||
} | |||
}, | |||
{ | |||
id: 'returnBeforeDate', | |||
field: 'returnBeforeDate', | |||
id: 'proofPaymentDeadline', | |||
field: 'proofPaymentDeadline', | |||
headerName: intl.formatMessage({id: 'replyBefore'}), | |||
width: isMdOrLg ? 'auto' : 250, | |||
flex: isMdOrLg ? 1.5 : undefined, | |||
valueGetter: (params) => { | |||
let returnBeforeDate = DateUtils.convertToDate(params?.value); | |||
returnBeforeDate = returnBeforeDate.setHours(14, 0, 0, 0); | |||
return locale === 'en' ? DateUtils.datetimeStr(returnBeforeDate) : DateUtils.datetimeStr_Cht(returnBeforeDate); | |||
let proofPaymentDeadline = DateUtils.convertToDate(params?.value); | |||
proofPaymentDeadline = proofPaymentDeadline.setHours(14, 0, 0, 0); | |||
return locale === 'en' ? DateUtils.datetimeStr(proofPaymentDeadline) : DateUtils.datetimeStr_Cht(proofPaymentDeadline); | |||
} | |||
}, | |||
{ | |||
@@ -325,7 +325,8 @@ | |||
"applicationPublishDate": "Publish date", | |||
"pleaseCheckReminder": "Please download the following printed manuscript file and proofread it carefully", | |||
"payAnd": "Pay and ", | |||
"commentDeadline": "Deadline for submission of manuscripts", | |||
"commentDeadline": "Deadline for Revise", | |||
"paymentDeadline": "Deadline for Payment", | |||
"before": "Before", | |||
"page": "Page", | |||
"proofReplyDate": "Proof Reply Date", | |||
@@ -322,6 +322,7 @@ | |||
"pleaseCheckReminder": "请下载下列印刷稿档案,并仔细校对", | |||
"payAnd": "缴费及", | |||
"commentDeadline": "返稿最后限期", | |||
"paymentDeadline": "付款最后限期", | |||
"before": "前", | |||
"page": "页", | |||
"proofReplyDate": "校对回覆日期", | |||
@@ -327,6 +327,7 @@ | |||
"pleaseCheckReminder": "請下載下列印刷稿檔案,並仔細校對", | |||
"payAnd": "繳費及", | |||
"commentDeadline": "返稿最後限期", | |||
"paymentDeadline": "付款最後限期", | |||
"before": "前", | |||
"page": "頁", | |||
"proofReplyDate": "校對回覆日期", | |||
@@ -31,7 +31,7 @@ function getStatus(params) { | |||
// console.log(params) | |||
let replyDate = params.row?params.row.replyDate:params.replyDate; | |||
let action = params.row?params.row.action:params.action; | |||
let returnBeforeDate = params.row?params.row.returnBeforeDate:params.returnBeforeDate; | |||
let proofPaymentDeadline = params.row?params.row.proofPaymentDeadline:params.proofPaymentDeadline; | |||
let isCancelled = params.row?params.row.cancelled:params.cancelled; | |||
if(isCancelled) return cancel; | |||
@@ -40,14 +40,14 @@ function getStatus(params) { | |||
if(replyDate){ | |||
return action?confirm:unable; | |||
}else{ | |||
return isOverTime(returnBeforeDate)? timeOut: pendingReply; | |||
return isOverTime(proofPaymentDeadline)? timeOut: pendingReply; | |||
} | |||
} | |||
const isOverTime = (returnBeforeDate) => { | |||
if (!returnBeforeDate) return true; | |||
returnBeforeDate = DateUtils.convertToDate(returnBeforeDate); | |||
const isOverTime = (proofPaymentDeadline) => { | |||
if (!proofPaymentDeadline) return true; | |||
proofPaymentDeadline = DateUtils.convertToDate(proofPaymentDeadline); | |||
let current = new Date(); | |||
return current.getTime() > returnBeforeDate.getTime(); | |||
return current.getTime() > proofPaymentDeadline.getTime(); | |||
} | |||