| @@ -138,7 +138,7 @@ function Header(props) { | |||||
| <Link className="setting" ><Typography style={{ opacity: 0.9 }} variant={"pnspsHeaderTitle"} sx={{ ml: 1 }}>Settings</Typography><KeyboardArrowDownIcon sx={{ fontSize: '1.0rem' }} /></Link> | <Link className="setting" ><Typography style={{ opacity: 0.9 }} variant={"pnspsHeaderTitle"} sx={{ ml: 1 }}>Settings</Typography><KeyboardArrowDownIcon sx={{ fontSize: '1.0rem' }} /></Link> | ||||
| <ul className='dropdown'> | <ul className='dropdown'> | ||||
| <li> | <li> | ||||
| <Link className="userProfileGld" to='/user/profile'><Typography style={{ opacity: 0.9 }} variant={"pnspsHeaderTitle"} sx={{ ml: 2, mt: 1, mb: 1 }}>Users Profile</Typography></Link> | |||||
| <Link className="userProfileGld" to='/user/profile'><Typography style={{ opacity: 0.9 }} variant={"pnspsHeaderTitle"} sx={{ ml: 2, mt: 1, mb: 1 }}>My Profile</Typography></Link> | |||||
| </li> | </li> | ||||
| <li> | <li> | ||||
| <Link className="emailTemplate" to='/emailTemplate'><Typography style={{ opacity: 0.9 }} variant={"pnspsHeaderTitle"} sx={{ ml: 2, mt: 1, mb: 1 }}>Email Template</Typography></Link> | <Link className="emailTemplate" to='/emailTemplate'><Typography style={{ opacity: 0.9 }} variant={"pnspsHeaderTitle"} sx={{ ml: 2, mt: 1, mb: 1 }}>Email Template</Typography></Link> | ||||
| @@ -242,6 +242,7 @@ function Header(props) { | |||||
| <Typography style={{ opacity: 0.9 }} variant={"pnspsHeaderTitle"} sx={{ ml: 1 }} onClick={(event) => console.log(event)}> | <Typography style={{ opacity: 0.9 }} variant={"pnspsHeaderTitle"} sx={{ ml: 1 }} onClick={(event) => console.log(event)}> | ||||
| <FormattedMessage id="setting" /> | <FormattedMessage id="setting" /> | ||||
| </Typography> | </Typography> | ||||
| <KeyboardArrowDownIcon sx={{ fontSize: '1.0rem' }} /> | |||||
| </Link> | </Link> | ||||
| <ul className='dropdown' style={{ width: "max-content" }}> | <ul className='dropdown' style={{ width: "max-content" }}> | ||||
| <li> | <li> | ||||
| @@ -260,6 +261,7 @@ function Header(props) { | |||||
| <Typography style={{ opacity: 0.9 }} variant={"pnspsHeaderTitle"} sx={{ ml: 1 }} onClick={(event) => console.log(event)}> | <Typography style={{ opacity: 0.9 }} variant={"pnspsHeaderTitle"} sx={{ ml: 1 }} onClick={(event) => console.log(event)}> | ||||
| <FormattedMessage id="setting" /> | <FormattedMessage id="setting" /> | ||||
| </Typography> | </Typography> | ||||
| <KeyboardArrowDownIcon sx={{ fontSize: '1.0rem' }} /> | |||||
| </Link> | </Link> | ||||
| <ul className='dropdown' style={{ width: "max-content" }}> | <ul className='dropdown' style={{ width: "max-content" }}> | ||||
| <li> | <li> | ||||
| @@ -11,7 +11,6 @@ import DownloadIcon from '@mui/icons-material/Download'; | |||||
| import * as DateUtils from "utils/DateUtils"; | import * as DateUtils from "utils/DateUtils"; | ||||
| import * as FormatUtils from "utils/FormatUtils"; | import * as FormatUtils from "utils/FormatUtils"; | ||||
| import * as StatusUtils from "utils/statusUtils/DnStatus"; | import * as StatusUtils from "utils/statusUtils/DnStatus"; | ||||
| import * as PublicNoteStatusUtils from "utils/statusUtils/PublicNoteStatusUtils"; | |||||
| import { useNavigate } from "react-router-dom"; | import { useNavigate } from "react-router-dom"; | ||||
| import { FiDataGrid } from "components/FiDataGrid"; | import { FiDataGrid } from "components/FiDataGrid"; | ||||
| import { notifyDownloadSuccess } from 'utils/CommonFunction'; | import { notifyDownloadSuccess } from 'utils/CommonFunction'; | ||||
| @@ -200,7 +199,7 @@ export default function SearchDemandNote({ recordList, reloadFun, applySearch }) | |||||
| }, | }, | ||||
| { | { | ||||
| field: 'cm', | field: 'cm', | ||||
| headerName: 'Length(cm)', | |||||
| headerName: 'Length', | |||||
| width: 100, | width: 100, | ||||
| renderCell: (params) => { | renderCell: (params) => { | ||||
| return (<> | return (<> | ||||
| @@ -213,6 +212,7 @@ export default function SearchDemandNote({ recordList, reloadFun, applySearch }) | |||||
| field: 'amount', | field: 'amount', | ||||
| headerName: 'Amount($)', | headerName: 'Amount($)', | ||||
| width: 100, | width: 100, | ||||
| align: 'right', | |||||
| valueGetter: (params) => { | valueGetter: (params) => { | ||||
| return FormatUtils.currencyFormat(params?.value); | return FormatUtils.currencyFormat(params?.value); | ||||
| } | } | ||||
| @@ -228,18 +228,13 @@ export default function SearchDemandNote({ recordList, reloadFun, applySearch }) | |||||
| { | { | ||||
| id: 'issueDate', | id: 'issueDate', | ||||
| field: 'issueDate', | field: 'issueDate', | ||||
| headerName: 'DN Issue/Due Date', | |||||
| width: 175, | |||||
| valueGetter: (params) => { | |||||
| return DateUtils.dateStr(params?.value); | |||||
| } | |||||
| }, | |||||
| { | |||||
| field: 'sentDate', | |||||
| headerName: 'DN Sent Date', | |||||
| width: 175, | |||||
| valueGetter: (params) => { | |||||
| return params?.value ? DateUtils.datetimeStr(params?.value) + " - " + params.row.sentBy : ""; | |||||
| headerName: 'Due Date / Sent Date', | |||||
| width: 250, | |||||
| renderCell: (params) => { | |||||
| return (<> | |||||
| {DateUtils.dateStr(params?.value)} | |||||
| {params.row.sentDate ? "<br />" + DateUtils.datetimeStr(params.row.sentDate) + " - " + params.row.sentBy : " / To be sent"} | |||||
| </>); | |||||
| } | } | ||||
| }, | }, | ||||
| { | { | ||||
| @@ -253,14 +248,6 @@ export default function SearchDemandNote({ recordList, reloadFun, applySearch }) | |||||
| return <Button onClick={onDownloadClick(params)}><u>{params.row.filename}</u></Button>; | return <Button onClick={onDownloadClick(params)}><u>{params.row.filename}</u></Button>; | ||||
| }, | }, | ||||
| }, | }, | ||||
| { | |||||
| field: 'appStatus', | |||||
| headerName: 'App Status', | |||||
| width: 175, | |||||
| renderCell: (params) => { | |||||
| return [PublicNoteStatusUtils.getStatusByTextEng(params?.value, true)] | |||||
| }, | |||||
| }, | |||||
| { | { | ||||
| field: 'status', | field: 'status', | ||||
| headerName: 'Status', | headerName: 'Status', | ||||
| @@ -26,7 +26,7 @@ export default function SearchPublicNoticeTable({ recordList }) { | |||||
| { | { | ||||
| field: 'actions', | field: 'actions', | ||||
| headerName: 'Proof No.', | headerName: 'Proof No.', | ||||
| width: 150, | |||||
| width: 170, | |||||
| cellClassName: 'actions', | cellClassName: 'actions', | ||||
| renderCell: (params) => { | renderCell: (params) => { | ||||
| return <Button onClick={handleEditClick(params)}><u>{params.row.refNo}</u></Button>; | return <Button onClick={handleEditClick(params)}><u>{params.row.refNo}</u></Button>; | ||||
| @@ -36,7 +36,7 @@ export default function SearchPublicNoticeTable({ recordList }) { | |||||
| id: 'appId', | id: 'appId', | ||||
| field: 'appId', | field: 'appId', | ||||
| headerName: 'Application No./ Gazette Code/ Gazette Issue', | headerName: 'Application No./ Gazette Code/ Gazette Issue', | ||||
| flex: 1.5, | |||||
| width: 400, | |||||
| renderCell: (params) => { | renderCell: (params) => { | ||||
| let appNo = params.row.appNo; | let appNo = params.row.appNo; | ||||
| let code = params.row.groupNo; | let code = params.row.groupNo; | ||||
| @@ -76,9 +76,9 @@ const PublicNotice = ({ applicationDetailData, proofList, paymentList }) => { | |||||
| <TabContext value={selectedTab}> | <TabContext value={selectedTab}> | ||||
| <Box sx={{ borderBottom: 1, borderColor: 'divider', overflowX: 'auto' }}> | <Box sx={{ borderBottom: 1, borderColor: 'divider', overflowX: 'auto' }}> | ||||
| <TabList onChange={handleChange} aria-label="lab API tabs example"> | <TabList onChange={handleChange} aria-label="lab API tabs example"> | ||||
| <Tab label={"Proof(" + _proofList?.length + ") "} value="1" /> | |||||
| <Tab label={"Payment(" + _paymentList.length + ") "} value="2" /> | |||||
| <Tab label={"Status History(" + statusHistoryList.length + ") "} value="3" /> | |||||
| <Tab label={"Proof (" + _proofList?.length + ") "} value="1" /> | |||||
| <Tab label={"Payment (" + _paymentList.length + ") "} value="2" /> | |||||
| <Tab label={"Status History (" + statusHistoryList.length + ") "} value="3" /> | |||||
| </TabList> | </TabList> | ||||
| </Box> | </Box> | ||||
| <TabPanel value="1" sx={{p:0}}> | <TabPanel value="1" sx={{p:0}}> | ||||
| @@ -59,11 +59,11 @@ const PublicNotice = ({ proofList, paymentList }) => { | |||||
| <Tab | <Tab | ||||
| aria-label={intl.formatMessage({id: 'proofRecord'})} | aria-label={intl.formatMessage({id: 'proofRecord'})} | ||||
| label={ | label={ | ||||
| intl.formatMessage({id: 'proofRecord'}) + "(" + _proofList.length + ") "} value="1" | |||||
| intl.formatMessage({id: 'proofRecord'}) + " (" + _proofList.length + ") "} value="1" | |||||
| /> | /> | ||||
| <Tab | <Tab | ||||
| aria-label={intl.formatMessage({id: 'paymentHistory'})} | aria-label={intl.formatMessage({id: 'paymentHistory'})} | ||||
| label={ intl.formatMessage({id: 'paymentHistory'}) +"(" + _paymentList.length + ") "} value="2" | |||||
| label={ intl.formatMessage({id: 'paymentHistory'}) +" (" + _paymentList.length + ") "} value="2" | |||||
| /> | /> | ||||
| </TabList> | </TabList> | ||||
| </Box> | </Box> | ||||
| @@ -85,7 +85,7 @@ export default function SearchPublicNoticeTable({ recordList }) { | |||||
| id: 'groupNo', | id: 'groupNo', | ||||
| field: 'groupNo', | field: 'groupNo', | ||||
| headerName: 'Gazette Group', | headerName: 'Gazette Group', | ||||
| flex: 1, | |||||
| flex: 0.5, | |||||
| valueGetter: (params) => { | valueGetter: (params) => { | ||||
| return (params?.value) ? (params?.value) : ""; | return (params?.value) ? (params?.value) : ""; | ||||
| } | } | ||||
| @@ -94,7 +94,7 @@ export default function SearchPublicNoticeTable({ recordList }) { | |||||
| id: 'issueId', | id: 'issueId', | ||||
| field: 'issueId', | field: 'issueId', | ||||
| headerName: 'Issue No', | headerName: 'Issue No', | ||||
| flex: 1, | |||||
| flex: 1.5, | |||||
| valueGetter: (params) => { | valueGetter: (params) => { | ||||
| return params.row.issueYear | return params.row.issueYear | ||||
| + " Vol. " + FormatUtils.zeroPad(params.row.issueVolume, 3) | + " Vol. " + FormatUtils.zeroPad(params.row.issueVolume, 3) | ||||
| @@ -87,7 +87,7 @@ const UserMaintainPage = () => { | |||||
| <div style={BackgroundHead}> | <div style={BackgroundHead}> | ||||
| <Stack direction="row" height='70px' justifyContent="flex-start" alignItems="center"> | <Stack direction="row" height='70px' justifyContent="flex-start" alignItems="center"> | ||||
| <Typography ml={15} color='#FFF' variant="h4" sx={{display: { xs: 'none', sm: 'none', md: 'block', pt:2 }}}> | <Typography ml={15} color='#FFF' variant="h4" sx={{display: { xs: 'none', sm: 'none', md: 'block', pt:2 }}}> | ||||
| User Profile | |||||
| My Profile | |||||
| </Typography> | </Typography> | ||||
| </Stack> | </Stack> | ||||
| </div> | </div> | ||||
| @@ -80,7 +80,7 @@ const RegisterCustom = () => { | |||||
| <Box alignItems="center"> | <Box alignItems="center"> | ||||
| <Grid container> | <Grid container> | ||||
| <Grid item xs={12} md={12}> | <Grid item xs={12} md={12}> | ||||
| <Typography mt={4} variant="h2"> | |||||
| <Typography mt={4} variant="h3"> | |||||
| <FormattedMessage id="registerTitle1"/> | <FormattedMessage id="registerTitle1"/> | ||||
| <strong style={{ color: '#FF5733' }}> | <strong style={{ color: '#FF5733' }}> | ||||
| {" " + intl.formatMessage({id: 'registerTitle2'}) + " "} | {" " + intl.formatMessage({id: 'registerTitle2'}) + " "} | ||||
| @@ -53,7 +53,7 @@ | |||||
| "publicNoticePaymentProofDoneAndPaid": "Public Notice: Proofreading Completed and Payment", | "publicNoticePaymentProofDoneAndPaid": "Public Notice: Proofreading Completed and Payment", | ||||
| "publicNoticePaymentProofComment": "Public Notice: Proofreading Reply", | "publicNoticePaymentProofComment": "Public Notice: Proofreading Reply", | ||||
| "publicNoticePaymentProofInfo": "Public Notice: Proofreading Information", | "publicNoticePaymentProofInfo": "Public Notice: Proofreading Information", | ||||
| "proofRecord": "Proof Record", | |||||
| "proofRecord": "Proof Records", | |||||
| "onlinePaymentHistory": "Online Payment History", | "onlinePaymentHistory": "Online Payment History", | ||||
| "setting": "Settings", | "setting": "Settings", | ||||
| "companyOrUserRecord": "Company/Institutional User Records", | "companyOrUserRecord": "Company/Institutional User Records", | ||||
| @@ -96,20 +96,20 @@ | |||||
| "user": "User", | "user": "User", | ||||
| "personalUser": "Personal user", | "personalUser": "Personal user", | ||||
| "becomeNewPersonalUser": "Become New Personal User", | "becomeNewPersonalUser": "Become New Personal User", | ||||
| "registerNewPersonalUser": "Apply for personal user", | |||||
| "businessUser": "Organization/Company User", | |||||
| "registerNewBusinessUser": "Applying Organization/Company user", | |||||
| "becomeNewBusinessUser": "Become New Organization/Company user", | |||||
| "registerNewPersonalUser": "Apply as personal user", | |||||
| "businessUser": "Organisation/Company User", | |||||
| "registerNewBusinessUser": "Apply as organisation/company user", | |||||
| "becomeNewBusinessUser": "Become New Organisation/Company user", | |||||
| "userName": "Username", | "userName": "Username", | ||||
| "userChineseName": "Chinese Name", | "userChineseName": "Chinese Name", | ||||
| "userEnglishName": "English Name", | "userEnglishName": "English Name", | ||||
| "userContactName": "Name", | "userContactName": "Name", | ||||
| "userRequireChineseName": "Please enter your Chinese name", | "userRequireChineseName": "Please enter your Chinese name", | ||||
| "userRequireEnglishName": "Please enter your English name", | "userRequireEnglishName": "Please enter your English name", | ||||
| "userRequireName": "Please enter your name", | |||||
| "userRequireName": "Name is required.", | |||||
| "userContactEmail": "Email", | "userContactEmail": "Email", | ||||
| "confirmEmail": "Confirm Email", | "confirmEmail": "Confirm Email", | ||||
| "requireEmail": "Please enter your email", | |||||
| "requireEmail": "Email address is required.", | |||||
| "validEmailFormat": "Please enter a valid email", | "validEmailFormat": "Please enter a valid email", | ||||
| "validSameEmail": "Please enter same email address", | "validSameEmail": "Please enter same email address", | ||||
| "emailUsed": "This email has been registered, please use another email", | "emailUsed": "This email has been registered, please use another email", | ||||
| @@ -117,7 +117,7 @@ | |||||
| "userContactNumber": "Contact Number", | "userContactNumber": "Contact Number", | ||||
| "contactFaxNumber": "Contact Fax", | "contactFaxNumber": "Contact Fax", | ||||
| "requiredValidNumber": "Please enter a valid contact number", | "requiredValidNumber": "Please enter a valid contact number", | ||||
| "requireContactNumber": "Please enter your contact number", | |||||
| "requireContactNumber": "Contact number is required.", | |||||
| "require3Number": "Please enter an 3-digit number", | "require3Number": "Please enter an 3-digit number", | ||||
| "require8Number": "Please enter an 8-digit number", | "require8Number": "Please enter an 8-digit number", | ||||
| "requireAtLeast8Number": "Please enter at least 8 digits", | "requireAtLeast8Number": "Please enter at least 8 digits", | ||||
| @@ -135,9 +135,9 @@ | |||||
| "personalInformation": "Personal Information", | "personalInformation": "Personal Information", | ||||
| "yourPersonalInformation": "Your Personal Information", | "yourPersonalInformation": "Your Personal Information", | ||||
| "yourLoginInformation": "Your Login Information", | "yourLoginInformation": "Your Login Information", | ||||
| "yourBusinessInformation": "Your Organization/Company Information", | |||||
| "businessEngName": "English name of Organization/Company", | |||||
| "businessChName": "Chinese name of Organization/Company", | |||||
| "yourBusinessInformation": "Your Organisation/Company Information", | |||||
| "businessEngName": "English name of Organisation/Company", | |||||
| "businessChName": "Chinese name of Organisation/Company", | |||||
| "preview": "Preview", | "preview": "Preview", | ||||
| "finishSubmission": "Finish Submission", | "finishSubmission": "Finish Submission", | ||||
| "reset": "Reset", | "reset": "Reset", | ||||
| @@ -370,7 +370,7 @@ | |||||
| "msgDetails": "Message Details", | "msgDetails": "Message Details", | ||||
| "userDetail": "User Details", | "userDetail": "User Details", | ||||
| "userProfile": "User Profile", | |||||
| "userProfile": "My Profile", | |||||
| "primaryUser": "Primary User", | "primaryUser": "Primary User", | ||||
| "resetAndBack": "Reset & Back", | "resetAndBack": "Reset & Back", | ||||
| "edit": "Edit", | "edit": "Edit", | ||||
| @@ -389,8 +389,8 @@ | |||||
| "loading": "Loading...", | "loading": "Loading...", | ||||
| "ok": "Ok", | "ok": "Ok", | ||||
| "organizationProfile": "Organization Profile", | |||||
| "organizationDetails": "Organization Details", | |||||
| "organizationProfile": "Organisation Profile", | |||||
| "organizationDetails": "Organisation Details", | |||||
| "brNo": "BR No.", | "brNo": "BR No.", | ||||
| "creditorAccount": "Creditor account", | "creditorAccount": "Creditor account", | ||||
| "nameEng": "Name (Eng)", | "nameEng": "Name (Eng)", | ||||
| @@ -366,7 +366,7 @@ | |||||
| "msgDetails": "消息详情", | "msgDetails": "消息详情", | ||||
| "userDetail": "用户详细信息", | "userDetail": "用户详细信息", | ||||
| "userProfile": "用户个人资料", | |||||
| "userProfile": "我的个人资料", | |||||
| "primaryUser": "主要用户", | "primaryUser": "主要用户", | ||||
| "resetAndBack": "重置并返回", | "resetAndBack": "重置并返回", | ||||
| "edit": "编辑", | "edit": "编辑", | ||||
| @@ -371,7 +371,7 @@ | |||||
| "msgDetails": "消息詳情", | "msgDetails": "消息詳情", | ||||
| "userDetail": "使用者詳細資料", | "userDetail": "使用者詳細資料", | ||||
| "userProfile": "使用者個人資料", | |||||
| "userProfile": "我的個人資料", | |||||
| "primaryUser": "主要使用者", | "primaryUser": "主要使用者", | ||||
| "resetAndBack": "重置並返回", | "resetAndBack": "重置並返回", | ||||
| "edit": "編輯", | "edit": "編輯", | ||||
| @@ -2,7 +2,7 @@ import dayjs from 'dayjs'; | |||||
| export const datetimeStr = (date) =>{ | export const datetimeStr = (date) =>{ | ||||
| return dateFormat(date,"DD-MM-YYYY HH:mm:ss") | |||||
| return dateFormat(date,"YYYY-MM-DD HH:mm:ss") | |||||
| }; | }; | ||||
| export const dateStr = (date) =>{ | export const dateStr = (date) =>{ | ||||