| @@ -115,7 +115,7 @@ function Header(props) { | |||
| <Link className="dashboard" to='/dashboard'>主頁</Link> | |||
| </li> | |||
| <li> | |||
| <Link className="myDocumet" to='/dashboard'>我的公共啟示</Link> | |||
| <Link className="myDocumet" to='/dashboard'>我的公共啟事</Link> | |||
| </li> | |||
| <li> | |||
| <Link className="documentRecord" to='/dashboard'>校對記錄</Link> | |||
| @@ -20,13 +20,7 @@ | |||
| import Loadable from 'components/Loadable'; | |||
| import { lazy } from 'react'; | |||
| const CustomFormWizard = Loadable(lazy(() => import('./auth-forms/CustomFormWizard'))); | |||
| const AuthWrapper = Loadable(lazy(() => import('./AuthWrapperCustom'))); | |||
| // const CustomFormWizard = Loadable(lazy(() => import('./auth-forms/CustomFormWizard'))); | |||
| // const AuthWrapper = Loadable(lazy(() => import('./AuthWrapperCustom'))); | |||
| //import CustomFormWizard from './auth-forms/CustomFormWizard'; | |||
| //import AuthWrapper from './AuthWrapperCustom'; | |||
| const AuthWrapper = Loadable(lazy(() => import('./AuthWrapperCustom'))); | |||
| // ================================|| REGISTER ||================================ // | |||
| const stepStyle = { | |||
| width:"80%", | |||
| @@ -81,6 +81,7 @@ const BusCustomFormWizard = (props) => { | |||
| const [termsAndConAccept, setTermsAndConAccept] = useState(false); | |||
| const [termsAndConNotAccept, setTermsAndConNotAccept] = useState(false); | |||
| const [isValid, setisValid] = useState(false); | |||
| const [checkCountry, setCheckCountry] = useState(false); | |||
| const address4ComboList = | |||
| ["北區","長洲區","大埔區","大嶼山區","東區","觀塘區","黃大仙區","九龍城區","葵青區","南區","南丫島區", | |||
| @@ -301,7 +302,7 @@ const BusCustomFormWizard = (props) => { | |||
| } | |||
| function handlePhone(phone) { | |||
| if (phone.length < 8) { | |||
| if (phone.length < 11) { | |||
| return false; | |||
| } else { | |||
| return true; | |||
| @@ -384,10 +385,10 @@ const BusCustomFormWizard = (props) => { | |||
| address3: yup.string().max(255).required('請輸入第三行地址'), | |||
| email: yup.string().email('請輸入電郵格式').max(255).required('請輸入電郵'), | |||
| emailConfirm: yup.string().email('請輸入電郵格式').max(255).required('請輸入電郵').oneOf([yup.ref('email'), null], '請輸入相同電郵'), | |||
| phoneCountryCode: yup.string().min(3,'請輸入3位數字').required('請輸入國際區號'), | |||
| faxCountryCode: yup.string().min(3,'請輸入3位數字'), | |||
| phone: yup.string().min(8,'請輸入8位數字').required('請輸入聯絡電話'), | |||
| fax: yup.string().min(8,'請輸入8位數字'), | |||
| phoneCountryCode: yup.string().min(2,'請輸入最少2位數字').required('請輸入國際區號'), | |||
| faxCountryCode: yup.string().min(2,'請輸入最少2位數字'), | |||
| phone: yup.string().min(8,'請輸入最少8位數字').required('請輸入聯絡電話'), | |||
| fax: yup.string().min(8,'請輸入最少8位數字'), | |||
| brExpiryDate: yup.string().min(8,'請輸入商業登記證有效日期'), | |||
| brNo: yup.string().min(8,'請輸入商業登記證號碼'), | |||
| }) | |||
| @@ -397,6 +398,8 @@ const BusCustomFormWizard = (props) => { | |||
| const handleReset = (resetForm) => { | |||
| resetForm(); | |||
| setSelectedAddress4("") | |||
| setFileList([]) | |||
| setFileListData([]) | |||
| }; | |||
| const { values } = formik | |||
| @@ -745,6 +748,7 @@ const BusCustomFormWizard = (props) => { | |||
| id="address4-combo" | |||
| value={selectedAddress4 === null ? null : selectedAddress4} | |||
| options={address4ComboList} | |||
| disabled={checkCountry} | |||
| onChange={(event, newValue) => { | |||
| if (newValue !== null){ | |||
| setSelectedAddress4(newValue); | |||
| @@ -762,6 +766,13 @@ const BusCustomFormWizard = (props) => { | |||
| onChange={(event, newValue) => { | |||
| if (newValue !== null){ | |||
| setSelectedAddress5(newValue); | |||
| if(newValue=='香港'){ | |||
| setCheckCountry(false) | |||
| }else{ | |||
| setCheckCountry(true) | |||
| } | |||
| }else{ | |||
| setCheckCountry(true) | |||
| } | |||
| }} | |||
| @@ -939,7 +950,7 @@ const BusCustomFormWizard = (props) => { | |||
| placeholder="聯絡電話" | |||
| error={Boolean(formik.touched.phone && formik.errors.phone)} | |||
| inputProps={{ | |||
| maxLength: 8, | |||
| maxLength: 11, | |||
| onKeyDown: (e) => { | |||
| if (e.key === 'Enter') { | |||
| e.preventDefault(); | |||
| @@ -86,6 +86,7 @@ const CustomFormWizard = (props) => { | |||
| const [termsAndConAccept, setTermsAndConAccept] = useState(false); | |||
| const [termsAndConNotAccept, setTermsAndConNotAccept] = useState(false); | |||
| const [isValid, setisValid] = useState(false); | |||
| const [checkCountry, setCheckCountry] = useState(false); | |||
| const idDocTypeComboList = ComboData.idDocType; | |||
| const address4ComboList = ComboData.district; | |||
| @@ -122,8 +123,8 @@ const CustomFormWizard = (props) => { | |||
| handlePassword(data.password)&& | |||
| handleEmail(data.email)&& | |||
| handleIdNo(data.idNo,selectedIdDocType.type)&& | |||
| handle8Digi(data.phone)&& | |||
| handle6Digi(data.username) | |||
| handlePhone(data.phone)&& | |||
| handleUsername(data.username) | |||
| ) | |||
| { | |||
| setisValid(true) | |||
| @@ -309,15 +310,15 @@ const CustomFormWizard = (props) => { | |||
| } | |||
| } | |||
| function handle8Digi(value) { | |||
| if (value.length < 8) { | |||
| function handlePhone(value) { | |||
| if (value.length < 11) { | |||
| return false; | |||
| } else { | |||
| return true; | |||
| } | |||
| } | |||
| function handle6Digi(value) { | |||
| function handleUsername(value) { | |||
| if (value.length < 6) { | |||
| return false; | |||
| } else { | |||
| @@ -399,7 +400,7 @@ const CustomFormWizard = (props) => { | |||
| .matches(/^(?=.*[!@#%&])/, '請包括最少1個特殊字符'), | |||
| confirmPassword: yup.string().min(8,'請最少輸入8位密碼').required('請確認密碼').oneOf([yup.ref('password'), null], '請輸入相同密碼'), | |||
| enName: yup.string().max(255).required('請輸入英文姓名'), | |||
| chName: yup.string().max(255).required('請輸入中文姓名'), | |||
| chName: yup.string().max(6).required('請輸入中文姓名'), | |||
| address1: yup.string().max(255).required('請輸入第一行地址'), | |||
| address2: yup.string().max(255).required('請輸入第二行地址'), | |||
| address3: yup.string().max(255).required('請輸入第三行地址'), | |||
| @@ -408,9 +409,9 @@ const CustomFormWizard = (props) => { | |||
| idNo: yup.string().min(7,"請輸入證件號碼").required('請輸入證件號碼'), | |||
| checkDigit:yup.string().max(1).required('請輸入括號內的數字或字母'), | |||
| idDocType: yup.string().max(255).required('請輸入證件類別'), | |||
| phoneCountryCode: yup.string().min(3,'請輸入3位數字').required('請輸入國際區號'), | |||
| phoneCountryCode: yup.string().min(2,'請輸入最少2位數字').required('請輸入國際區號'), | |||
| // faxCountryCode: yup.string().min(3,'請輸入3位數字'), | |||
| phone: yup.string().min(8,'請輸入8位數字').required('請輸入聯絡電話'), | |||
| phone: yup.string().min(8,'請輸入最少8位數字').required('請輸入聯絡電話'), | |||
| // fax: yup.string().min(8,'請輸入8位數字'), | |||
| }), | |||
| }); | |||
| @@ -420,7 +421,8 @@ const CustomFormWizard = (props) => { | |||
| setSelectedAddress4("") | |||
| setSelectedIdDocType({}) | |||
| setSelectedIdDocInputType(""); | |||
| setFileList([]) | |||
| setFileListData([]) | |||
| // setSelectedIdDocLabel("") | |||
| }; | |||
| @@ -719,6 +721,7 @@ const CustomFormWizard = (props) => { | |||
| error={Boolean(formik.touched.idNo && formik.errors.idNo)} | |||
| onBlur={formik.handleBlur} | |||
| inputProps={{ | |||
| maxLength: 18, | |||
| onKeyDown: (e) => { | |||
| if (e.key === 'Enter') { | |||
| e.preventDefault(); | |||
| @@ -779,6 +782,7 @@ const CustomFormWizard = (props) => { | |||
| onChange={formik.handleChange} | |||
| placeholder="與你的身份證明文件相同" | |||
| inputProps={{ | |||
| maxLength: 6, | |||
| onKeyDown: (e) => { | |||
| if (e.key === 'Enter') { | |||
| e.preventDefault(); | |||
| @@ -852,6 +856,7 @@ const CustomFormWizard = (props) => { | |||
| id="address4-combo" | |||
| value={selectedAddress4} | |||
| options={address4ComboList} | |||
| disabled={checkCountry} | |||
| onChange={(event, newValue) => { | |||
| setSelectedAddress4(newValue); | |||
| }} | |||
| @@ -865,8 +870,16 @@ const CustomFormWizard = (props) => { | |||
| value={selectedAddress5} | |||
| options={address5ComboList} | |||
| onChange={(event, newValue) => { | |||
| setSelectedAddress5(newValue); | |||
| // if() | |||
| if (newValue !== null){ | |||
| setSelectedAddress5(newValue); | |||
| if(newValue=='香港'){ | |||
| setCheckCountry(false) | |||
| }else{ | |||
| setCheckCountry(true) | |||
| } | |||
| }else{ | |||
| setCheckCountry(true) | |||
| } | |||
| }} | |||
| sx={{"& .MuiInputBase-root": { height: "41px" },"#address5-combo":{padding: "0px 0px 0px 0px"}, "& .MuiAutocomplete-endAdornment": { top: "auto" },}} | |||
| @@ -1014,7 +1027,7 @@ const CustomFormWizard = (props) => { | |||
| error={Boolean(formik.touched.phone && formik.errors.phone)} | |||
| onBlur={formik.handleBlur} | |||
| inputProps={{ | |||
| maxLength: 8, | |||
| maxLength: 11, | |||
| onKeyDown: (e) => { | |||
| if (e.key === 'Enter') { | |||
| e.preventDefault(); | |||
| @@ -69,14 +69,14 @@ export default function UserTable({recordList}) { | |||
| headerName: 'Email', | |||
| flex: 1, | |||
| }, | |||
| { | |||
| id: 'subDivisionId', | |||
| field: 'subDivisionId', | |||
| //type: 'date', | |||
| //sortable: false, | |||
| headerName: 'Sub-Division', | |||
| flex: 1, | |||
| }, | |||
| // { | |||
| // id: 'subDivisionId', | |||
| // field: 'subDivisionId', | |||
| // //type: 'date', | |||
| // //sortable: false, | |||
| // headerName: 'Sub-Division', | |||
| // flex: 1, | |||
| // }, | |||
| // { | |||
| // id: 'subDivisionId', | |||
| @@ -6,7 +6,9 @@ import { | |||
| Typography, | |||
| Stack | |||
| } from '@mui/material'; | |||
| import { | |||
| isORGLoggedIn, | |||
| } from "utils/Utils"; | |||
| // ==============================|| DASHBOARD - DEFAULT ||============================== // | |||
| @@ -25,7 +27,7 @@ const DashboardDefault = () => { | |||
| <Grid item xs={12} height='60px'> | |||
| <Stack direction="row" height='100%' justifyContent="flex-start" alignItems="center"> | |||
| {/* <Typography variant="h5">我的公共啟事</Typography> */} | |||
| <Typography ml={10} color='#FFF' variant="h4">{userData.fullchName}, 午安! 請選擇所需服務。</Typography> | |||
| <Typography ml={10} color='#FFF' variant="h4">{isORGLoggedIn() ?userData.fullenName:userData.fullchName}, 午安! 請選擇所需服務。</Typography> | |||
| </Stack> | |||
| </Grid> | |||
| </div> | |||